如何使用WebDriverIO选择Android元素?

时间:2017-09-28 05:04:42

标签: android cordova appium webdriver-io

我正在使用WebDriverIO / Appium / Mocha在Cordova Hybrid移动应用程序上执行自动化测试。我有一个元素的以下XML

<android.widget.Button index="0" text="Cancel" class="android.widget.Button" resource-id="android:id/button2" instance="0" />

我尝试使用以下代码选择元素并执行单击

describe('Login Page', function() {
it('should allow user to login', function () {         
    var selector = 'new UiSelector().text("LOGIN")).className("android.widget.Button")';
    browser.click('android=' + selector);
    console.log("It's clicked");
}); 
});

我收到此错误

[Android 6.0#0-0]无法找到请求的资源,或者使用映射资源不支持的HTTP方法收到请求。

我做错了什么?

1 个答案:

答案 0 :(得分:0)

我使用其resourceid作为标识符。有关识别元素的更多方法,请参阅

[UIAUTOMATOR UISELECTOR] [1]

browser.click('android=new UiSelector().resourceId("android:id/button1")');

您甚至可以将方法链接到唯一标识元素

browser.setValue('android=new UiSelector().text("User Name").className("android.widget.EditText")', 'user');
browser.setValue('android=new UiSelector().className("android.widget.EditText").instance(1)', 'something');