一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

Android 手機自動化測試工具有哪幾種

lhl545545 ? 來源:電子發(fā)燒友網 ? 2018-02-06 15:35 ? 次閱讀

Android 手機自動化測試工具有哪幾種

1、Monkey是Android SDK自帶的測試工具,在測試過程中會向系統(tǒng)發(fā)送偽隨機的用戶事件流,如按鍵輸入、觸摸屏輸入、手勢輸入等),實現對正在開發(fā)的應用程序進行壓力測試,也有日志輸出。實際上該工具只能做程序做一些壓力測試,由于測試事件和數據都是隨機的,不能自定義,所以有很大的局限性。

2、MonkeyRunner也是Android SDK提供的測試工具。嚴格意義上來說MonkeyRunner其實是一個Api工具包,比Monkey強大,可以編寫測試腳本來自定義數據、事件。缺點是腳本用Python來寫,對測試人員來說要求較高,有比較大的學習成本。

3、Instrumentation是早期Google提供的Android自動化測試工具類,雖然在那時候JUnit也可以對Android進行測試,但是Instrumentation允許你對應用程序做更為復雜的測試,甚至是框架層面的。通過Instrumentation你可以模擬按鍵按下、抬起、屏幕點擊、滾動等事件。Instrumentation是通過將主程序和測試程序運行在同一個進程來實現這些功能,你可以把Instrumentation看成一個類似Activity或者Service并且不帶界面的組件,在程序運行期間監(jiān)控你的主程序。缺點是對測試人員來說編寫代碼能力要求較高,需要對Android相關知識有一定了解,還需要配置AndroidManifest.xml文件,不能跨多個App。

4、UiAutomator也是Android提供的自動化測試框架,基本上支持所有的Android事件操作,對比Instrumentation它不需要測試人員了解代碼實現細節(jié)(可以用UiAutomatorviewer抓去App頁面上的控件屬性而不看源碼)?;?a href="http://www.www27dydycom.cn/v/tag/852/" target="_blank">Java,測試代碼結構簡單、編寫容易、學習成本,一次編譯,所有設備或模擬器都能運行測試,能跨App(比如:很多App有選擇相冊、打開相機拍照,這就是跨App測試)。缺點是只支持SDK 16(Android 4.1)及以上,不支持Hybird App、WebApp。

5、Espresso是Google的開源自動化測試框架。相對于Robotium和UIAutomator,它的特點是規(guī)模更小、更簡潔,API更加精確,編寫測試代碼簡單,容易快速上手。因為是基于Instrumentation的,所以不能跨App。配合Android Studio來編寫測試的簡單例子

6、Selendroid:也是基于Instrumentation的測試框架,可以測試Native App、Hybird App、Web App,但是網上資料較少,社區(qū)活躍度也不大。

7、Robotium也是基于Instrumentation的測試框架,目前國內外用的比較多,資料比較多,社區(qū)也比較活躍。缺點是對測試人員來說要有一定的Java基礎,了解Android基本組件,不能跨App。

8、Athrun是淘寶出的一個移動測試框架/平臺,同時支持iOS和Android。Android部分也是基于Instrumentation,在Android原有的ActivityInstrumentationTestCase2類基礎上進行了擴展,提供一整套面向對象的API。這里有詳細介紹。

9、Appium是最近比較熱門的框架,社區(qū)也很活躍。這個框架應該是是功能最強大的,

它的優(yōu)點:

開源;

支持Native App、Hybird App、Web App;

支持Android、iOS、Firefox OS;

Server也是跨平臺的,你可以使用Mac OS X、Windows或者Linux

它的哲理是:

用Appium自動化測試不需要重新編譯App;

支持很多語言來編寫測試腳本,Java、Javascript、PHP、Python、C#、Ruby等主流語言;

不需要為了自動化測試來重造輪子,因為擴展了WebDriver。(WebDriver是測試WebApps的一種簡單、快速的自動化測試框架,所以有Web自動化測試經驗的測試人員可以直接上手);

