国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

Android自動(dòng)化測(cè)試-從入門到入門(4)uiautomatorviewer

winterdawn / 1474人閱讀

摘要:右下角部分顯示當(dāng)前選中控件的各個(gè)屬性。然后,向這個(gè)中輸入賬號(hào)信息就完成了一個(gè)表單的輸入。我們可以根據(jù)屬性區(qū)域顯示的來(lái)進(jìn)行匹配賬號(hào)小總結(jié)所提供的界面簡(jiǎn)單,使用方便,對(duì)于我們的自動(dòng)化測(cè)試來(lái)說(shuō)是一個(gè)很好的輔助工具。

我們用如下一行代碼來(lái)回顧一下之前介紹過(guò)的內(nèi)容:

import static android.support.test.espresso.Espresso.onView;
import static android.support.test.espresso.action.ViewActions.click;
import static android.support.test.espresso.assertion.ViewAssertions.matches;
import static android.support.test.espresso.matcher.ViewMatchers.isDisplayed;
import static android.support.test.espresso.matcher.ViewMatchers.withId;
import static android.support.test.espresso.matcher.ViewMatchers.withText;
import static org.hamcrest.Matchers.allOf;

onView(allOf(withId(id), isDisplayed())).perform(click()).check(matches(withText(text)));

還記得以上代碼的意義么?這行代碼找到了屏幕上正在顯示的指定id的控件,對(duì)其進(jìn)行了一次點(diǎn)擊操作,然后檢查了一下其文本為text。

關(guān)于onView()方法,我們需要首先知道目標(biāo)控件的一些屬性值,然后再圍繞我們的目標(biāo)屬性構(gòu)建一個(gè)匹配規(guī)則。但有些時(shí)候,控件的屬性并不是那么明顯,或者并沒(méi)有那么容易獲取到,這時(shí),我們可以使用Android提供的uiautomatorviewer工具幫助我們進(jìn)行分析。

uiautomatorviewer

uiautomatorviewer工具位于Android SDK目錄下,本文會(huì)介紹在Mac下uiautomatorviewer的用法,其他系統(tǒng)下的用法相當(dāng)雷同,就不一一介紹了。

在終端中切換到Android SDK的目錄下,在tools目錄下可以看到uiautomatorviewer工具:

運(yùn)行./uiautomatorviewer,便可以看到uiautomatorviewer的主界面了:

很樸素對(duì)不對(duì)~

屏幕截圖

將手機(jī)連接到設(shè)備上,在手機(jī)上啟動(dòng)一個(gè)需要測(cè)試的目標(biāo)頁(yè)面,然后點(diǎn)擊uiautomatorviewer左上角的第二個(gè)按鈕(Device Screenshot(uiautomator dump)),便可以把當(dāng)前頁(yè)面截下來(lái)了:

如上所示,我截取了一張答疑君APP登錄頁(yè)面的截圖??梢钥吹?,uiautomatorviewer的界面分成了3個(gè)部分:

左邊部分:顯示當(dāng)前屏幕的截圖。在這個(gè)部分,我們可以對(duì)這個(gè)頁(yè)面上的各個(gè)控件做一些選中的操作。

右上角部分:顯示當(dāng)前頁(yè)面的View層級(jí)。

右下角部分:顯示當(dāng)前選中控件的各個(gè)屬性。

比如說(shuō),我現(xiàn)在想要做一個(gè)登錄的測(cè)試用例,我需要在“賬號(hào)”和“密碼” 的輸入框中輸入一些內(nèi)容,然后點(diǎn)擊“登錄”按鈕執(zhí)行登錄。首先,我選中填寫(xiě)賬號(hào)的EditText

大家可以看到,右上角的View層級(jí)自動(dòng)定位到了我選中的EditText上,同時(shí)右下角顯示了這個(gè)EditText的一些屬性信息。其中,resource-id便是這個(gè)EditTextid,于是我通過(guò):

onView(withId(R.id.login_account))

便找到了這個(gè)EditText。然后,向這個(gè)EditText中輸入賬號(hào)信息:

onView(withId(R.id.login_account)).perform(click(), replaceText("..."), closeSoftKeyboard())

就完成了一個(gè)表單的輸入。

類似地,我們還可以通過(guò)text的屬性來(lái)尋找我們的目標(biāo)控件。我們可以根據(jù)屬性區(qū)域顯示的text來(lái)進(jìn)行匹配:

onView(withText("賬號(hào)"))
小總結(jié)

Android所提供的uiautomatorviewer界面簡(jiǎn)單,使用方便,對(duì)于我們的自動(dòng)化測(cè)試來(lái)說(shuō)是一個(gè)很好的輔助工具。對(duì)于我們之后將要介紹的UI Automator,以及第三方測(cè)試框架Appium,都離不開(kāi)這個(gè)小工具的支持。于是,請(qǐng)大家趕快操練起來(lái)吧~

附錄

Android自動(dòng)化測(cè)試-從入門到入門(1) Hello Testing!
Android自動(dòng)化測(cè)試-從入門到入門(2) Testing APIs
Android自動(dòng)化測(cè)試-從入門到入門(3) Espresso入門
Android自動(dòng)化測(cè)試-從入門到入門(4) uiautomatorviewer
Android自動(dòng)化測(cè)試-從入門到入門(5) AdapterView的測(cè)試
Android自動(dòng)化測(cè)試-從入門到入門(6) 會(huì)玩的Espresso
Android自動(dòng)化測(cè)試-從入門到入門(7) UI Automator

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://m.specialneedsforspecialkids.com/yun/65404.html

相關(guān)文章

  • Android動(dòng)化測(cè)試-入門入門(7)UI Automator

    摘要:檢查操作的結(jié)果是否符合預(yù)期。大家在實(shí)際編寫(xiě)自動(dòng)化測(cè)試腳本時(shí)可以靈活選用。 到目前為止,我們已經(jīng)完成了對(duì)Espresso的介紹。從之前的文章我們可以看到,Espresso對(duì)Android APP的自動(dòng)化測(cè)試提供了一系列非常強(qiáng)大的工具和方法。 現(xiàn)在試想這樣一個(gè)場(chǎng)景:我們?cè)贏PP中有一個(gè)更改頭像的功能,此時(shí)我們需要調(diào)用系統(tǒng)相機(jī)進(jìn)行拍照,然后再回到APP提交拍好的照片。在這種場(chǎng)景下,我們需要從...

    Dean 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<