亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于Robot Framework和Appium的APP自動化測試框架

        2017-12-29 13:16:32李全東華大學(xué)信息科學(xué)與技術(shù)學(xué)院
        數(shù)碼世界 2017年5期
        關(guān)鍵詞:測試用例用例腳本

        李全 東華大學(xué)信息科學(xué)與技術(shù)學(xué)院

        基于Robot Framework和Appium的APP自動化測試框架

        李全 東華大學(xué)信息科學(xué)與技術(shù)學(xué)院

        基于Robot Framework和Appium設(shè)計出一種app自動化測試框架,該框架實現(xiàn)了對多個安卓手機設(shè)備進行并發(fā)功能測試。Robot Framework框架負(fù)責(zé)編寫測試用例,編寫shell腳本為每個手機啟動Appium服務(wù),Appium負(fù)責(zé)啟動服務(wù)連接手機,發(fā)送用例編寫的指令到手機同時接收執(zhí)行結(jié)果。同時,以某app為例,驗證本框架的適用性。

        robot Framework Appium APP自動化測試

        隨著移動互聯(lián)的迅速發(fā)展,手機越來越離不開人們的生活,日益豐富的手機APP幫助人們實現(xiàn)衣食住行的各個方面。各個公司都在大力發(fā)展無線端業(yè)務(wù),APP也是每個公司必備的產(chǎn)品。安卓手機是人們常用的,市場占有率最高,品牌最豐富的手機。所以公司開發(fā)一款A(yù)PP勢必要對APP進行兼容性測試,傳統(tǒng)的手工測試在測試多款手機時就非常的枯燥和浪費人力,這也是目前階段必須解決的問題。

        根據(jù)當(dāng)前的測試現(xiàn)狀,本文以某app為例,設(shè)計出一種基于Robot Framework和Appium的APP自動化測試框架,并設(shè)計實現(xiàn)對手機設(shè)備進行并發(fā)測試,減少人力成本和重復(fù)性工作。

        1 Appium原理介紹

        Appium是開源的,支持Android和IOS,適用于Native App、Hybird App、Web App等APP類型,不需要重新編譯APP,擴展了WebDriver,封裝了Android和IOS自動化方法的框架。它支持很多語言來編寫測試腳本,Java、Javascript、PHP、Python、C#、Ruby等主流語言。

        它是Client/Server架構(gòu),運行的時候Server端會監(jiān)聽Client端發(fā)過來的命令,翻譯這些命令發(fā)送給移動設(shè)備或模擬器,然后移動設(shè)備或模擬器做出響應(yīng)的反應(yīng)。正是因為這種架構(gòu),所以Client可以使用Appium client libraries多種語言的測試腳本,而且Server端完全可以部署在服務(wù)器上,甚至云服務(wù)器。每個Client連接到Server以后都會有一個Session ID,而且Client發(fā)送命令到Server端都需要這個Session ID,因為這個seesion id代表了你所打開的瀏覽器或者是移動設(shè)備的模擬器。所以你甚至可以打開N個Session,同時測試不同的設(shè)備或模擬器。

        2 Appium Grid并發(fā)設(shè)計與實現(xiàn)

        Appium是擴展Webdriver,所以也可以使用Selenium Grid來實現(xiàn)并發(fā)測試。

        每個設(shè)備啟動相應(yīng)的Appium服務(wù),所以在服務(wù)器識別到設(shè)備時會給該啟動相應(yīng)的Appium服務(wù),注冊到hub上,這樣在執(zhí)行用例時,hub會隨機分配給所有空閑設(shè)備測試用例,并會自動回收返回結(jié)果,驗證測試用例步驟是否通過。具體實現(xiàn)步驟如下:

        ①下載selenium-server-standalone-xxx.jar的jar包,然后命令行執(zhí)行相應(yīng)的Java命令啟動hub server,如:java -jar selenium-server-standalone-3.0.1.jar -port 4444 -role hu–timeout 120。

        ②每個設(shè)備編寫相應(yīng)的JSON格式的配置文件,其中deviceName可以通過adb devices命令查看,每個設(shè)備的port不能相同。

        ③執(zhí)行Appium的命令啟動設(shè)備client server,如appium -p 4725 -U Device1UDID --nodeconfig path oXXX1.json,其中-p后面為你啟動appium服務(wù)的端口號 -U后面為你設(shè)備的UDID, --nodeconfig 后面為第三步編輯的json文件的路徑。這樣client就注冊到hub上。

        ④瀏覽器輸入http://localhost:4444/grid/console就能看到你連接了多少個設(shè)備。這樣就完成了為設(shè)備啟動selenium Grid,注冊設(shè)備client server到hub上,編寫用例時remote_url只需要填hub的地址即可。

        為了不每次手動輸入這些命令,本設(shè)計采用編寫shell腳本的形式啟動以上所有的服務(wù)。

        3 APP自動化并發(fā)測試設(shè)計與實現(xiàn)

        本文基于Robot Framework對APP進行自動化并發(fā)測試的實現(xiàn)。

        3.1 自動化腳本的編寫

        通過Robot Framework Ride引入AppiumLibrary關(guān)鍵字庫即可編寫測試腳本,該庫繼承了Appium所有底層API編寫的關(guān)鍵字,在腳本執(zhí)行時可以被Appium sever所識別并執(zhí)行相應(yīng)指令。在打開app關(guān)鍵字open application中的remote_url參數(shù)中需填寫第二章所述的hub地址。

        Robot Framework自帶的pybot命令運行測試代碼不能起到并行執(zhí)行的結(jié)果,所以要引入pabot。pabot為Robot Framwork擴展執(zhí)行方式,實現(xiàn)方式為安裝pabot,運行pabot命令,如:pabot--processes 10 --outputdir path/to/results path/ to/parallelSuits,其中--processes 10,即起10個線程運行,所以processes的值<=我們的設(shè)備數(shù),--outputdir path/to/results,指定我們運行結(jié)果存放的路徑,在該路徑下回生成相應(yīng)的測試結(jié)果,path/to/parallelSuits,指定運行suites的路徑,對于兼容性測試,有幾個設(shè)備,復(fù)制幾個測試腳本文件即可。

        4 結(jié)語

        本文基于Robot Framework和Appium提出了一種App自動化測試框架,并以某app為例,進行了框架實現(xiàn)和適用性驗證。

        框架以Robot Framework為腳本編寫和執(zhí)行層,引入AppiumLibrary進行腳本開發(fā),同時引入Appium和selenium Grid實現(xiàn)了對手機設(shè)備的統(tǒng)一調(diào)度,引入Robot Framework擴展執(zhí)行方式pabot作為并發(fā)執(zhí)行命令,完成了對多手機設(shè)備的并發(fā)執(zhí)行,減少了重復(fù)性工作和人力成本的浪費,節(jié)約了軟件開發(fā)和測試周期。

        在未來的研究中,可以將并發(fā)測試植入到軟件開發(fā)全周期中,在app打包完成后自動觸發(fā)相應(yīng)的測試腳本,執(zhí)行測試,測試人員只要關(guān)注新的功能點的測試即可。

        猜你喜歡
        測試用例用例腳本
        酒駕
        UML用例模型中依賴關(guān)系的比較與分析
        安奇奇與小cool 龍(第二回)
        基于SmartUnit的安全通信系統(tǒng)單元測試用例自動生成
        聯(lián)鎖軟件詳細(xì)設(shè)計的測試需求分析和用例編寫
        從出土文獻用例看王氏父子校讀古書的得失
        數(shù)據(jù)庫系統(tǒng)shell腳本應(yīng)用
        電子測試(2018年14期)2018-09-26 06:04:24
        基于混合遺傳算法的回歸測試用例集最小化研究
        快樂假期
        基于依賴結(jié)構(gòu)的測試用例優(yōu)先級技術(shù)
        欧美中文字幕在线看| 一本色道无码不卡在线观看| 亚洲人精品午夜射精日韩| 人妻激情另类乱人伦人妻| 婷婷开心深爱五月天播播| 无码精品国产午夜| 国语对白自拍视频在线播放| 成人日韩精品人妻久久一区| 国产狂喷潮在线观看| 国产精品卡一卡二卡三| 青草青草久热精品视频国产4| 亚洲激情一区二区三区视频| 插入日本少妇一区二区三区 | 成人国产精品免费网站| 国产在线视频一区二区三区| av熟妇一区二区三区| 自愉自愉产区二十四区| 久久日本三级韩国三级| 亚洲图片第二页| 高清国产亚洲精品自在久久| 国产精品婷婷久久爽一下| 日韩亚洲欧美中文在线| 国产福利片无码区在线观看 | 老熟女毛茸茸浓毛| 在线观看国产精品自拍| 中文字幕女同人妖熟女| 国产成人小视频| 黄色视频在线免费观看| 娇妻粗大高潮白浆| 亚洲一区二区蜜桃视频| 亚洲av永久无码精品古装片 | 欧美成人精品三级在线观看| 国产精品日本一区二区三区| 日本人妻免费一区二区三区| 国产精品久久久久aaaa| 美女胸又www又黄的网站| 黑人一区二区三区高清视频 | 日韩精品无码一区二区三区四区| 亚洲综合区图片小说区| 成年男人裸j照无遮挡无码| 扒开女性毛茸茸的视频|