使用 UIAutomatorViewer 編寫更復雜的測試
為了能夠編寫更復雜的 UI 測試,需要使用 UIAutomatorViewer 。位於 / tools /的工具會生成一個全屏截圖,其中包括當前顯示檢視的佈局。請參閱後續圖片以瞭解所顯示的內容:
對於 UI 測試,我們正在尋找 resource-id , content-desc 或其他東西來識別檢視並在我們的測試中使用它。
所述 uiautomatorviewer 經由終端執行。
如果我們現在想要點選應用程式按鈕,然後開啟一些應用程式並向左滑動,這就是測試方法的樣子:
public void testOpenMyApp() throws Exception {
// wake up your device
device.wakeUp();
// switch to launcher (hide the previous application, if some is opened)
device.pressHome();
// enter applications menu (timeout=200ms)
device.wait(Until.hasObject(By.desc(("Apps"))), 200);
UiObject2 appsButton = device.findObject(By.desc(("Apps")));
assertNotNull(appsButton);
appsButton.click();
// enter some application (timeout=200ms)
device.wait(Until.hasObject(By.desc(("MyApplication"))), 200);
UiObject2 someAppIcon = device.findObject(By.desc(("MyApplication")));
assertNotNull(someAppIcon);
someAppIcon.click();
// do a swipe (steps=20 is 0.1 sec.)
device.swipe(200, 1200, 1300, 1200, 20);
assertTrue(isSomeConditionTrue)
}