自动化测试---移动端自动化测试项目搭建(Appium+IDEA)
自動(dòng)化測試---移動(dòng)端自動(dòng)化測試項(xiàng)目搭建(Appium+IDEA)
- 模擬器+Appium操作
- IDEA項(xiàng)目搭建
模擬器+Appium操作
首先打開黑窗口
輸入命令
注:具體命令可看上一篇博客
第一步從機(jī)器人打開然后點(diǎn)擊choose把想測試的應(yīng)用導(dǎo)進(jìn)去(選擇路徑)
注:但是不推薦使用這種方式 因?yàn)榭赡軙?huì)出現(xiàn)一些問題
注2:我們要一直把a(bǔ)ppium框架開啟 不能關(guān)閉可以小化但是不要叉掉
注3:上圖的aapt dump badging d:\android\yanxuan-aos_out_109.apk里面的\yanxuan-aos_out_109.apk是我這次要測的一個(gè)嚴(yán)選APP如果你們要測試其他的APP改一下路徑就好了
1、啟動(dòng)idea
新建工程,file–new–project
選擇maven框架
2、projiect sdk 選擇java jdk的安裝;點(diǎn)擊new從安裝路徑中選擇; 例如:我的是安裝路徑為C:\Program
Files\Java\jre1.8.0_171
3、groupid 例如:com.zking 項(xiàng)目包名 artifactid 例如:appiumtest01 工程名字
version 使用默認(rèn)的
確定后在當(dāng)前窗口顯示,還是新開窗口;開啟后右下角會(huì)顯示一個(gè)連接,點(diǎn)擊第二連接;導(dǎo)入依賴的包;
4、在mpom.xml中添加appium java_client jar包
<dependencies><dependency><groupId>io.appium</groupId><artifactId>java-client</artifactId><version>4.1.2</version></dependency> </dependencies>添加完成后在external libaries檢查一下是否添加成功 作用:測試頁面元素的操作,接口及方法都是從該jar包中獲取的
5、添加testing框架 在中添加testng框架
org.testng
testng
6.9.10
添加完成后在external libaries檢查一下是否添加成功 作用:用來做測試的優(yōu)先級(jí),調(diào)試、驗(yàn)證等需要用該框架
6、了解SDK–tool ddms:啟動(dòng)android調(diào)試工具 hierarchyviewer:元素識(shí)別工具
uiautomatorviewer:元素識(shí)別工具 monkeyrunner:ui自動(dòng)化測試工具 mksdcard:模擬器SD映像的創(chuàng)建工具
emulator: SDK模擬器主程序 traceview:android平臺(tái)調(diào)試工具
7、使用元素定位工具uiautomator
8、什么是package package 包的意思。安卓系統(tǒng)的程序是已a(bǔ)pk作為擴(kuò)展名的,.apk就是 android
package的簡寫,package也就是這個(gè)app的唯一標(biāo)識(shí),其實(shí)這里的package和java程序中的包一個(gè)意思。一般去測試某個(gè)程序,都是從這個(gè)程序的package入手的,測試初始的代碼都會(huì)指定app的package
比如:capabilities.setCapability(“appPackage”,“com.android.androidui”)
這就告訴appium要測試的app是什么
什么是Activity? Activity
活動(dòng);活動(dòng)是最容易吸引到用戶的地方了,它是一種可以包含用戶界面的組件,主要用于和用戶進(jìn)行交互。一個(gè)應(yīng)用程序中可以包含零個(gè)或多個(gè)活動(dòng)。通俗講就是用戶看到的界面就是Activity。
標(biāo)識(shí):com.android.androidui.Activity,測試初始化代碼是這樣寫capabilities.setCapability(“appActivity”,“com.android.androidui.MainActivity”);
四種布局 布局–布局–控件 布局–控件
LinarLayout:會(huì)線性布局,一種非常常用的布局;這個(gè)布局會(huì)將它所包含的控件在線性方向上依次排列。
RelativeLayout:相對(duì)布局,也是比較常見的布局,相比較LinarLayout顯得更加隨意一些,它可以通過相對(duì)定位的方式讓控件出現(xiàn)在布局的任務(wù)位置。
FrameLayout 相比較前面兩種這種比較簡單,應(yīng)用常見少,沒有任何定位方式,所有的控件都會(huì)擺放在布局的左上角。 ListView
是android最常見的控件之一,界面的收縮、展開
控件 TextView --文本域 Button—按鈕
EditText–是程序用于和用戶進(jìn)行交互的另一種重要控件,它允許用戶在控件里輸入和編輯內(nèi)容,并可以在程序中對(duì)這些內(nèi)容進(jìn)行處理。比如登錄頁面:用戶名/密碼輸入框
Alert Toast Bar Webview
9、啟動(dòng)appium
程序設(shè)置: 設(shè)置: appium的端口使用4723 建議不去修改,將選項(xiàng)的√去掉 開發(fā)者設(shè)置 幫助
10、編寫用例 用腳本編寫連接appium與模擬器連接 用腳本檢查服務(wù)是否連接: adb devices 三種方式查看包名、activity
1、通過查看日志 獲取包名及activity:adb logcat
2、直接使用在當(dāng)前窗口查看包名及activity adb shell dumpsys window |findstr
mCurrentFocus 3、使用aapt 首先進(jìn)入到本機(jī)存放的apk 如我的存放在d盤 android文件夾下 在cmd中進(jìn)入D盤
使用命令 d: 在進(jìn)入android文件夾 使用命令 cd android 然后再執(zhí)行命令 aapt dump badging d:\android\yanxuan-aos_out_109.apk
IDEA項(xiàng)目搭建
首先把你的JDK導(dǎo)進(jìn)來
我的是在下圖的路徑里面
導(dǎo)進(jìn)去之后就什么都不用搞直接點(diǎn)擊下一步
寫好包名和項(xiàng)目名之后點(diǎn)擊下一步 下一步它會(huì)幫我們把我們的項(xiàng)目名和路徑自動(dòng)填好
然后點(diǎn)擊finish完成
然后在pom文件點(diǎn)擊我框出來的自動(dòng)加載常用的包
再在pom文件里面加下圖代碼進(jìn)行導(dǎo)包 沒報(bào)錯(cuò)的話就看看左邊我標(biāo)起來的地方有沒有把包導(dǎo)進(jìn)去
然后開始新建項(xiàng)目
建好了之后開始寫測試代碼
注:上面寫代碼的時(shí)候有一個(gè)設(shè)置被測程序的活動(dòng)那一行代碼 它后面的value是可以改的 你測什么軟件就可以寫什么軟件的地址至于怎么看可以在黑窗口查看如下圖
然后我們選擇就開始寫測試腳本
打開我們下載的SDK文件夾
然后等一下下會(huì)進(jìn)入下面的頁面 然后點(diǎn)擊我標(biāo)出來的
會(huì)出現(xiàn)下面的畫面 和我們打開的模擬器是一個(gè)畫面
然后我重新打開了嚴(yán)選的APP選擇我們測試APP里面的分類
把我標(biāo)出來的那個(gè)ID復(fù)制一下然后在idea里面寫代碼
然后執(zhí)行 只要執(zhí)行通過就可以了
**注:一定要把a(bǔ)ppium開啟哈下圖框出來的那里 不然會(huì)報(bào)錯(cuò) **
總結(jié)
以上是生活随笔為你收集整理的自动化测试---移动端自动化测试项目搭建(Appium+IDEA)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: k2677场效应管参数引脚_常用场效应管
- 下一篇: Microsoft Media Foun