亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

基于Python的Appium環境搭建合集

系統 1538 0

自動化一直是測試圈中的熱聊,也是大家追求的技術方向。在測試中,往往回歸測試也是測試人員的“痛點”。對于迭代慢、變更少的功能,就能用上自動化來替代人工回歸,減輕工作量。

問題

在分享環境搭建之前,先拋出我的一個疑問吧。

app啟用時,分不同的場景:

1.首次安裝啟用,有歡迎頁;

2.非首次啟用,直接進入到登錄頁;

3.配置了推薦展示時,啟用app,會先展示推薦內容,才進入到登錄頁。

不同場景對應的activity都是不同的,我目前處理辦法是,寫了個輸入函數,加了個if判斷去對應不同的activity,總覺得不智能,看此篇的博友們,能否給建議解惑一下。謝謝。

說了這么多,該進入正題了。Appium環境搭建,需要安裝的軟件還是有好幾個,一個安裝失敗,就可能導致整個環境搭建失敗。先羅列下需要用到的軟件,如下:

            
              1
            
            .jdk-8u221-
            
              window(下載對應版本)


            
            
              2
            
            .Android-sdk_r24.
            
              4.1
            
            -
            
              windows(下載最新版)


            
            
              3
            
            
              .Python


            
            
              4
            
            
              .appium


            
            
              5
            
            
              .Node.js


            
            
              6
            
            .Appium-python-
            
              Client


            
            
              7
            
            .pycharm
          

一、jdk安裝

jdk下載地址:http://www.oracle.com/technetwork/java/javase/downloads/index.html

JDK一鍵安裝,無需多講,默認安裝路徑即可

環境配置:計算機>屬性>高級屬性>環境變量

變量名:JAVA_HOME

變量值:D:\Java\jdk1.8.0_73(這里是jdk安裝路徑)

變量名:path

變量值:%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;(使得系統可以在任何路徑下識別java命令)

變量名:CLASSPATH

變量值:.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;(這里需要注意的是.不能漏)Java運行環境加載類的路徑

環境配置是否成功,輸入javac或者java -version驗證,出現如下界面表示成功

基于Python的Appium環境搭建合集_第1張圖片

?

?

?

?二、sdk工具類安裝

Android SDK提供開發測試所必須的Android API類庫和開發工具

1.sdk下載

sdk下載地址:https://www.androiddevtools.cn/

我們需要下載的是SDK Tools

基于Python的Appium環境搭建合集_第2張圖片

?

2.工具類安裝

安裝方式:

將下載的zip包解壓,直接安裝即可。

打開SDK Manager(首次自動彈出),按照默認勾選安裝亦可。 主要安裝工具Platform-tools、build-tools、Android API(選擇最新版本即可),還有擴展插件Google USB Driver,其他根據實際情況自行選擇。如下圖:

基于Python的Appium環境搭建合集_第3張圖片

?

下載安裝時,走的是外網,如果覺得下載速度太慢,可以配置國內鏡像進行加速。

更改鏡像地址Tools -> Options

基于Python的Appium環境搭建合集_第4張圖片

?

            
              大連東軟信息學院鏡像服務器地址:
http:
            
            
              //
            
            
              mirrors.neusoft.edu.cn 端口:80
            
            
              北京化工大學鏡像服務器地址:
IPv4: http:
            
            
              //
            
            
              ubuntu.buct.edu.cn/ 端口:80
            
            
IPv4: http:
            
              //
            
            
              ubuntu.buct.cn/ 端口:80
            
            
IPv6: http:
            
              //
            
            
              ubuntu.buct6.edu.cn/ 端口:80
            
            
              上海GDG鏡像服務器地址:
http:
            
            
              //
            
            
              sdk.gdgshanghai.com 端口:8000
            
            
              中國科學院開源協會鏡像站地址:
IPV4
            
            /IPV6: http:
            
              //
            
            
              mirrors.opencas.cn 端口:80
            
            
IPV4/IPV6: http:
            
              //
            
            
              mirrors.opencas.org 端口:80
            
            
IPV4/IPV6: http:
            
              //
            
            
              mirrors.opencas.ac.cn 端口:80
            
          

下載過程中,可以去喝杯茶,看看網頁,需要一小會喲

