Ios 离线和在线测试一段代码,但在测试中计为两种情况
下面的代码验证应用程序是否不允许访问摄像头,类似地,我还有30个其他案例。 我想通过模拟设备离线来测试所有这些,假设这是一个函数调用Ios 离线和在线测试一段代码,但在测试中计为两种情况,ios,swift,xctest,Ios,Swift,Xctest,下面的代码验证应用程序是否不允许访问摄像头,类似地,我还有30个其他案例。 我想通过模拟设备离线来测试所有这些,假设这是一个函数调用 func makeDeviceOffline(){ .... } func testisCameraDisabled(){ driver?.openApp() dashBoard?.openCameraPage() cameraPage?.openCamera() XCTAssert(elementFinder?.isPolic
func makeDeviceOffline(){
....
}
func testisCameraDisabled(){
driver?.openApp()
dashBoard?.openCameraPage()
cameraPage?.openCamera()
XCTAssert(elementFinder?.isPolicyViolationAlertExists("camera"))
}
除了在脱机模式下重复每种情况,还有更好的替代方法吗
在最终报告中,我需要将其计算为两个不同的测试用例,假设:
- 您有一个测试用例类
,它是一种带有一些测试方法的MyTests
XCTestCase
- 您希望创建另一个与
相同的测试用例类MyTests
,只是myfflinetests
在每个测试之前运行makeDeviceOffline
- 您可以子类化
来创建MyTests
并覆盖MyOfflineTests
来调用-setUp
makeDeviceOffline()
class MyTests: XCTestCase {
func testIsCameraDisabled() {
// …
}
}
class MyOfflineTests: MyTests {
override func setUp() {
super.setUp()
makeDeviceOffline()
}
// All tests of `MyTests` are now run as offline tests.
}
注意:继承的测试将在运行时被发现并列出。在您至少运行myoflinetests
类的测试一次之后,它们才会显示在Xcode的测试导航器面板中。它们将在整个测试运行输出中显示为正确计数