① python測試有什麼用途
Python測試有什麼用途
Python測試用途如下:
1、使用Python +Selenium實現web端的UI自動化
Selenium是一個用於Web應用程序測試的工具。Selenium測試直接運行在瀏覽器中,就像真正的用戶在操作一樣。這個工具的主要功能包括:測試與瀏覽器的兼容性——測試你的應用程序看是否能夠很好得工作在不同瀏覽器和操作系統之上。測試系統功能——創建回歸測試檢驗軟體功能和用戶需求。
Python與Selenium結合能夠很好的實現web端的UI級別的自動化。Selenium幾乎能解決目前遇到的web頁面中所有的定位難題,當然有些特殊的可以藉助JavaScripts也可以實現。
2、使用Python + Requests實現介面測試
進入python requests官網看到的的第一句話是:Requests 唯一的一個非轉基因的Python HTTP 庫,人類可以安全享用。
通過requests庫提供的各種API可以非常方便的模擬HTTP請求,實現介面自動化測試。
3、使用Python + Appium實現app自動化測試
Appium是一個自動化測試開源工具,支持 iOS 平台和android 平台上的原生應用,web 應用和混合應用。
所謂的 移動原生應用 是指那些用iOS 或者 Android SDK 寫的應用。所謂的 移動 web 應用 是指使用移動瀏覽器訪問的應用(Appium 支持 iOS 上的Safari 和 Android 上的 Chrome)。所謂的「混合應用」是指原生代碼封裝網頁視圖——原生代碼和web 內容交互。比如,像 Phonegap,可以幫助開發者使用網頁技術開發應用,然後用原生代碼封裝,這些就是混合應用。
重要的是,Appium 是一個跨平台的工具:它允許測試人員在不同的平台(iOS,Android)使用同一套API來寫自動化測試腳本,這樣大大增加了iOS 和 Android 測試套件間代碼的復用性。
Appium也是多語言支持,當然也是支持python的,運用python + Appium可以實現跨平台的app UI自動化測試。
更多技術請關注Python視頻教程。
② 基於Appium+WDA+Python搭建IOS自動化測試全紀錄(三):真機demo運行
前期回顧:
基於Appium+WDA+Python搭建IOS自動化測試全紀錄(二):模擬器demo運行
基於Appium+WDA+Python搭建IOS自動化測試全紀錄(一):環境搭建
在模擬器將demo跑通之後,就要在真機上測試啦,模擬器總是要為真機服務的。
在真機上主要是涉及到簽名及證書的問題,一下blog寫的特別好,然而其實我也沒有看懂,RSA演算法神馬的早在密碼學課程上還給老師了。
iOS App 簽名的原理
主要在此簡單記錄一下證書的配置吧。
在xcode中找到build Setting配置部分(之所以把這張圖放出來是因為我最開始找不到這個配置,萌新啥都找不到):
更改一下三個欄位對應的內容:
Code Siging identify 證書裡面對應的開發者
Proct Bundle Identify 對應的bundleID
Provisioning Profile 包含了 證書 / Entitlements 等數據,並由蘋果後台私鑰簽名的數據包。
數據包是.mobileprovision文件格式結尾 在終端中輸入如下命令即可看到裡面的信息
改完之後 我們開發的程度就可以裝到真機上啦,這個時候選擇在真機上運行,就可以啦。
測試app裝到真機上之後,還要考慮如何開啟py腳本,在真機上進行測試。
這里需要注意兩點:
最後找到的地址大概如下:
放到xcode中進行簽名證書配置,注意雖然我們打開的是WebDriverAgent文件夾,但是我們要配置的是WebdDriverAgentRunner 在其Build Settings中進行與證書有關的配置
配置完畢後還需要再WebdDriverAgentRunner中添加一個RoutingHTTPServer.frameork
點擊添加之後->add Other
在如下路徑可以查找到該framework
找的一定是appium文件路徑下的!
上邊關於wda並沒有做過多說明,因為還不怎麼了解 等了解了再補充相關知識
py腳本主要是配置有更改,主體文件請見開頭(二)模擬器demod的blog
在真機上配置更改如下:
然後啟動appium 發現真機上裝上了廁所app 裝上了WebDriverAgentRunner 然後用python運行腳本就ok拉!
以上為從搭建環境-》模擬器跑demo-》真機跑demo的簡單記錄,不涉及到原理方面的講解,如有錯誤之處還請提出。
【之後還有跳一跳的安卓環境搭建
wda的inspector相關環境還沒記錄~】
[Tbc]
個人博客:
進擊的程序茗
③ 測試新人如何使用Python代碼封裝自動化測試的用例
使用Python代碼封裝自動化測試的用例, 意味著將代碼封裝到一個整體中, 在python中面向對象的編程思維方式是最適合封裝了:
①把測試的數據和測試的過程封裝到類的內部成為一個整體, 便於測試數據和測試流程的管理維護;
②Python中面向對象封裝的特性有利於隱藏內部實現的復雜度, 對於調用者來說直接調用即可 ;
③Python面向對象中的類,是實現封裝最佳體現, 把數據和對數據的操作封裝在類的內部,, 對數據起到保護作用, 提高了代碼的安全性和健壯性;
④Python中面向對象的編程模式體現了模塊化的思想, 模塊可以重用, 模塊容易擴展, 簡化測試的流程, 提高測試的效率。
更高效的編寫實現自動化測試用例,Python中面向對象編程思維方式是必須掌握的,親戚在傳智播客學的軟體測試,現在月薪13K。
④ Python Appium自動化測試 Monkey搭建+操作
Monkey 是 Android SDK 提供的一個命令行工具, 可以簡單,方便地運行在任何版本的 Android 模擬器和實體設備上。 Monkey 會發送偽隨機的用戶事件流,適合對 App 做壓力測試。
Monkey 測試就像一隻猴子,在電腦面前亂敲鍵盤在測試。 通過 Monkey 程序模擬用戶觸摸屏幕、滑動 Trackball 、 按鍵等操作來對設備上的程序進行壓力測試,檢測程序多久的時間會發生異常。
Android 官方自動化測試領域這只 「猴子」 一旦啟動,就會讓被測的 Android 應用程序像猴子一樣活蹦亂跳,到處亂跑。常用 Monkey 來對被測程序進行壓力測試,檢查和評估被測程序的穩定性。
Android 官方對與 Monkey 的描述:
Monkey 是一個程序,運行在模擬器或設備上,並生成偽隨機的用戶事件流,如點擊、觸摸、手勢,以及一些系統級事件。 你可以使用 Monkey 以隨機但可重復的方式對正在開發的應用程序進行壓力測試。
官方文檔: http://www.android-doc.com/tools/help/monkey.html
安裝 Android SDK 並配置環境變數。
Monkey 主要用於 Android 的壓力測試,自動的一個壓力測試小工具, 主要目的就是為了測試 app 是否會 Crash 。
(1) Monkey 程序由 Android 系統自帶,使用 Java 詫言寫成,在 Android 文件系統中的存放路徑是: /system/framework/monkey.jar;
(2) Monkey.jar 程序是由一個名為 「monkey」 的 Shell 腳本來啟動執行, shell 腳本在 Android 文件系統中 的存放路徑是:/system/bin/monkey;
(3) Monkey 命令啟動方式:
Monkey 運行在設備或模擬器上面,可以脫離 PC 運行。普遍做法是將 monkey 作為一個像待測應用發送隨機按鍵消息的測試工具。驗證待測應用在這些隨機性的輸入面前是否會閃退或者崩潰。
Monkey 雖然可以根據一個指定的命令腳本發送按鍵消息,但其支持條件判斷,也支持讀取待測界面的信息來執行驗證操作。
Monkey 程序是 Android 系統自帶的,其啟動腳本是位於 Android 系統的 /system/bin 目錄的 Monkey 文件,其 jar 包是位於 Android 系統的 /system/framework 目錄的 Monkey.jar 文件。用戶主要是通過 adb 命令來啟動 Monkey 的, Monkey 在運行時,會根據命令行參數的配置,生成偽隨機的事件流,並在 Android 設備上執行對應的測試事件。同時, Monkey 還會對測試系統進行監測,當出現以下幾種情況時會進行特殊處理:
以夜神模擬器為例:
1、檢查設備連接狀態
2、從上圖看出,設備未連接,連接移動設備
3、再次查看設備連接狀態
4、連接成功後輸入命令:adb shell
5、進入到指定目錄,命令:cd /system/bin
6、輸入 monkey命令看到如下提示則說明啟動成功
monkey 命令格式如下:
[options] 是指 monkey 可傳入的參數,是可選項(如果不指定options,Monkey將以無反饋模式啟動,並把事件任意發送到安裝在目標環境中的全部包)
<event-count> 是指隨機發送事件數。如:輸入100就是執行100個偽隨機事件,為必選項
測試工程師職業發展路線:
功能測試 — 介面測試 — 自動化測試 — 測試開發 — 測試架構師
內容就到這里,如果你對Python自動化軟體測試感興趣的話可以加入我們175317069扣裙一起學習。群里會有各項測試學習資源發放,更有行業深潛多年的技術人分析講解。
作為測試工程師,不斷提升自己工作能力是提高薪資待遇最重要的基礎。另外也要注重學習, IT 行業是個不斷發展、更新迭代相對較快的行業,技術具有明顯的時代特徵,所以緊跟時代技術的發展才能讓自己不掉隊,在職場當中具有足夠的競爭力。
⑤ python+appium中的tap怎麼用呀
先看看tap是什侍帆鎮么,定義在了TouchAction中,代碼如下
def tap(self, element=None, x=None, y=None, count=1):
"""Perform a tap action on the element
:Args:
- element - the element to tap
- x - (optional) x coordinate to tap, relative to the top left corner of the element.
- y - (optional) y coordinate. If y is used, x must also be set, and vice versa
:Usage:
"""
opts = self._get_opts(element, x, y)
opts['count'] = count
self._add_action('tap', opts)
return self
實際的使用中根據這個來自定義一些方法來用,比如你這個點擊屏幕,可轎行以定義如下,後面傳老粗遞參數即可
def tap_screen(self, x, y):
self.action.tap(None, x, y).perform()
另外我這邊是計算中心坐標是除以2,是沒問題的。比如你這個就是center_x = w / 2,center_y = y / 2,後面直接調用tap_screen(center_x,center_y)就行了
⑥ Appium環境部署(三)——python的下載、安裝與配置
一、下載:根據個人環境和需求選擇對應版本進行下載
1、官網下載
https://www.python.org/
3、網上輸入關鍵字「python」搜索
二、安裝與配置
1、找到下載exe文件,然後雙擊,進行安裝
2、定義好要裝python的目錄後,然後把下方的兩個選項勾選上(方便後期使用python的,不然還得自己去環境變數進行配置)(注意:安裝目錄盡量不要選擇C盤)
3、需要同時安裝兩個python版本,比如python2、python3
(1)2個程序安裝方法一致,雙擊進行安裝,自定義安裝
(2)安裝的文件夾不要在同一個目錄下
(3)重點:在安裝好的目錄下找到「python.exe」這個執行文件,然後進行自定義命名:比如這個目錄下安裝的是2.0,那就修改成「python2.exe」;另一個目錄下安裝的是3.0,那就修改成「python3.0.exe」
(4)然後把這兩個目錄及各自目錄下的Scripts目錄添加到環境變數path下,如 E:python;E:pythonScripts;E:python39;E:python39Scripts
三、檢查環境
1、打開cmd,輸入python,回車,查看返回的版本號
2、如果安裝的時候修改了「python.exe」的名字為「python3.exe」,則在cmd框輸入python3,回車,查看返回的版本號
3、可以編個學習語言的語句輸出試用一下 如 print("Hello World") 回車輸出查看結果