Я использовал захват экрана [public void getScreenshot(){...}
] в Appium для сбоев тестирования и запуска. Я бы хотел вызвать тот же метод для каждого findElement()
в моем пакете. Я попытался сделать это:Несколько скриншотов в Appium для гибридных приложений
Создание пользовательского драйвера, как:
public class CustomDriver extends AppiumDriver{
public WebElement scrollToExact(String element) {
WebElement x = null;
return x;
}
public WebElement scrollTo(String element){
WebElement y = null;
return y;
}
@Override
public List<WebElement> findElements(By by) {
try {
getScreenshot();
}
catch (IOException iox){
System.out.println(iox.getMessage());
}
return by.findElements(this);
}
@Override
public WebElement findElement(By by) {
try {
getScreenshot();
}
catch(IOException iox){
System.out.println(iox.getMessage());
}
return by.findElement(this);
}
}
Используется драйвер для создания тестового набора.
Q1. Хотя это сработало хорошо для меня, но пока я переключаю контекст на Webview, мой драйвер не будет реагировать на обнаружение элементов в этом контексте. Что-то не так, что я следил за ним? [Предоставляли детали, если это необходимо, но не уверены сами.]
Q2. Есть ли что-нибудь более простое, что мне не хватает, чтобы получить скриншоты для каждого звонка findElement()
в моем номере?
какой-либо конкретной причины для присвоения originalContext null? – nullpointer
'@Override public List findElements (By by) { Строка originalContext = getContext(); if (! OriginalContext.equals ("NATIVE_APP")) { контекст ("NATIVE_APP"); } try { getScreenshot(); // Перед снимком экрана return super.findElements (by); } наконец { контекст (originaContext); } } 'трюк для меня –
nullpointer
это способ указать, что в конечном итоге нет необходимости переключать контекст. В качестве альтернативы это может быть, если (! "NATIVE_APP" .equals (originalContext)) { контекст ("NATIVE_APP"); } try { getScreenshot(); // Перед снимком экрана return super.findElements (by); } наконец { if (! "NATIVE_APP" .equals (originalContext)) { контекст (originaContext); } } - вопрос предпочтения кодирования. –