您好,登錄后才能下訂單哦!
本篇文章為大家展示了怎么在JAVA中使用Maven與TestNG框架實(shí)現(xiàn)一個(gè)Appium測(cè)試功能,內(nèi)容簡明扼要并且容易理解,絕對(duì)能使你眼前一亮,通過這篇文章的詳細(xì)介紹希望你能有所收獲。
一、準(zhǔn)備
安裝SDK,配置環(huán)境變量
鏈接: https://pan.baidu.com/s/1g2QaWjdfg6Txa0gZf9kk3A
提取碼: 8aaz
windows配置環(huán)境SDK變量
我的電腦右鍵->屬性
點(diǎn)擊高級(jí)系統(tǒng)設(shè)置
點(diǎn)擊環(huán)境變量
點(diǎn)擊新建按鈕,變量名輸入ANDROID_HOME,變量值輸入解壓后的SDK目錄
path變量加入圖中兩個(gè)路徑
打開CMD命令,輸入adb后回車 展示如下內(nèi)容即可
在cmd中輸入android并回車,會(huì)自動(dòng)打開android SDK管理器
下載Appium服務(wù),并啟動(dòng)
鏈接: https://pan.baidu.com/s/1Tf_33ZhbMwBmn0HKL-Z8UQ
提取碼: s5qa
雙擊桌面下載好的Appium.exe程序,啟動(dòng)Appium服務(wù)
出現(xiàn)上圖后說明已啟動(dòng)成功
安裝JDK
官方下載
安裝過程比較簡單,這里就不做詳細(xì)的贅述了。
之后設(shè)置環(huán)境變量JAVA_HOME
編輯Path,添加bin目錄
驗(yàn)證jdk安裝,打開cmd輸入java,回車。出現(xiàn)下面提示后即配置成功
設(shè)置Capability
// 1.添加配置,創(chuàng)建DesiredCapabilities對(duì)象 DesiredCapabilities des = new DesiredCapabilities(); // 指定測(cè)試設(shè)備的名稱 des.setCapability("deviceName", Utils.getParam("deviceName")); // 添加操作系統(tǒng)配置 des.setCapability("platformName", Utils.getParam("platformName")); // 添加操作系統(tǒng)版本設(shè)置 des.setCapability("platformVersion", OpenApp.getVersion()); // 連接的物理設(shè)備的唯一設(shè)備標(biāo)識(shí) des.setCapability("udid", OpenApp.getDeviceName()); // 不需要再次安裝 des.setCapability("noReset", Boolean.valueOf(Utils.getParam("noReset"))); // 設(shè)置apk的安裝路徑 des.setCapability("app", apkDir.getAbsolutePath()); //指定想要測(cè)試應(yīng)用的包名 des.setCapability("appPackage", Utils.getParam("appPackage")); // 指定想要測(cè)試應(yīng)用的入口 des.setCapability("appActivity", Utils.getParam("appActivity")); // 支持中文輸入 des.setCapability("unicodeKeyboard", Boolean.valueOf(Utils.getParam("unicodeKeyboard"))); des.setCapability("resetKeyboard", Boolean.valueOf(Utils.getParam("resetKeyboard"))); // 沒有新命令時(shí)的超時(shí)時(shí)間設(shè)置 des.setCapability("newCommandTimeout", Utils.getParam("newCommandTimeout")); // 跳過檢查和對(duì)應(yīng)用進(jìn)行 debug 簽名的步驟 des.setCapability("nosign", Utils.getParam("nosign")); //自動(dòng)點(diǎn)擊彈窗如:是否允許讀取文件權(quán)限 des.setCapability("autoGrantPermissions",Boolean.valueOf(Utils.getParam("autoGrantPermissions"))); //安卓版本較新,使用uiautomator2 // des.setCapability("automationName", Utils.getParam("automationName"));
指定appium通訊的地址,將相對(duì)應(yīng)的配置傳入到驅(qū)動(dòng)運(yùn)行testNG.xml文件,執(zhí)行用例(代碼會(huì)先檢查手機(jī)有沒有連接,沒有連接手機(jī)不運(yùn)行,手機(jī)端有沒有安裝要測(cè)試的程序,沒有的話先安裝,安裝完成后啟動(dòng)手機(jī)app程序,再執(zhí)行用例),執(zhí)行完成后會(huì)顯示執(zhí)行結(jié)果,也可以設(shè)置失敗截屏,方便我們排查和分析具體失敗原因
看失敗截圖,很顯然現(xiàn)在失敗的原因是因?yàn)榫W(wǎng)絡(luò)原因,ui沒有加載完成,元素未找到
代碼中拋異常的地方也是如此
上述內(nèi)容就是怎么在JAVA中使用Maven與TestNG框架實(shí)現(xiàn)一個(gè)Appium測(cè)試功能,你們學(xué)到知識(shí)或技能了嗎?如果還想學(xué)到更多技能或者豐富自己的知識(shí)儲(chǔ)備,歡迎關(guān)注億速云行業(yè)資訊頻道。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。