国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統 > iOS > 正文

Java + testng +maven + appium for IOS 自動化測試

2019-11-09 17:46:18
字體:
來源:轉載
供稿:網友

1 背景介紹

為了在自動化測試中節省時間節省真機的成本,而且更高效的覆蓋所有的IOS版本,避免兼容性問題和實現全面自動化測試,我采用saucelabs(https://saucelabs.com)平臺提供的虛擬設備。使用簡單易書寫的java語言和appium開源框架以及單元測試testng,創建maven工程(為了不在工程中引入jar包),將需要的jar寫入pom .xml 文件中,最后使用jenkins 構建自動運行實現IOS全自動化測試。這樣一來就完全不用人為干預,只需要關注測試結果就好了。

2 環境搭建

2.1 Mac OS X

要進行IOS自動化測試的前提是需要一臺mac設備或者一臺黑蘋果。

2.2 安裝Xcode

在Apple 官網注冊Apple Id,用Apple Id 登錄開發者網站(https://developer.apple.com/download/)下載xcode并安裝即可(如下圖): 這里寫圖片描述

2.3 安裝 Xcode command line tools

Xcode安裝完成后啟動終端,在終端輸入xcode-select –install,在彈出的界面選擇安裝,等待安裝成功: 這里寫圖片描述

2.4 安裝Homebrew

在終端輸入如下命令,等執行完成即可: usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"安裝完成后執行檢查命令安裝是否成功:brew -v

2.5 安裝ideviceinstaller

執行如下命令安裝即可:brew install ideviceinstaller執行如下命令檢查是否安裝成功:ideviceinstaller -h

2.6 安裝 JDK & 配置環境變量

在官網下載jdk 版本,并配置系統環境變量(以jdk 1.8.0_111為例)。

打開jdk的dmg文件,雙擊安裝,安裝完成后打開終端輸入如下命令查看當前使用的java:/usr/libexec/java_home

這里寫圖片描述

終端輸入vi ~/.bash_PRofile 進入編輯模式:export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_111.jdk/Contents/Homeexport PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATHexport CLASS_PATH=$JAVA_HOME/lib:$JAVA_HOME/jre/lib

保存并退出(實際就是vim的命令)

按下鍵盤鍵Esc按下 shift + :輸入 wq

使得環境變量生效執行如下命令:

source ~/.bash_profile查看當前設置的JDK信息,確保環境變量設置成功:java -version

這里寫圖片描述

2.7 安裝 Appium

下載(https://bitbucket.org/appium/appium.app/downloads/)appium dmg 文件(如下圖),打開Appium的dmg包,復制Appium.app到applications文件夾中,即完成安裝。 這里寫圖片描述

2.8 安裝 Eclipse & 給Eclipse 安裝testng插件

在官網下載Eclipse 安裝即可。安裝 testng: 打開eclipse進入界面后,點擊菜單中的”Help”,彈出下拉菜單中進行選擇為install new software的選項。進入到了install的選項界面中,點擊菜單中的add的選項, 在location 一欄里輸入插件地址(http://beust.com/eclipse/)點擊下一步下一步即可完成安裝。

2.9 安裝 maven

官網下載(https://maven.apache.org/download.cgi)maven 包。打開終端(Terminal),輸入以下命令,設置Maven classpath: $ vi ~/.bash_profile添加下列兩行代碼,之后保存并退出Vi: export M2_HOME=/Users/robbie/apache-maven-3.3.9 export PATH=$PATH:$M2_HOME/bin輸入命令以使bash_profile生效: source ~/.bash_profile輸入mvn -v查看Maven是否安裝成功。如有異常,重新編輯bash_profile文件,加入export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_111.jdk/Contents/Home后,并重新運行$ source ~/.bash_profile即可。

2.10 檢查以上環境是否設置成功

打開appium的doctor 查看如下圖: 這里寫圖片描述

得到如下結果說明環境搭建成功: 這里寫圖片描述

3 使用 appium 的inspector 獲取界面元素書寫testCase

啟動Appium并打開iOS的設置頁面,使用模擬器不要勾選UDID。注意App Path路徑的正確性以及設備的系統版本號的設置。 這里寫圖片描述

設置完成后,點擊Launch按鈕,以啟動Appium Server。 這里寫圖片描述

啟動Inspector: 啟動AppiumServer后,(如果真機要連接好真機,并確保Appium的參數設置正確(與設備保持一致)),本文采用的為模擬器,點擊Inspector按鈕啟動Inspector。此時Appium Server會自動安裝app并啟動被測App并通過instruments抓取頁面元素展示到Inspector頁面,就可以開始獲得頁面元素信息開始自動化腳本的編寫工作了 。 這里寫圖片描述 這里寫圖片描述

4 寫好testCase 如何在模擬器上運行

選擇在本地運行: 點擊Launch按鈕,以啟動Appium Server; 選中testcase文件右擊–》 Run As –》 TestNG test (如下圖1),由于本文創建的是maven 工程也可以執行選中pom.xml ->Run As–>Maven test (如下圖2); 圖片1: 這里寫圖片描述 圖片2: 這里寫圖片描述

選擇在saucelabs 平臺運行,它可以提供各個版本的模擬器,多設備并行運行: 只需要把注冊的賬號寫入testCase中如下:

desiredCapabilites.SetCapability("accessKey", "e04e33ef-8e226-4b36-8865-e89ad2229721"); desiredCapabilites.SetCapability("username", "linda123456");

選中pom.xml ->Run As–>Maven test 運行,或者在jenkins 中建立maven 項目,配置pom.xml路徑、觸發時間、testng 作為測試結果報告,出錯發郵件等。這時就可以實現IOS全自動化測試。你只需要關注測試結果就好了,當然你可以去saucelabs 查看 測試過程中錄制的視頻,結合測試結果報告,很快找到testCase fail的原因,用于修改testCase或提bug。

PS

//查看devices id命令:instruments -s devices//命令行安裝*.app//啟動模擬器:xcrun instruments -w 'iPhone 6 Plus'//在已經啟動的模擬器中安裝.app:xcrun simctl install booted /User/liangwang/DownLoad/Spotlight.app(要提供.app的安裝路徑)//卸載*.app的命令:xcrun simctl uninstall booted com.quest.Spotlight (應用的包名)//查看應用程序的包名:用itools,終端命令行或者其他工具打開,然后在相應的程序包中找info.plist,打開后ctrl+f搜索:CFBundleIdentifier,在CFBundleIdentifier下面就是包名。//mac截圖:command+shift+4 鼠標拖動就可以選擇要的圖command+shift+3 截取全屏//把.app打包成.ipa文件:打開iTunes,然后把.app拖進去,選擇在Finder中查看,該文件就變成了.ipa文件啦

5 總結

通過上面的實踐會發現,IOS 使用 Java + testng +maven + appium 進行自動化測試和 Android 十分相似,唯一區別就是 IOS 必須使用 mac 進行操作,需要具備一定的 mac 使用基礎;其他在自動化測試腳本編寫方面和 Android 是完全一樣的,具體可以參見我以前寫的《Saucelabs+Java+TestNG+Appium+Maven+Git+Jenkins+ReportNG for Android 自動化測試》。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 从江县| 腾冲县| 翼城县| 盘山县| 揭西县| 双柏县| 新民市| 日照市| 竹溪县| 依兰县| 清水县| 墨脱县| 安康市| 沅陵县| 博兴县| 石河子市| 交城县| 甘谷县| 金坛市| 广丰县| 新龙县| 安远县| 吉首市| 灌南县| 阳春市| 贵德县| 盱眙县| 九龙城区| 台州市| 娱乐| 湖南省| 盐山县| 文昌市| 涟水县| 施秉县| 乌海市| 青铜峡市| 辽宁省| 吉林省| 乐亭县| 镶黄旗|