代码之家  ›  专栏  ›  技术社区  ›  Volodymyr

iOS XCUITest模拟指纹

  •  1
  • Volodymyr  · 技术社区  · 7 年前

    1 回复  |  直到 7 年前
        1
  •  6
  •   joern    7 年前

    你不能在测试中伪造指纹。要通过身份验证并测试应用程序中被TouchID提示符屏蔽的部分,您可以在未启用TouchID的设备上运行测试。或者在模拟器上运行它(不启用TouchID)。

    未启用TouchID时,操作系统会询问您设备的密码。您可以输入密码并通过身份验证。在模拟器上运行测试时,可以输入任何密码。它总会过去的。

    下面是一个通过输入密码通过身份验证的示例测试:

    func testExample() {
       let springboard = XCUIApplication(bundleIdentifier: "com.apple.springboard")
       let app = XCUIApplication()
       app.launch()
    
       // this causes the authentication prompt to be displayed
       app.buttons["Press Me!"].tap()
    
       let passcodeInput = springboard.secureTextFields["Passcode field"]
       passcodeInput.tap()
       passcodeInput.typeText("abc\r")
    
       // continue test
       ....
    }