Автоматическое отклонение подтверждения Apple ID всплывающее окно - PullRequest
1 голос
/ 04 марта 2020

Я использую селен и Appium для автоматизации испытаний. Я пытаюсь выяснить, как автоматически отклонять всплывающее окно проверки Apple ID на устройствах ipad и iPhone перед каждым тестом.

Я пытался написать

iosDriver.SwitchTo().Alert().Dismiss()

с пока безуспешно.

Я также видел что-то вроде

driver.findElement(By.xpath("//*[@XCElementType='XCUIElementTypeButton'][3]")).click();

, но я не знаю, как определить кнопку "не сейчас".

capabilities.SetCapability("platformName", "iOS");
        capabilities.SetCapability("platformVersion", iosPlatformVersion);
        capabilities.SetCapability("browserName", string.Empty);
        capabilities.SetCapability("deviceName", deviceName);
        capabilities.SetCapability("automationName", "XCUITest");
        capabilities.SetCapability("bundleId", "com.*****.automation");
        capabilities.SetCapability("udid", iphone_udid);
        capabilities.SetCapability("noReset", "true");
        capabilities.SetCapability("fullReset", "false");
        capabilities.SetCapability("xcodeConfigFile", "/Users/******/Desktop/***.xconfig");
        capabilities.SetCapability("agentPath", "/usr/local/lib/node_modules/appium/node_modules/appium-xcuitest-driver/WebDriverAgent/WebDriverAgent.xcodeproj");
        capabilities.SetCapability("bootstrapPath", "/usr/local/lib/node_modules/appium/node_modules/appium-xcuitest-driver/WebDriverAgent");
        capabilities.SetCapability("startIWDP", true);
        capabilities.SetCapability("autoDismissAlerts", true);
        string pathTo****Ipa = null; pathIpa = string.IsNullOrEmpty(path) ? ipaPath : path1;
        capabilities.SetCapability("app", path);
        //XCUITest
        capabilities.SetCapability("waitForAppScript", "$.delay(5000); $.acceptAlert();");
        IOSDriver<IOSElement> driver = new IOSDriver<IOSElement>(new Uri("http://127.0.0.1:****/**/***"), capabilities, new TimeSpan(0, 3, 0));

хотел бы услышать от людей, которые преуспели в таких случаях.

Спасибо в Advacne.

enter image description here

1 Ответ

0 голосов
/ 06 марта 2020

, если вас интересует только это для iOS, вы можете использовать $driver.find_element(name: 'Not Now'). Просто переведите с ruby.

в качестве альтернативы: $driver.find_element(predicate: "type='XCUIElementTypeButton' AND name MATCHES[cd] 'Not Now'") <- также в ruby. </p>

. Если бы вы могли, я бы действительно отказался от использования XPath - он не будет согласованным в в долгосрочной перспективе.

...