3.配置環境變量

喝杯茶的功夫,sdk所需的工具類是下載成功了,接下來就是要配置環境變量了。

            
              環境變量配置

            
            
              1
            
            .ANDROID_HOME:D:\Android\android-
            
              sdk  自己實際安裝路徑

            
            
              2
            
            
              .
            
            Path
            
              已有變量追加值:
              
%ANDROID_HOME%\tools;%ADNROID_HOME%\platform-tools;%ADNROID_HOME%\build-tools\ 28.0 . 3 \; 自己具體版本號

4.驗證

使用adb命令驗證即可,在dos窗口輸入adb,出現如下截圖,說明安裝成功

? 基于Python的Appium環境搭建合集_第5張圖片

?

三、Python安裝

python的安裝方式就略過了,也只是一路下一步即可,無須贅述。

四、Appium

1.什么是Appium

Appium是一個開源、跨平臺的測試框架,可以用來測試原生及混合的移動端應用。Appium支持IOS、Android及FirefoxOS平臺。Appium使用WebDriver的json wire協議,來驅動Apple系統的UIAutomation庫、Android系統的UIAutomator框架。Appium對IOS系統的支持得益于Dan Cuellar’s對于IOS自動化的研究。Appium也集成了Selendroid,來支持老android版本。

Appium支持Selenium WebDriver支持的所有語言,如java、Object-C、JavaScript、Php、Python、Ruby、C#、Clojure,或者Perl語言,更可以使用Selenium WebDriver的Api。Appium支持任何一種測試框架。如果只使用Apple的UIAutomation,我們只能用javascript來編寫測試用例,而且只能用Instruction來運行測試用例。同樣,如果只使用Google的UIAutomation,我們就只能用java來編寫測試用例。Appium實現了真正的跨平臺自動化測試。

2.Appium工作原理

2.1 Android

在Android端,appium基于WebDriver協議,利用Bootstrap.jar,最后通過調?用UiAutomator的命令,實現App的自動化測試。UiAutomator測試框架是Android SDK自帶的App UI自動化測試Java庫。

另外由于UiAutomator對H5的支持有限,appium引入了chromedriver以及safaridriver等來實現基于H5的自動化。

appium 在android端工作流如下:

①client端也就是我們的webdriver測試腳本;

②中間起的是Appium服務,Appium在服務端起了一個Server(端口:4723)。跟selenium Webdriver測試框架類似,Appium?持標準的WebDriver JSONWireProtocol。在這里提供它提供了一套REST的接口,Appium Server接收web driver client標準rest請求,解析請求內容,調?對應的框架響應操作;

③appium server會把請求轉發給中間件Bootstrap.jar ,它是用java寫的,安裝在手機上.Bootstrap監聽4724端口并接收appium 的命令,最終通過調?用UiAutomator的命令來實現;

④Bootstrap將執行的結果返回給appium server;

⑤appium server最后將結果返回給 appium client。

2.2 IOS

在IOS端,appium同樣使?WebDriver的一套協議。與Android端測試框架不同的是,appium ios封裝了apple的 Instruments框架,主要用了Instrument里的UI Automation(Apple的?自動化測試框架),然后在設備中注?入bootstrap.js進?行監聽。

appium 在ios端工作流如下:

①client端依然是我們的webdriver測試腳本;

②中間起的是Appium服務,Appium在服務端起了一個Server(端口:4723)。跟selenium Webdriver測試框架類似,Appium?持標準的WebDriver JSONWireProtocol。在這里提供它提供了一套REST的接口,Appium Server接收web driver client標準rest請求,解析請求內容,調?對應的框架響應操作;

③appium server調用instruments.js 啟動一個socket server,同時分出一個子進程運?instruments.app,將bootstrap.js(一個UIAutomation腳本)注入到device?于和外界進行交互;

④Bootstrap.js將執行的結果返回給appium server;

⑤appium server最后將結果返回給 appium client。

所以我們可以看到android與ios區別在于appium 將請求轉發到bootstrap.js或者bootstrap.jar,然后由bootstrap 驅動UIAutomation和UiAutomator去devices上完成具體的動作。

更多詳細可參見這篇博文:https://www.cnblogs.com/sophia194910/p/7515165.html

3.Appium安裝

