Ich habe eine Liste von Kontrollkästchen in meiner Android App, die ich testen muss. Wenn ich also die isSelected() -Methode verwende, gibt sie immer false zurück, egal ob dieses Kontrollkästchen aktiviert ist oder nicht. Wurde versucht, findelementById() und byXpath() zu verwenden. Gleiches Ergebnis. HierSelenium isSelected() Methode für CheckBox gibt immer falsch für Android zurück
ist die Teile des Codes, was ich verwendet:
WebElement checkBox = driver.findElementById(appType + id);
if (!checkBox.isSelected()){
Reporter.log(backupDataType + " checkbox isn't checked. clicking on it...", true);
...}
mit XPath:
checkBox = driver.findElementByXPath("//android.widget.CheckBox[@resource-id='" + appType + checkSms + "']");
if (!driver.findElementByXPath("//android.widget.CheckBox[@resource-id='" + appType + checkSms + "']").isSelected()){
Reporter.log(backupDataType + " checkbox isn't checked. clicking on it...", true);
...}
Pfad zum Element korrekt ist, weil es sich immer darauf klicken. Egal, ob es überprüft wurde oder nicht.
Danke, das hat funktioniert! Ich spare normalerweise Webelemente. In diesem Fall habe ich einfach verschiedene Kombinationen ausprobiert, um es zum Laufen zu bringen. – DiTest