乡下人产国偷v产偷v自拍,国产午夜片在线观看,婷婷成人亚洲综合国产麻豆,久久综合给合久久狠狠狠9

  • <output id="e9wm2"></output>
    <s id="e9wm2"><nobr id="e9wm2"><ins id="e9wm2"></ins></nobr></s>

    • 分享

      Android 談?wù)勛詣踊瘻y試

       codingSmart 2021-10-22

      前言

      最近,手頭上的項(xiàng)目基本開發(fā)完成,優(yōu)化也做的差不多了,本以為可以安心準(zhǔn)備上線。然而老板卻反映說測試人員發(fā)現(xiàn) App 總會出現(xiàn)一些莫名的 bug.

      bug 來了,那就解決唄。但是這 bug 又賊迷,偶爾出來一個調(diào)戲一下你,就問你服不服。所以為了讓 App 中的 bug 盡可能的減少,只能暫時苦逼地轉(zhuǎn)行測試。這幾天花了不少時間和精力,好好研究了下 Android 平臺的自動化測試,在此總結(jié)一下。

      概述

      Android 平臺的自動化測試可以從兩個方向入手

      • Android 端的自動化測試框架

      • 各大云測試平臺

      • 騰訊優(yōu)測云測試平臺

      • 華為開發(fā)者聯(lián)盟

      • 貫眾云測試

      • Testin 云測

      測試的內(nèi)容包括:

      • 兼容性測試:安裝、啟動、卸載

      • 功能測試:手勢操作、功能驗(yàn)證

      • 穩(wěn)定性測試:app 是否容易出現(xiàn)閃退等現(xiàn)象

      • 場景測試:模擬真實(shí)網(wǎng)絡(luò)場景,2G、3G、4G、wifi 網(wǎng)絡(luò)的切換

      上面介紹了 Android 自動化測試的兩個方向以及測試的具體內(nèi)容,接下來談下他們之間的區(qū)別和優(yōu)缺點(diǎn)。

      • Android 自動化測試框架

      利用 Android 端的自動化測試框架,可以通過代碼完成相應(yīng)的測試用例,盡量覆蓋所有使用場景,讓人工的重復(fù)性操作,轉(zhuǎn)換成腳本的自動化執(zhí)行,解放程序猿寶貴的右手(嗯,也可能是左手)。emmmm,上面的優(yōu)點(diǎn)是不是看起來很不錯。別急,還沒說缺點(diǎn)呢,缺點(diǎn)就是對測試人員來說編寫代碼能力要求較高,而且由于要覆蓋大多數(shù)的使用場景,所以很考驗(yàn)測試人員對于 App 的整體理解和把握,而且一般多用于 UI 測試,而無法進(jìn)行兼容性的測試,畢竟手機(jī)有限。

      • 各大云測試平臺

      利用云測試平臺的好處還是很多的,畢竟人家是專業(yè)搞這個的,所以很多你沒考慮到的東西,別人都已經(jīng)幫你集成到平臺里面了。而且相對于 Android 自動化測試框架,各大云測試平臺還能給你提供各種各樣的機(jī)型,例如華為開發(fā)者聯(lián)盟就提供了大部分華為和榮耀系列的手機(jī),手機(jī)版本從 4.4 到 7.0 都有,看著這些優(yōu)點(diǎn)是不是覺得美滋滋。缺點(diǎn)嘛,其實(shí)不多,就一個「收費(fèi)」。這當(dāng)然也能理解,畢竟人家也是要吃飯的,如果免費(fèi)給你用,那還要不要人活了。

      自動化測試框架

      2.1 Espresso

      Espresso 是 Google 針對 Android 平臺開源的一款 Android 自動化測試框架,主要是用于 Android App UI 自動化測試。

      在這里簡單說下 UI 自動化測試:我們作為 App 的使用者,要讓機(jī)器模擬我們的測試過程,那么就需要針對我們?nèi)庋劭吹降哪切┙缑?,那些按鈕,也就是 UI 組件進(jìn)行相應(yīng)的操作以及對結(jié)果正確性的驗(yàn)證。

      比如說,作為用戶我們并不關(guān)心某個網(wǎng)絡(luò)請求返回值的具體數(shù)據(jù)是否正確,我們關(guān)心的是在界面上看到我們想要看到的結(jié)果。因此,做 UI 自動化測試用例的時候,一個通用的思路就是:找到某個元素,做一些操作,檢查結(jié)果,把自己當(dāng)成用戶,只關(guān)注我能看到的東西。

      Espresso 畢竟是 Google 自己出的,優(yōu)點(diǎn)還是很多的

      • 用 Java 來寫代碼,對 Android 開發(fā)者很友好

      • API 相當(dāng)?shù)男?,?dāng)然也會對拓展開放的

      • Espresso 的測試跑起來那是相當(dāng)?shù)目欤]有等待、睡眠)

      • Gradle 和 Android Studio 的支持

      更多 Espresso 的例子請戳:https://github.com/vgrec/EspressoExamples

      2.2 UI Automator

      UI Automator 所運(yùn)行的 JUnit 測試用例是有特殊權(quán)限的,這意味著測試用例可以 跨越不同的進(jìn)程,它提供了五種不同的類給開發(fā)人員使用:

      com.android.uiautomator.core.UiCollection;
      com.android.uiautomator.core.UiDevice;
      com.android.uiautomator.core.UiObject;
      com.android.uiautomator.core.UiScrollable;
      com.android.uiautomator.core.UiSelector

      不過,比較遺憾的是,UI Automator 只能工作在 API 16 或更高級別的 Android 設(shè)備上,而且也沒有辦法直接訪問 Android 對象。

      2.3 Appium

      Appium 是一款「移動」的自動化測試框架,牛逼的地方在于支持 iOS 和 Android 原生和混生的移動 Web 應(yīng)用程序。它內(nèi)部使用的 JSONWireProtocol 通過 Selenium 的 WebDriver,來與 iOS 和 Android 應(yīng)用進(jìn)行交互。通過 UI Automator 和 Seledroid 支持 Android,通過 UI Automation 支持 iOS。上面這些話,看看就好了,反正我也看不懂。

      Appium 最大的優(yōu)點(diǎn)在于你幾乎可以用任意一種編程語言(例如,Java、Objective-C、JavaScript、PHP、Ruby)來編寫 Appium 腳本而不必選擇工具,兼容最重要的pigtail(Android 和 iOS)而不必安裝和配置設(shè)備適應(yīng)測試等等。

      云測試平臺

      3.1 騰訊優(yōu)測云測試平臺

      擁有超過1000款測試終端,機(jī)型數(shù)量龐大,機(jī)子比較全。但僅支持 Android 系統(tǒng),暫時不支持 iOS 系統(tǒng)。

      不過,該平臺的收費(fèi)還是蠻高的,一分鐘一塊錢,而且最低充值 100 元。

      3.2 華為開發(fā)者聯(lián)盟

      優(yōu)點(diǎn):免費(fèi)
      缺點(diǎn):只能測試華為的機(jī)子

      測試主要包括:

      • 兼容性測試:華為這邊提供所有華為手機(jī)的測試

      • 穩(wěn)定性測試

        • 安裝、啟動、注冊登錄、遍歷、卸載

        • Crash、ANR、UI、功能異常

        • 提供問題上下截圖及異常截圖


      3.3 Testin

      Testin 是國內(nèi)較早涉足云測試領(lǐng)域的公司之一。Testin 在云端部署了 300 多款 1000 多部測試終端,終端種類及數(shù)量都比較全面。

      該平臺也是收費(fèi)的,具體的收費(fèi)標(biāo)準(zhǔn),并沒有在官網(wǎng)上顯示出來,只說了有需要服務(wù)的請聯(lián)系客服。

      與之相關(guān)

      手把手教你從零開始做一個好看的 APP

      從未如此驚艷!你好,SuperTextView

        轉(zhuǎn)藏 分享 獻(xiàn)花(0

        0條評論

        發(fā)表

        請遵守用戶 評論公約

        類似文章 更多