Appium下載地址:https://bitbucket.org/appium/appium.app/downloads/

? 基于Python的Appium環境搭建合集_第6張圖片

?

將下載的zip包解壓后安裝,安裝很簡單,按提示操作即可。

配置環境變量

path環境變量:追加環境變量?C:\Program Files (x86)\Appium\node_modules\.bin;? ?具體安裝路徑

驗證

輸入命令appium-doctor查看,出現如下截圖,說明安裝成功

基于Python的Appium環境搭建合集_第7張圖片

?

五、Node.js

配置Appium的環境,必須要有Node.js(Appium就是由Node.js編寫的),所以需要對Node.js進行安裝和配置環境。

下載地址:http://nodejs.cn/download/

下載對應的版本,如下所示

基于Python的Appium環境搭建合集_第8張圖片

?

下載安裝包后,雙擊安裝,具體步驟忽略了,很簡單。

配置環境變量

加path環境變量:C:\Program Files\nodejs\ node安裝路徑

驗證

通過命令node -v查看node版本,出現如下截圖,說明安裝成功

?

六、Appium-python-Client

1.什么是Appium-python-Client

Appium的實用方法都在Client的源碼里,對于driver和webelement實例,均有對應的元素查找方法(webelement查找的是下面的子元素),有些兒專門針對手機的函數,則需要在這個Client安裝后方可使用。

Appium為了實現自己的find查找方式,首先自定義了一個MobileBy類,給這個類對象塞入了它定義的一些擴展屬性,這些屬性的值會通過webdriver協議推送到server端去識別和執行,為了讓這些屬性運用到find方法中,appium很好地繼承和擴展了webdriver.Remote,然后通過調用driver實例的find_element和find_elements兩個核心方法實現元素查找。所以,既然是擴展,appiumdriver實例可以使用seleniumdriver的所有關于元素查找的實例方法。

2.安裝Appium-python-Client

使得appium和python建立連接關系,使用命令:pip install Appium-Python-Client,出現如下截圖,則說明安裝成功。

基于Python的Appium環境搭建合集_第9張圖片

?

七、Pycharm

工具安裝也忽略了,安裝很簡單的。

?

經過如上七個步驟的操作,基于Python的Appium環境搭建就成功了。雖說成功了,但也僅僅是個開端而已,想要做好自動化,還是需要靜下心來,研習一番。今天的環境搭建就介紹到這了,下次帶來genymotion及腳本的分享。有描述錯誤的地方,歡迎批評指正。

?

            
              
                本文僅代表作者觀點,系作者@溫一壺清酒發表。
                
歡迎轉載,但未經作者同意必須保留此段聲明,且在文章頁面明顯位置給出原文連接,否則保留追究法律責任的權利。
文章出處:http://www.cnblogs.com/hong-fithing/

更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 一级黄色录像视频 | 狠狠躁夜夜躁人人爽天天天天 | 日本精品一区二区三区在线 | 久久精品中文字幕久久 | 中文字幕国产专区 | 国产一区二区三区精品久久呦 | 狠狠操操 | 亚洲精品乱码中文字幕无线 | 香蕉狠狠干 | 亚洲图片欧美视频 | 看日本真人一一级特黄毛片 | 一级肉体毛片视频免费看看 | 青青青青手机在线视频观看国产 | 国产精品久久久久久久久久免费 | 久久亚洲一级α片 | 久草视频在线播放 | 欧美精品一区二区三区视频 | 一区二区三区亚洲 | 91在线欧美| 久久国产经典视频 | 欧美日韩另类综合 | 伊人久久99亚洲精品久久频 | 久久黄视频 | 亚洲男人天堂久久 | 天天操天天摸天天爽 | 欧美日韩生活片 | 久草亚洲视频 | 91视频一区二区 | 亚洲欧美日韩精品久久亚洲区 | 特级毛片免费视频播放 | 欧美一级一极性活片免费观看 | 婷婷在线免费观看 | 成人精品一区二区三区校园激情 | 精品亚洲大全 | 久久精品国产99久久99久久久 | 日本一级片网站 | 亚洲精品久久成人福利 | 在线欧美视频免费观看国产 | 国产亚洲第一精品社区麻豆 | 欧美 日本| 亚洲精品欧美精品 |