移動端自動化測試應該是開源的;

它的設計理念:

Client/Server架構,運行的時候Server端會監(jiān)聽Client端發(fā)過來的命令,翻譯這些命令發(fā)送給移動設備或模擬器,然后移動設備或模擬器做出響應的反應。正是因為這種架構,所以Client可以使用Appium client libraries多種語言的測試腳本,而且Server端完全可以部署在服務器上,甚至云服務器。

Session,每個Client連接到Server以后都會有一個Session ID,而且Client發(fā)送命令到Server端都需要這個Session ID,因為這個seesion id代表了你所打開的瀏覽器或者是移動設備的模擬器。所以你甚至可以打開N個Session,同時測試不同的設備或模擬器。

Desired Capabilities,其實就是一個鍵值對,設置一些測試的相關信息來告訴Server端,我們需要測試iOS、還是Android,或者換是WebApp等信息。

Appium Server是Node.js寫的,所以可以直接用NPM來進行安裝。

Appium Clients,Mac OS和Win下提供GUI,不需要裝Node.js,方便測試人員操作。

相關限制:

如果你在Windows使用Appium,你沒法使用預編譯專用于OS X的.app文件,因為Appium依賴OS X專用的庫來支持iOS測試,所以在Windows平臺你不能測試iOS Apps。這意味著你只能通過在Mac上來運行iOS測試。

總結:

在iOS部分是封裝了UIAutomation;Android 4.2以上是用UiAutomator,Android 2.3 ~ 4.1用的是 Instrumentation,也就說Appium同時封裝了UiAutomator和Instrumentation。所以Appium擁有了以上幾大框架的所有優(yōu)點:跨App,支持Native App、Hybird App、Web App,還支持N種語言來編寫你的測試腳本。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 自動化測試
    +關注

    關注

    0

    文章

    222

    瀏覽量

    27182
  • Android
    +關注

    關注

    12

    文章

    3959

    瀏覽量

    129240
