Simulating Pressing the Home button in xCode 7 UI

2019-06-21 06:51发布

问题:

I've got it down to:

XCUIDevice.pressButton(noideawhatgoeshere)

I've tried XCUIDeviceButtonHome, home, Home, 1

Not sure how to simulate pressing the home button, does anyone have any pointers? I'm new to xCode/swift

回答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



回答2:

Swift 4:

XCUIDevice.shared.press(.home)


回答3:

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)



回答4:

Objective C

    [XCUIDevice.sharedDevice pressButton:1];

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



回答5:

In Swift version 4.0.2 and 4.0.3:

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


回答6:

Now in Swift 4.1:

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