什么是App自動化?為什么要做App自動化? App自動化是指給 Android或iOS上的軟件應(yīng)用程序做的自動化測試。 手工測試和自動化測試的對比如下: 手工測試優(yōu)勢:不可替代、發(fā)現(xiàn)更多bug、包含了人...
什么是App自動化?為什么要做App自動化?
App自動化是指給 Android或iOS上的軟件應(yīng)用程序做的自動化測試。
手工測試和自動化測試的對比如下:
手工測試優(yōu)勢:不可替代、發(fā)現(xiàn)更多bug、包含了人的想象力與理解力。
注意,不是所有功能都需要自動化。
自動化測試優(yōu)勢:可重復(fù)、效率高,增加軟件信任度。
執(zhí)行自動化測試可以讓測試同事有更多的精力來關(guān)注復(fù)雜場景,做更多更深層次的測試。
風(fēng)險分析
自動化測試的主要風(fēng)險分析如下:
(1)測試用例覆蓋率(覆蓋率決定測試效率,選擇合適用例,應(yīng)約占功能用例集的20%~50%)
(2)測試結(jié)果準(zhǔn)確度(準(zhǔn)確度決定了測試有效性,應(yīng)盡可能減少誤報)。
(3)自動化代碼維護(維護決定了成本,數(shù)據(jù)關(guān)鍵字驅(qū)動自動化框架,代碼應(yīng)盡可能優(yōu)化和少改動)。
(4)版本開發(fā)和測試時間進度(當(dāng)項目需求和功能較為穩(wěn)定時,建議用自動化)。
(5)開發(fā)對控件元素增修改的程度(需開發(fā)人員盡可能地用name元素,并且和UI設(shè)計一致,修改變動程度不大,測試人員可根據(jù)提供的元素提前介入,開發(fā)自動化腳本)。
App源碼權(quán)限控制,iOS上測試需要源碼。實際測試只需SVN或者git下載權(quán)限,而不需要上傳權(quán)限。防止改動SVN或者git 上的源碼。
技術(shù)框架
1、自動化學(xué)習(xí)過程
自動化測試環(huán)境的部署–>自動化測試腳本開發(fā)能力—>自動化測試框架研發(fā)—>手機自動化持續(xù)集成
2、andorid 系統(tǒng)架構(gòu)圖
3、手機自動化測試環(huán)境
安裝Appium–>安裝手機模擬器–>安裝selenium和appium的客戶端–>安裝被測試app
4、Appium 軟件架構(gòu)
5、常用的定位技術(shù)和工具
6、自動化測試腳本技術(shù)
7、技術(shù)框架結(jié)構(gòu)圖
APP自動化測試流程
1、環(huán)境的安裝
1.1 環(huán)境的準(zhǔn)備
1:jdk1.6以上
2:python2.7以上
3: android-sdk
4:Appium desktop 安裝
1.2 jdk 安裝
1:下載JDK后傻瓜式安裝,注意:不要有中文路徑和空格
2:配置環(huán)境變量:
右擊“我的電腦”–>”屬性”–>”高級系統(tǒng)設(shè)置”–>”高級”–>”環(huán)境變量”
1)在系統(tǒng)變量里新建”JAVA_HOME”變量,變量值為:C:\Program Files\Java\jdk1.8.0_60(根據(jù)自己的jdk的安裝路徑填寫)
2)在系統(tǒng)變量里新建”classpath”變量,變量值為:.;%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar (注意最前面有一點)
3)找到path變量(已存在不用新建)添加變量值:%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin
1.3 python 安裝
1:傻瓜式安裝,
2:配置環(huán)境變量:電腦屬性系統(tǒng)變量添加python根目錄
1.4 安裝Android的測試開發(fā)環(huán)境
1:Android-SDK的安裝:SDK manager.exe 雙擊打開下載
2:android-sdk環(huán)境變量的配置
具體操作步驟:
新建ANDROID_HOME路徑為C:\Program Files (x86)\Android\android-sdk\
在Path 變量中加入路徑%ANDROID_HOME%\platform-tools 和 %ANDROID_HOME%\tools
檢查adb 環(huán)境變量連接手機如果是真機,手機插上USB連接電腦,打開開發(fā)者模式,cmd輸入adb devices
如果是模擬器,需要輸入adb connect 127.0.0.1:62001或者52001連接,然后再輸入adb devices
Appium desktop 安裝
下載地址:https://github.com/appium/appium-desktop/releases/tag/v1.3.1
傻瓜式安裝 注意:一定要選擇所有用戶權(quán)限要不然用不了UiAutomator2
2、 API腳本
2.1 如何獲取APP啟動的AppPackage和AppActivity
1:通過appt獲取切換到aapt所在的目錄,執(zhí)行aapt dump(aapt是sdk自帶的一個工具,在sdk\builds-tools\目錄下)使用命令aapt dump badging “D:\ jinritoutiao_7500.apk”運行后的結(jié)果中以下兩行分別是應(yīng)用包名package和入口activity名稱
package: name=’ com.ss.android.article.news’
launchable-activity: name=‘com.ss.android.article.news.activity.LaunchActivity’
2: 通過 adb shell am start
com.ss.android.article.news/com.ss.android.article.news.activity.MainActivity來判斷啟動的app 是否正確
2.2 啟動appium
2.3:寫腳本
1.platformName:這里是 android 的 apk
2.deviceName:手機設(shè)備名稱,通過 adb devices 查看
3.platformVersion:android 系統(tǒng)的版本號
4.appPackage:apk 包名
5.appActivity:apk 的 launcherActivity
2.4生成測試報告