Simulating pressing the Home button in Xcode 7 UI Automation

|▌冷眼眸甩不掉的悲伤 提交于 2019-12-23 09:43:20

问题


I've got it down to:

XCUIDevice.pressButton(noideawhatgoeshere)

I've tried XCUIDeviceButtonHome, home, Home, 1

How do I simulate pressing the home button in Xcode on iOS?


回答1:


You need to get the device instance first. So to simulate pressing the home button:

XCUIDevice.sharedDevice().pressButton(XCUIDeviceButton.Home)

should work (it does for me on a physical device)

Thanks!

Mazen

Swift 5 Version:

XCUIDevice.shared.press(XCUIDevice.Button.home)

Also, verified it works in the simulator, at least in Xcode 11.2.1 on a simulated "iPad Pro (9.7-inch)" running iPadOS 13.2.2.




回答2:


Swift 4:

XCUIDevice.shared.press(.home)



回答3:


In Swift version 4.0.2 and 4.0.3:

XCUIDevice.shared().press(XCUIDeviceButton.home)



回答4:


I know of no way to simulate the home button - this might not be possible. You can sorta brute force it with: [[UIApplication sharedApplication] terminate]; or you can put your app in the background for a specified duration with: UIATarget.localTarget().deactivateAppForDuration(seconds);

(excuses for using objc)




回答5:


Objective C

    [XCUIDevice.sharedDevice pressButton:1];

Home button = 1, Volume up button = 2, Volume down button = 3.




回答6:


Now in Swift 4.1:

XCUIDevice.shared.press(XCUIDevice.Button.home)


来源:https://stackoverflow.com/questions/32853818/simulating-pressing-the-home-button-in-xcode-7-ui-automation

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!