收藏 人收藏

    評論

    相關推薦

    HFSS 自動化建模工具

    因工作需求,自己寫的HFSS參數自動化建模工具,目前只實現了常用的四種模型,可定制,如需可聯(lián)系 qq:1300038043 附件下載鏈接:https://pan.baidu.com/s/1TVeTTFiJw-pxSyT1AT
    發(fā)表于 02-27 17:44

    分布式存儲有哪幾種類型?

    分布式存儲有哪幾種類型?分布式存儲系統(tǒng)是一種將數據分散存儲在多臺獨立節(jié)點上的技術,根據數據模型可分為鍵值存儲、列式存儲、文檔存儲和圖形存儲等類型;按數據存儲單位可分為基于文件、塊和對象的存儲;按
    的頭像 發(fā)表于 02-20 11:00 ?374次閱讀

    常見的有源變壓器有哪幾種?

    麻煩問一下大家,我們常見的有源變壓器有哪幾種?最關鍵的問題是,有源變壓器和無源變壓器建模方法相同嗎?有源變壓器如何進行建模?真心求教,在線等,謝謝了。
    發(fā)表于 01-22 07:47

    通用自動化測試軟件 - TAE

    INTEWORK-TAE(Test Automation Executor) 是一款通用的測試用例自動化執(zhí)行框架,用于汽車電子自動化測試,可支持仿真( MIL/SIL/HIL)、故障注
    的頭像 發(fā)表于 01-02 13:42 ?490次閱讀
    通用<b class='flag-5'>自動化</b><b class='flag-5'>測試</b>軟件 - TAE

    探索Playwright:前端自動化測試的新紀元

    與應用的交互,能夠高效地執(zhí)行重復性測試任務,加快測試周期,提升測試覆蓋率,從而更早地發(fā)現缺陷和問題。這不僅提高了軟件的穩(wěn)定性和可靠性,還降低了維護成本,并為創(chuàng)新和功能增強提供了更多的時間和資源。 在眾多
    的頭像 發(fā)表于 10-22 14:27 ?550次閱讀

    op07c和op37的封裝有哪幾種?

    咨詢op07c和op37的封裝有哪幾種
    發(fā)表于 09-25 08:24

    環(huán)路測試方法有哪幾種

    。環(huán)路測試的目的是確保循環(huán)能夠正確地開始、執(zhí)行和終止,以及在循環(huán)內部的邏輯是否正確。 環(huán)路測試通常包括以下幾種方法: 基本路徑測試 :這是最基礎的環(huán)路
    的頭像 發(fā)表于 09-12 14:35 ?1412次閱讀

    開關電源自動化測試設備:如何實現自動化測試

    開關電源自動化測試設備是將測試軟件和測試硬件集成在一個電源測試柜中的ate自動測試設備,其
    的頭像 發(fā)表于 08-30 18:19 ?1629次閱讀
    開關電源<b class='flag-5'>自動化</b><b class='flag-5'>測試</b>設備:如何實現<b class='flag-5'>自動化</b><b class='flag-5'>測試</b>?

    單元測試、集成測試自動化工具

    CoverageMaster winAMS :?適用于嵌入式目標機代碼的單元測試/集成測試工具 全面支持嵌入式微機!驗證嵌入式C/C++軟件 實施以模塊為單位的自動化單元測試工具 不需
    的頭像 發(fā)表于 06-26 13:41 ?672次閱讀
    單元<b class='flag-5'>測試</b>、集成<b class='flag-5'>測試</b><b class='flag-5'>自動化工具</b>

    CAN總線測試工具的主要功能

    CAN總線測試工具是用于測試CAN(Controller Area Network)總線通信的軟件或硬件工具,其功能豐富且多樣。以下是CAN總線
    的頭像 發(fā)表于 06-25 16:02 ?1510次閱讀

    斷路器有哪幾種

    斷路器有哪幾種? 斷路器是一種用于保護電氣線路和設備的重要元件,它可以在電路發(fā)生短路或過載時自動切斷電源,以避免設備損壞和火災等危險。斷路器的種類繁多,根據不同的分類標準,可以分為以下幾種: 1.
    的頭像 發(fā)表于 06-10 16:19 ?3029次閱讀

    軟件接口自動化測試,使用軟件工具+工裝治具測試

    軟件接口自動化測試結合軟件工具與工裝治具的應用,極大地提升了測試的效率和質量,是現代軟件開發(fā)不可或缺的一部分。通過精心選擇和應用合適的工具
    的頭像 發(fā)表于 06-07 15:59 ?1520次閱讀

    接口測試工具有哪些種類

    單元測試框架 單元測試框架主要用于測試單個模塊或函數的功能。雖然它們主要用于開發(fā)階段,但也可以用于接口測試。 1.1 JUnit (Java) JUnit 是 Java 語言的單元
    的頭像 發(fā)表于 05-30 15:07 ?1219次閱讀

    基于TAE的數字鑰匙自動化測試解決方案

    通過自動化測試執(zhí)行軟件TAE、總線監(jiān)控分析工具VBA和程控電源,的聯(lián)合調用,實現數字鑰匙 的功能測試、性能測試、診斷
    的頭像 發(fā)表于 05-29 15:15 ?1393次閱讀
    基于TAE的數字鑰匙<b class='flag-5'>自動化</b><b class='flag-5'>測試</b>解決方案

    STM32單片機有哪幾種常見的開發(fā)環(huán)境?

    STM32單片機是一款廣泛應用于嵌入式系統(tǒng)開發(fā)的單片機,針對其開發(fā),有以下幾種常見的方式:STM32單片機有哪幾種常見的開發(fā)環(huán)境?KeilMDK是一款廣泛使用的單片機集成開發(fā)環(huán)境,支持多種單片機系列
    的頭像 發(fā)表于 05-18 08:04 ?4000次閱讀
    STM32單片機有<b class='flag-5'>哪幾種</b>常見的開發(fā)環(huán)境?