Я тестирую собственное приложение для Android и вам нужно нажать кнопку, расположенную в нижней части экрана , Я видел множество примеров этого, используя Java и Javascript, но я использую Node.js, и ничего не работает. Я довольно новичок в этом материале и потратил слишком много времени на что-то настолько простое.Выбор элемента пользовательского интерфейса не на экране собственного приложения для Android с помощью Appium, веб-драйвера Selenium, узла js, Mocha и т. Д.
Например, чтобы нажать на экранном элементе это работает:
it("Select Button Test",function(){
return driver
.setImplicitWaitTimeout(timeoutWait)
.elementByXPath('//android.widget.TextView[@text=\'My Button\']').click();
});
Также полный XPath работает для экранных элементов - в этом случае:
var myButton ='//android.widget.LinearLayout[1]/android.widget.FrameLayout[1]/android.view.View[1]/android.widget.FrameLayout[1]/android.widget.RelativeLayout[1]/android.widget.ScrollView[1]/android.widget.LinearLayout[1]/android.widget.TableLayout[1]/android.widget.TableRow[10]');
it("Select Button Test",function(){
return driver
.setImplicitWaitTimeout(timeoutWait)
.elementByXPath(myButton).click();
});
Я нашел полное XPath для этой кнопки прокручивая его во время теста и запуская экран в инспекторе appium. Я пробовал различные методы прокрутки, касания и прокрутки из документов webdriver, но ничего не было, поэтому, видимо, я скитался с ponderosa ...
Так как я могу получить доступ к кнопке, которая отсутствует на экране?
Я уверен, что это некоторые мирские детали. Благодаря!
после прокрутки выводит элемент на экране – karthick23
, нет функции прокрутки, которая работает из того, что я могу сказать. Если я могу получить экран для прокрутки, я уверен, что он будет работать, так как зависание - это тот факт, что элемент не на экране. – sluggo