XCUITest - приложение для уничтожения задач

Попытка найти решение для автоматизации задачи-убийства приложения для XCUITest...

static let springboard:XCUIApplication? = XCUIApplication(bundleIdentifier: "com.apple.springboard")

class func killApp(app:XCUIApplication) -> Bool
{
    app.terminate()
    if let springboard = springboard
    {
        springboard.activate()
        XCUIDevice.shared.press(.home)
        XCUIDevice.shared.press(.home)
        Thread.sleep(forTimeInterval: 1.0)
        let appTask = app.otherElements["appID"]
        if appTask.isHittable
        {
            appTask.swipeUp()
            XCUIDevice.shared.press(.home)
            return true
        }
        else
        {
            print("App task is not hittable!")
            return false
        }
    }
    return false
}

Но это не работает. Два нажатия кнопки «Домой», кажется, не распознаются как быстрое двойное нажатие. Кто-нибудь знает работающее решение для этого?


person BadmintonCat    schedule 16.10.2017    source источник


Ответы (2)


Вместо того, чтобы зависеть от Springboard и двойного нажатия, попробуйте это (я предполагаю, что вы пытаетесь закрыть приложение, а не удалить его)

closeApp(background: Bool = false) {
if (background) {
     XCUIDevice.shared().press(.home)
} else {
 application.terminate()
}
person iamMobile    schedule 24.09.2018

Быстрого двойного нажатия кнопки «Домой» по-прежнему добиться не удается.

person lagoman    schedule 24.11.2017