向大牛大神大家求救!能否給我一個Python3.x+Appium的APP自動化測試的學習指導意見?

各位大牛,我現在剛入職一份APP的自動化測試工作,用的是Python3.x+Appium,IDE用的是pycharm。但之前從來沒學過編程,也非計算機專業,做了1年多的手動測試,完全不懂語言、架構、工具。Python自學了一個入門,看了3本入門的書,看的時候覺得簡單易懂,但完全不知道怎麼用到自動化里去。網路上很多資料和書籍都是基於Python2.7.x版本的,查了2天的資料,都沒有發現適合我這個工作的系統完整的學習資料。有沒有什麼針對APP自動化測試工作的好的學習方法or書籍的推薦呀?最好給我一個從淺入深的學習方法推薦。謝謝大家!!

題外話:這是一個新的項目,用APP外聯無線設備進行操作,只招了我和另一個小白兩個人來做,我是完全0自動化經驗+0語言能力。另一個比我好一點,有自動化經驗,但是非移動端,非Python,所以等於也是從頭學起。跪求指導啊!謝謝大家!么么噠~


看看這個能不能幫到你,文檔的中文翻譯:appium/docs/cn at master · appium/appium · GitHub


1、首先要解決一個問題,自己能寫代碼解決問題。

如果中文書,請看下面的書

2、參考appium 的例子

sample-code/sample-code at master · appium/sample-code · GitHub


我也是正在學習這個,所以說一下我自己的感受吧。

首先Python入門,這個很簡單,推薦看一下《python簡明教程》,基本語法就會了。

如果餘力較多,可以看一下《python基礎教程》,等你愛上python,你就會自覺地看其他的了,比如核心編程。另外python3和2,當然推薦你學3了,官方強力推薦3的哦。不過,robotframework ride 官方不支持3,這裡用的話還是推薦2.7。如果你不不用robotframework,那就算了,3是你不二選擇。

其次appium,這個appium python client,我倒是還沒有怎麼研究。推薦你看官網和github。其實我不推薦你自己造輪子,robotframework 這麼騷,拿來用吧。我之前開發過uiautomator +python的自動化測試框架,雖然我是划水,划水,但是也很費力的好吧。

總結咯,多寫,不懂了就谷歌(biying,百度),多看看github,好多現成的輪子,你會喜歡的。

關於appium教程的話,我就不說了,網上比較多。

關於自動化測試框架,推薦robotframework。

第一次這麼認真的回答,問題,好歹贊一個嘛。不客氣咯。


瀉藥,(ps: 樓上的那本核心編程書都翻破了,好膩害)目前我也在從事自動化測試的相關實踐,自動化測試,首先是對測試框架的選型,圍繞著自動化測試框架,進行相應的測試開發。

很多公司都想著做自動化,但是往往效果都不是很好,在這裡我也不想講過多的測試理論。只講講具體的實踐。

1.

測試框架選取

對於你的需求,首先是框架的選型,既然你們公司內部定了python+appium來對移動應用進行測試,那麼就需要圍繞這個框架,來構建自己整個的自動化測試套件了,這裡的套件指定是包括測試用例到測試庫一整套方案。不過為了以後的測試用例維護的成本降低,我還是推薦你們使用一些關鍵字驅動的測試框架,如Robot Framework (Robot Framework), Robot Framework有第三方提供的基於Appium的關鍵字型檔AppiumLibrary (GitHub - jollychang/robotframework-appiumlibrary: AppiumLibrary is an appium testing library for RobotFramework)。這裡還是推薦你使用,方便後期自動化測試用例的維護。

2.

測試套件的構建

一般測試套件的構建原則是基於分層的自動化測試用例設計方案,分離出穩定的部分和可變的部分,可變的部分需要自動化測試人員長期維護,並根據測試需求的變動進行相應的修改。

我為什麼推薦Robot Framework框架來作為自動化測試的基本框架呢,主要是因為這個框架提供了一套獨立的測試用例編寫語法,能夠實現跨平台,跨語言,這樣我們就不必對測試人員的編程水平要求很高了,大家都用一套語法進行自動化測試用例的開發,方便維護。

這裡,我推薦一種自動化測試套件的設計方案,如下圖所示:

具體的解釋說明,請參考原文博客

(How to Structure a Scalable And Maintainable Acceptance Test Suite)或者翻譯博客(Robot Framework 教程)

3.

關於APP自動化測試學習

之所以測試選擇python的話,也是因為python的簡單易學,專註於實現,而不是語法。學python的話,Python核心編程看一遍,或者廖雪峰的python網站看一遍就差不多,後面的深入學習或者有疑惑的地方,就上python官網上看用戶指南或者是語言規範,這個是最權威的。Python2.7或者是Python3.x版本,沒有多大區別,最好按照一個版本來,要不就是每個測試腳本,都是可以兼容2.7的,這樣很麻煩。

其次,關於APP的自動化測試,我的觀點還是這樣的,按照測試金字塔模型,

APP端的UI測試,不要佔主要部分,最主要的還是單元測試,以及後台的介面服務API層面的測試,UI測試,集中於主要的驗收測試即可。

4.

自我學習

學習的話,我也沒有很多可以說的,看自學能力了,現在網上學習資料很多,不過我建議你學一學簡單的移動開發,這樣對測試理解就會不一樣了,考慮的東西也會全面和深入。

5.

總結

自動化測試最主要的,也是最難的,還是在於寫出可維護,穩定,健壯的測試用例,不然框架做的再好,報告生成的再漂亮也是沒有價值的。


Appium自動化測試從基礎到實戰基於--pythonMushishi_Appium自動化測試從基礎到實戰基於--python全文閱讀_百度閱讀


我也是完成環境搭建後停著,比較熟悉js,但不知道從何入手


推薦閱讀:

TAG:Python | 自動化測試 |