課程特價中
Jmeter 從入門到實戰
從這 15 小時的課程,你會學到
1 你將學會如何給 web 應用程式和 REST API 進行負載測試
2 你將學會如何在給定負載下監控應用程式效能
3 你將學會如何安裝使用 Jmeter 外掛,生成有效報告
4 學會如何整合 Selenium 與 Jmeter
5 學習 Jmeter Beanshell 指令碼基礎知識
6 學習如何實現 Jenkin+Ant+Jmeters 三者整合實現介面自動化測試
7 藉助於 Jenkin+Ant+Jmeters 搭建自動化測試框架
8 學習如何用 beanshell 藉助於JSR223 Sampler 編寫測試框架
https://softnshare.com/jmeter-performance-testing/
同時也有70部Youtube影片,追蹤數超過3萬的網紅孫在陽,也在其Youtube影片中提到,Excel數據編輯與視覺化分析-以觀光統計資料為例,資料分析目的,瞭解資料轉置與樞紐的差別。轉置的使用時機,使用功能操作,不用寫複雜函數,相信人人都可以理解。 孫在陽老師主講,[email protected] 範例、講義下載:https://goo.gl/ytzRxT 00:0...
「如何寫自動化測試」的推薦目錄:
- 關於如何寫自動化測試 在 軟體開發學習資訊分享 Facebook 的精選貼文
- 關於如何寫自動化測試 在 軟體開發學習資訊分享 Facebook 的最佳解答
- 關於如何寫自動化測試 在 Facebook 的最佳解答
- 關於如何寫自動化測試 在 孫在陽 Youtube 的精選貼文
- 關於如何寫自動化測試 在 吳老師EXCEL VBA設計(大數據自動化)教學 Youtube 的最佳解答
- 關於如何寫自動化測試 在 吳老師EXCEL VBA設計(大數據自動化)教學 Youtube 的精選貼文
- 關於如何寫自動化測試 在 Re: [請益] 軟體測試出路? - 看板Soft_Job 的評價
- 關於如何寫自動化測試 在 Chapter 10 自動化測試策略與方法 的評價
- 關於如何寫自動化測試 在 如果要幫公司維護自動化測試框架,有什麼文章、課程可以看呢 的評價
如何寫自動化測試 在 軟體開發學習資訊分享 Facebook 的最佳解答
NT 390 特價中
建立 12 個以上的專案,學習 Web 開發、機器學習 + 更多
本課程的主題包括:
程式設計基礎
Python 基礎
Python 基本原理
資料結構
用 Python 做物件導向程式設計
Python 函數語言程式設計
Lambdas
Decorators
Generators
以 Python 進行測試
除錯
錯誤處理
正規表示式( Regular Expression )
Comprehensions
模組 ( Modules )
虛擬環境
開發環境(PyCharm,Jupyter 筆記本,VS Code,Sublime Text + 更多)
檔案處理: 影像,CSV,PDF,Text + 更多
用 Python 進行 Web 開發
利用 Python 進行機器學習
資料科學與 Python
使用 Python 和 Selenium 實現自動化
使用 Python 編寫指令碼( Scripting )
利用 Python 與 BeautifulSoup 進行 Web Scraping
影像檢測
資料視覺化
Kaggle,Pandas,NumPy,scikit-learn
用 Python 處理電郵及短訊
使用 API (Twitter Bot、密碼檢查器、翻譯器)
https://softnshare.com/complete-python-developer-zero-to-mastery/
如何寫自動化測試 在 Facebook 的最佳解答
創新工場和BCG諮詢合作的「+AI改造者」系列:看看馬上贏如何在巨頭競爭下,用大數據驅動業務,實現傳統零售商和品牌商的雙贏。
改造者系列:科技巨頭下的AI企業制勝之道?-- 本文来自BCG微信公眾號,經授權轉載。
近期,創新工場聯合BCG波士頓咨詢旗下亨德森智庫,推出「AI融合產業:『改造者』如何促進AI普惠」系列研究。人工智慧在中國大陸有著明確的落地應用場景,大量的AI企業活躍於這些垂直場景中,我們定義這些企業為「改造者」。「改造者」通過傳授其AI技術和垂直行業理解,極大地打破了傳統企業應用AI的瓶頸。
作為擅於趨勢前瞻的TechVC,創新工場長期看好AI領域,深入佈局,至今已經投出了7只AI獨角獸。在系列研究中,我們采訪了數家創新系AI企業,通過這些「改造者」的視角,探究傳統企業擁抱AI的範式與路徑。
馬上贏是創新工場投資的大陸領先的快消行業大數據公司,其定位是中國快消品行業的風向標,零售監測的新標準,成為中國的「尼爾森」。通過信息化賦能小規模零售商,馬上贏打通一個個數據孤島,以大數據的方式挖掘零售數據的商業價值,為品牌商提供產品動銷數據與競品監控服務。
為了讓數據更好地服務於新品研發和上市,馬上贏引入了PDCA(Plan, Do, Check, Act)循環,通過數據說話指導快消品快速迭代,提升零售商銷售收入。
具體來說,品牌商可以在零售商的渠道內測試包括售價、外觀、營銷、陳列等要素,通過數據回饋指導新版本,實現往復循環。
在采訪中,馬上贏創始人猴哥(王傑祺)表示,垂直領域內的AI創新需要符合企業自身的需求,要在巨頭的基礎設施之上,基於更好的訓練集和更專業的垂直行業知識,不斷突破行業壁壘,優化垂直領域的AI創新。
■系列導讀
本系列由BCG亨德森智庫與創新工場董事長兼首席執行官李開復博士帶領的創新工場團隊共同推出,圍繞「AI融合產業:『改造者』1如何促進AI普惠」的課題,我們致力於探究傳統企業在應用AI過程中的關鍵要素與合作夥伴,以及傳統企業擁抱AI的範式與路徑。
在零售領域,馬上贏致力於定義中國快消品零售監測行業的新標準,成為「中國的尼爾森」,通過免費為連鎖零售商提供市場情報和「零售數字化鐵三角」2,與零售商進行數據合作,將海量的線下快消品零售數據轉換成精准的市場洞察情報。
1 「改造者」 通過傳授其AI技術和垂直行業理解,極大地打破了傳統企業應用AI的瓶頸,充當產業中傳統企業應用AI的橋樑。「改造者」包括AI企業與成功轉型AI的傳統企業。
2 「零售數位化鐵三角」指通過PDCA循環迭代的方法提升零售商銷售收入。P=Plan:52周企劃;D=Do:會員營銷;C=Check:BI看板;A=Act:改進。
■本期受訪嘉賓:猴哥(王傑祺)
馬上贏正在建設覆蓋線下門店最多的零售監測網絡,為連鎖企業免費提供BI看板、52周企劃3、會員營銷和市場情報,推進連鎖企業數字化轉型。
猴哥(王傑祺)是馬上贏的創始人兼首席執行官,清華大學學士,美國華盛頓大學碩士。他是原阿里巴巴集團資深產品專家,曾于美國UPS供應鏈部門擔任高級工業工程師。在創立馬上贏之前,他曾創業推出購物助手(如意淘),後被阿里收購。
3「52周企劃」指依托馬上贏的大數據AI技術説明零售商實現精細化管理。零售商可以瞭解一年中每周適合銷售什麼類目的產品,與陰曆節日、陽曆節日、節氣、特殊事件(如比賽活動)關聯,提升門店的銷售計劃能力。
■對談實錄
Q1 馬上贏為什麼選擇切入零售賽道?如何定義「中國的尼爾森」?
猴哥:馬上贏致力於定義快消品零售監測的新標準,做「中國的尼爾森」,為零售商和品牌商提供服務。面向零售商,馬上贏免費提供ABC服務,即AI、big data(大數據)、Cloud(雲服務),以換取訂單數據;面向品牌商,馬上贏基於零售商的脫敏數據提供大陸市場情報,賺取收入。
馬上贏發現,大陸的市場過於分散,零售的毛利又低,大量規模小的零售商缺乏足夠的IT費用以支援其獨立完成信息化應用,但他們對信息化的需求又是真實存在的。另一方面,品牌商有意願和能力為市場情報、動銷數據支付費用。馬上贏看到了零售商和品牌商的痛點以及購買力的巨大差異,嘗試通過為零售商和品牌商提供所需服務來提升整個行業的效率。
馬上贏一方面向零售商免費提供差異化的信息技術服務,按零售商的需求提供BI看板和市場情報支援,另一方面向品牌商提供產品動銷數據與競品監控服務。此外,馬上贏還在著重提升AI演算法和大數據中台數據處理能力,以便支援更多零售商和品牌商的數據服務需求。同時,這些技術優勢和服務支撐能力説明馬上贏建成大陸覆蓋範圍最大的即時零售數據監測網絡。對於馬上贏和客戶而言,這是雙贏。
在數據治理中,馬上贏需要做的是建立相對統一的內容體系,實現統一的度量衡。比如同一個條碼的商品在不同門店的名稱寫法不同,傳統方法是通過人工進行校驗和修正之後才能統一名稱入庫。馬上贏通過自己搭建的超1,600萬條碼的商品庫,使用AI演算法對零售數據做分類、清洗,並基於完善的商品知識圖譜體系標記商品屬性,再由BI看板提供數據洞察服務。馬上贏的這套全流程自動化體系,極大地提升了數據處理和情報產出的速度和效率。
Q2 相比數據咨詢商、科技巨頭等其他類別的競爭對手,馬上贏的差異化優勢是什麼?如果品牌方想自己做零售大數據,馬上贏怎麼應對?
猴哥:以往零售商想實現信息化必須高價購買專門技術公司的服務,只有少數資金充足的大零售商可以負擔得起,零售行業中數量眾多的中小型零售商往往望洋興嘆。而品牌方一般很難獲取到這些生意占比很大的中小型零售商數據,因而會尋求數據咨詢商的數據服務。但出於成本和利潤的考慮,數據咨詢商往往只服務最頭部的品牌商,在大陸可能只有幾百個品牌商能消費得起數據咨詢商的服務。相比之下,馬上贏合作的品牌商更加廣泛,從新銳品牌、區域性品牌到成熟品牌、頭部品牌,馬上贏都可以提供符合客戶需要的數據服務。
數據咨詢商從少數零售商那裏提取商品月度銷售匯總數據,再將數據整合為大盤情報,賣給少數頭部品牌商。但馬上贏從「激活生態」的角度出發,説明零售商提升數據運營能力,獲得大量一手銷售訂單數據,可以為品牌商提供更詳細的數據洞察服務。此外,馬上贏由AI賦能數據清洗和BI交付,從而可以提供即時的、更細顆粒度的看板,可以提供細到省級、地級市級、業態級、SKU級顆粒度的數據。
相比電商巨頭,馬上贏選擇線下快消品零售行業,覆蓋更多的線下零售商,涉及更豐富的業態,有大賣場、大超市、小超市、便利店、食雜店等等。在商品品類的選擇上,馬上贏暫不拓展美妝、服裝等電商渠道占比超過50%的品類,而選擇線上化率相對更低的品類,如食品、飲料、日用品。這些品類消費時效性高、頻次高、單價低,線上購物場景並不適合線下。
至於品牌方自己做零售大數據,馬上贏早前就思考過這個問題。我們和大品牌都聊過,如果建立品牌方自己的銷售追蹤網絡是否可行,得出的結論是不可行。一是單一品牌方來做大數據,做完了只能自己受用,成本攤下來很不合算,還不如投資AI企業,實現專業化分工;其次,品牌方還有一些技術壁壘解決不了,攻克下來只會對成本端造成更大的壓力,得不償失。
Q3 馬上贏在賦能零售商和品牌商的過程中遇到的最大挑戰是什麼?
猴哥:最大的挑戰來自於行業裏不透明的競爭——現在做AI的企業太多了,很多企業會虛報準確率,噪音特別大。
AI在每個垂直行業的落地需要很多行業知識,其次才是疊加AI演算法。但很多傳統企業對AI的期待特別高,導致市場上各種聲音魚龍混雜,每個企業都在講述「AI萬能」的故事。馬上贏不會激進地過度承諾,但這種冷靜和狂熱之間的衝突會帶來很多麻煩——當別的AI企業過度承諾其自動補貨的準確率高達95%的時候,馬上贏如果表示我們的準確率位於70%—85%的區間,傳統企業就會輕視我們的實力。現在,垂直行業裏缺乏行業組織或者專業機構來做客觀、公允的第三方普查。比如在圖像識別、自然語義處理領域,都有比較公認的訓練賽,大家用演算法的跑分說話,相對而言就比較客觀。落到垂直領域裡,每個企業自己報數據,很多時候就會有水分。
馬上贏曾經考慮把收集的數據脫敏之後貢獻出來,讓大家有一個公平的舞臺競技,但是很難運行起來。僅僅共享數據不足以激勵演算法團隊,需要行業組織定期舉辦競賽、活動等,或者像Netflix舉辦推薦演算法比賽,通過資本來激勵大家參與,僅僅靠社區運轉不起來。
Q4 你認為未來AI企業的發展趨勢是什麼?
猴哥:有能力的巨頭要持續加強行業的基礎設施,讓開發AI的人能有更好的工具,讓雇不起博士生的企業也能應用AI,實現技術普惠。同時,垂直領域內的AI創新需要符合企業自身的需求,AI企業要在巨頭的基礎設施之上,基於更好的訓練集和更專業的垂直行業知識,不斷突破行業壁壘,優化垂直領域的AI創新。我相信這是我們的生存之道——「科技巨頭靠算力,我們靠設計」。
同時,大陸的零售行業在洗牌,有很多更具備數據化思維的新品牌在躍躍欲試。以前是渠道經濟,在社區裏搶到點位就能有流量,未來是有技術、數據和管理能力的品牌才能從老品牌手中搶到點位。此外,隨著許多快消品牌逐步上市,出現資本外溢,更多的人會開始創業,疊加當前快消巨頭的二代交棒窗口,零售領域將有新一波浪潮湧動。我相信,未來的零售行業會更加擁抱數據,擁抱AI。
■要點回顧
1. 不只是技術層AI要有標準,應用層AI也需要標準。垂直領域應用AI需要由行業組織或龍頭企業牽頭制定公認的行業標準,從而促進AI企業公平有序發展,這也將反哺傳統企業,促使傳統企業的AI應用提質增效。
2. 「科技巨頭靠算力,AI企業靠設計」,結合巨頭提供的行業通用基礎設施和「改造者」特有的垂直領域數據集和算法,各取其長,方能最大化傳統企業應用AI的效率。
如何寫自動化測試 在 孫在陽 Youtube 的精選貼文
Excel數據編輯與視覺化分析-以觀光統計資料為例,資料分析目的,瞭解資料轉置與樞紐的差別。轉置的使用時機,使用功能操作,不用寫複雜函數,相信人人都可以理解。
孫在陽老師主講,[email protected]
範例、講義下載:https://goo.gl/ytzRxT
00:00:00 取得資料
00:10:00 資料轉置
00:45:00 分析
如何寫自動化測試 在 吳老師EXCEL VBA設計(大數據自動化)教學 Youtube 的最佳解答
VBA到Python程式開發202101第2次上課
01_重點回顧與多重邏輯
02_如何將Python程式改為VBA
03_判斷成績與改為VBA程式
04_計算BMI結果與格式化
05_加上評語邏輯判斷與格式化
06_將BMI範例改寫為VBA程式
07_將BMI範例改寫為VBA細節說明
08_For迴圈加總1到99與奇偶數加總
09_For迴圈用step與brake與九九乘法表
完整教學
http://goo.gl/aQTMFS
吳老師教學論壇
http://www.tqc.idv.tw/
教學論壇(之後課程會放論壇上課學員請自行加入):
https://groups.google.com/forum/#!forum/tcfst_python_2021_1
課程簡介:入門
建置Python開發環境
基本語法與結構控制
迴圈、資料結構及函式
VBA重要函數到Python
檔案處理
資料庫處理
課程簡介:進階
網頁資料擷取與分析、Python網頁測試自動化、YouTube影片下載器
處理 Excel 試算表、處理 PDF 與 Word 文件、處理 CSV 檔和 JSON 資料
實戰:PM2.5即時監測顯示器、Email 和文字簡訊、處理影像圖片、以 GUI 自動化來控制鍵盤和滑鼠
上課用書:
參考書目
Python初學特訓班(附250分鐘影音教學/範例程式)
作者: 鄧文淵/總監製, 文淵閣工作室/編著?
出版社:碁峰? 出版日期:2016/11/29
Python程式設計入門
作者:葉難
ISBN:9789864340057
出版社:博碩文化
出版日期:2015/04/02
吳老師 110/3/2
EXCEL,VBA,Python,自強工業基金會,EXCEL,VBA,函數,程式設計,線上教學,PYTHON安裝環境
如何寫自動化測試 在 吳老師EXCEL VBA設計(大數據自動化)教學 Youtube 的精選貼文
VBA到Python程式開發202101第2次上課
01_重點回顧與多重邏輯
02_如何將Python程式改為VBA
03_判斷成績與改為VBA程式
04_計算BMI結果與格式化
05_加上評語邏輯判斷與格式化
06_將BMI範例改寫為VBA程式
07_將BMI範例改寫為VBA細節說明
08_For迴圈加總1到99與奇偶數加總
09_For迴圈用step與brake與九九乘法表
完整教學
http://goo.gl/aQTMFS
吳老師教學論壇
http://www.tqc.idv.tw/
教學論壇(之後課程會放論壇上課學員請自行加入):
https://groups.google.com/forum/#!forum/tcfst_python_2021_1
課程簡介:入門
建置Python開發環境
基本語法與結構控制
迴圈、資料結構及函式
VBA重要函數到Python
檔案處理
資料庫處理
課程簡介:進階
網頁資料擷取與分析、Python網頁測試自動化、YouTube影片下載器
處理 Excel 試算表、處理 PDF 與 Word 文件、處理 CSV 檔和 JSON 資料
實戰:PM2.5即時監測顯示器、Email 和文字簡訊、處理影像圖片、以 GUI 自動化來控制鍵盤和滑鼠
上課用書:
參考書目
Python初學特訓班(附250分鐘影音教學/範例程式)
作者: 鄧文淵/總監製, 文淵閣工作室/編著?
出版社:碁峰? 出版日期:2016/11/29
Python程式設計入門
作者:葉難
ISBN:9789864340057
出版社:博碩文化
出版日期:2015/04/02
吳老師 110/3/2
EXCEL,VBA,Python,自強工業基金會,EXCEL,VBA,函數,程式設計,線上教學,PYTHON安裝環境
如何寫自動化測試 在 Chapter 10 自動化測試策略與方法 的推薦與評價
Brian Marick 測試4象限. 有很多不同的測試,如何分類?哪些測試可以被自動化? ... <看更多>
如何寫自動化測試 在 如果要幫公司維護自動化測試框架,有什麼文章、課程可以看呢 的推薦與評價
想請問一下,如果要幫公司維護自動化測試框架,有什麼文章、課程可以看呢?或是已經建立好的Open sorce可以 ... 不知道怎樣調整受測程式的架構, 讓寫測試程式比較容易. ... <看更多>
如何寫自動化測試 在 Re: [請益] 軟體測試出路? - 看板Soft_Job 的推薦與評價
※ 引述《msc0953 (殺菌)》之銘言:
:: 測試,可分成手動測試和自動化測試。簡單來說,自動化測試就是把手動測試可以用程
: 式來代替。基本上,自動化測試不一定要使用 C++ 或是 Java,也可以使用一些腳本語
: 言,例如: Python, Javascript, 主要是測試有的時候要跑很久,當測試案例失敗後,
: 改程式碼可以很快地再跑一次測試。
: 推自動化測試要有老闆的支持,還要整個團隊對於產品的品質要有一定的要求。因為除了
: RD 要寫 Unit Test, Integrate Test, 還要有自動化的建置系統, 另外, RD 要寫出可被
: 測試的程式,QA 需要設計模組去驅動測試案例測試 RD 寫的程式,如果只是會看著測試
: 案例去測試 RD 寫出來的軟體,那替代性真的很高。
: 但是如果你有辦法看出測試案例上沒有的Bug,甚至可以給予 RD 沒想到解決方案,或是
: 能夠寫自動化測試處理原本要由人跑得的測試,那這就不是免洗的。這種QA非常靠經驗和
: 個人風格,也不是一般QA可以馬上達到的目標。
: 你可以朝向 QA Leader 的方向去走,主要是安排要怎樣測試軟體,測試範圍要怎樣開,那
: 些測試要做,先訓練自己組織的能力,也許再補充自己的專案知識,接PM的工作,也許會
: 比較適合。
針對自動化測試分享一些東西 ..
自動化測試的目的有幾個:
- 減少人力成本, 資源有效利用
- 找出潛在性問題
- 找出效能問題
- 執行回歸測試, 特別是維護階段, 或者客製化 (Custom Build) 的維護
- 規劃的好, 有所謂認證的價值, 公信力.
不過大部分, 做到後來都不知道在幹嘛 ....
很多案子, 我看到的問題經常是:
- 通常找不到什麼問題, 因為整個自動化程式都是問題
- 自動化測試不是用來找測試的, 是用來維護的
- Bug 都是自動化程式自己的問題, 沒有業績, 只有黑箱
- 為了自動而自動
- 沒有規劃, 所以不同的 QA/Tester 會用不同方式寫,
C/Python/Perl/Java/Shell ... 大亂鬥, 接手的很過癮 ...
- Test case 相依性太高, case 1 跑完後, case 2 就不能跑了,
因為環境爛掉了, 偏偏後面還有 2000 個要跑,
結果你已經下班了, 明天早上要給報告. 發現時已經是隔天進辦公室的時候了.
- Test script 本身沒有 quality. 所以那 2000 個不知道怎麼來的.
- 幾個 cycle/stage 之後, 自動化測試能跑就不錯了
- 通常寫 autotest 的人, 不知道啥叫做 source control ....
- 自動化測試好不容易可以跑了, 結果忘了換 build, 發現時已經是隔天早上.
- Developer 通常不想因為需要配合自動化, 而幫 QA/Tester 在 Code 加東西/開洞,
因為自己的東西都做不完了, 搞不好幫到最後變成自己的 orz ..
- Developer 有時間/願意配合了, 不過找到可以開動的 lib 又是一個大問題
(沒人維護了)
- QA/Tester 通常也沒啥 Coding skill, 也不知道怎麼跟 Developer 提出需求
而且 PM 也不知道那是做啥的, 所以 QA 就是找一些工具 (ex: selenium),
錄一錄, 然後只能跑幾次 ... 或者常常不知道為啥突然不能動了.
- GUI automation 看看就好, 不管是 Web/Window App/Mobile,
因為那些重點都在 **自動**, 但不是在 **測試流程**,
也不是在找問題, 製造的問題不少
- 大部份的 test tools 都只是用來安裝用的
- 自動化程式通常換一個環境就毀了
- 沒有完整的報表/Log, 無法缺陷分析, 更別提和 Issue tracking system,
or test management system 整合
- 自動化測試工具本身的品質堪慮 ... .(ex: RFT, 我不知道現在有沒好一點)
- 自動化測試不只是 test script 而已, 還包含自動部署, flow control/timer,
rework/rerun mechanism, schedule and job contorl, status, report interface
不過九成能動就不錯了, 剩下的都不知道是啥鬼.
- 自動化測試仰賴 PM/Develoer 推動 CI 相關流程, 同時把產品界面定義清楚.
產品界面就是 product name, version, revision, build type .... etc.
一個還好, 當同時有十幾個時候, 就不好玩了.
- 大部分自動化 '程式' 不會當作正式的 '程式', 所以九成九都是垃圾 code ...,
放到 source control 會被排擠.
- .... 不想列了 ...... orz.
我想說的是, 要做軟體自動化, 從頭就要跟 developer 同步進行,
最好是 pair programming + TDD,
developer 提供對應的 config, component key,
然後能夠有不同的 build type (debug, release) ...
- config 是未來自動部署時才有辦法設定在不同的環境;
- component key 指的是自動化工具要取得 UI object 的識別,
html 就是 id, iOS 是 label, andorid ... 我不想說了.
不然自動化程式裡就是一堆 n 度空間的 array ....
然後 developer 隨便調一個 UI, 自動化程式從此自動消失.
- PM 把 version role 定義好, CI 那邊才好串.
阿不然今天 1.3.e-3425, 明天變成 0.1.ab0c-1 ... (不要懷疑, 我真的看過)
- debug 可以讓程式或者 QA/Tester 調整一些參數, 增加測試的廣度與深度
- developer 在 code 寫的 log = input of autotest,
所以不要亂寫一些沒用的東西, 很難趴
# 自動化測試導入
兩個時間點:
- 新的案子, 剛開始. 最好是 prototype 出來的時間
- 案子已經在維護了, 不會有新的需求進來, 但是會修 bug, 最重要是這個案子賺錢.
進行中的案子不要導入自動化, 除非時間很多.
# 開發自動化工具 or Framework 的重點
市面上有很多工具, 不過很多都太過強調 '錄' 一些東西, 特別是 GUI 的,
錄 Web/錄手機/Window App ... 錄下來都不能看 ...
我覺得那只是行銷手法.
以下是我覺得 survey 或者自行開發一套自動化工具時的重點:
- Config / Data-driven
- Report
- Log 分析 / Pattern
- 圖形分析
- Timing control
- 測試流程與文件產出器
- 找物件的 libraries 有完整的封裝 (GUI automation 常出現的問題)
- 資源利用 / 分散式執行 (趕流行)
- 提供 libraries 讓 QA/Tester 也可以參與寫 script / debug
- 提供詳細的 debug 流程方法
- 和 Issue Tracking System / Test Management 整合
- lib 擴充性和文件產生工具
- 工具自己要有品質 (某大公司的 RFT .... )
# 測試角色的定義
- SDET:
- 做過 developer 最好.
- 寫自動化測試 Framework 或者研究老闆指定的工具
- 寫 plugin (像是針對 JMeter 寫 plugin)
- 維護/針對新功能提供 Libraries
- Document / Sample Code
- QA:
- 寫 test spec
- 利用自動化測試框架寫 test script / debug
- 執行寫好的 test script, 跑 overnight
- 回報/驗證爸個
- Tester: 手動執行
- 根據 QA 寫的 test spec 跑測試
- 回報/驗證爸個
# 自動化測試在專案裡的執行注意事項
- 寫 test script 本身也是一件 Coding 的工作,
一樣要 design, coding, unit test, code review, source control ..
要 Q (誰來 Q?)
- 十個 test script 可以一個人執行, 不用 config 一樣可以正常上下班;
2000 個 test script, 怎麼執行? config?
維護? report? (400M 的 log 怎麼分析啊啊阿啊啊啊啊)
這 2000 個要跑 20 次 (因為有 20 個客戶 QQ) ...
其中一個客戶要求每個 case 再跑時, 同時要跑 db access, 增加 concurrent;
另一個客戶說, 某一些 case 參數要調成 0800956956 ...
去把 2000 test script 叫出來重寫嗎? 然後要 concurrent 咧 ... 連 DB ...
對了, 20 客戶有不同的 build, 要記得換 build.
然後下一個 phase 就剩下 20 個可以跑, 因為改爛了 ...
然後你就跑了.
所以 config 的設計與彈性, 比你想像的還重要.
鮮少 autotest tool 會加強這塊的.
- test script 的內容重點在測試流程, 不是一堆找物件的 function ...
那些東西應該是 lib 要寫好, SDET 要搞定的
test script 重點是: 流程 驗證 記錄
- 寫 test script 之前, 要充分了解 requirement / spec
不過大部分 requirement / spec 都不充分 XDD
- 自動化可以和手動測試同步進行最好.
- 以前嚴重的 bug 要盡可能的放到 bucket, 有機會就自動化.
- 如果有 TDD, 那麼就把自動化測試考慮進去吧 ~~
- 如果是自行開發 test framework, 最好用 framework test self.
保證 framework 本身以及 libaries 都是 qualify.
- 文件 文件 文件
- z>b
寫的有點怨念, 大概沒回到原 po 的問題 XDD
BTW: 有興趣去看看一本書叫做 How google tests software, 作者也有一些怨念 XD
--
::: 喝咖啡 聊音樂 :::
https://rickmidi.blogspot.com/
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 36.231.105.25
※ 文章網址: https://www.ptt.cc/bbs/Soft_Job/M.1399479677.A.60D.html
基本上 "自動化程式" 也是程式, 除了要有 Coding 能力,
更重要有 "分析能力", 因為往往 developer 產出的東西,
複雜度會比原本 requirement / spec 更複雜,
我的經驗, 做自動化程式最好就是 developer,
或者要 train developer 測試的基礎概念.
也不見得, DHH 說 TDD 已死 ...
see: https://www.ithome.com.tw/news/87245
TDD 表示: over my dead body
經驗告訴我, TDD 可以讓大家 (Developer/QA/PM) 思考,
產品的樣子應該是什麼, 但這不表示會抹煞工程師的創造力.
garbage code 有很多原因:
* 歷史因素: 交接很多次了, 有時候為了滿足上面的要求, "暫時" 改幾行.
這個 "暫時" 是怎麼一回事? 不要問, 很恐怖.
* 不知道 test framework life cycle: 把 code 裡的 init value
當 config 用, 所以也是 "暫時" ...
* 把 "暫時" 的 commit 了 ...
* 為了某個特別的目的, 改掉整個流程 ... (通常改的人不會知道影響有多大)
因為他自己可以跑就好, 這也是一種 "暫時" ...
有在用 framework 寫產品的常會遇到, 某些時候一些寫法就是不正確,
但是大部份的 developer 不會去改 framework 的 source code,
因為他知道應該是自己使用錯誤, 或者對於 life cycle 不了解.
不過接 auto test 很多時候會直接跑去改 framework 的 code ... 然後 ..
You know ....
... <看更多>