使用 XCTest 和单独文件进行 iOS 测试

Posted

技术标签:

【中文标题】使用 XCTest 和单独文件进行 iOS 测试【英文标题】:iOS testing with XCTest and separate file 【发布时间】:2016-04-08 09:37:59 【问题描述】:

目前,我将测试写入 1 个文件(默认)。是否可以有多个文件并进行测试?

- (void)setUp 
    [super setUp];
    // Put setup code here. This method is called before the invocation of each test method in the class.


- (void)tearDown 
    // Put teardown code here. This method is called after the invocation of each test method in the class.
    [super tearDown];


- (void)testExample 
    // This is an example of a functional test case.
    XCTAssert(YES, @"Pass");

【问题讨论】:

【参考方案1】:

每个文件可以有很多文件和很多测试。第一个只是 Xcode 自动生成的,但它的特别之处在于它:

    实现 XCTestCase 的子类 是测试目标的成员(不是您的应用目标)

制作另一个具有相同特征的文件很简单。

在 Xcode 中,文件 -> 新建 -> ios -> 源代码 -> UI 测试用例类

惯例是将相关测试分组到一个源文件中,然后将该源文件命名为 ___Tests.swift(或 .m)

例如,SharingTests.swift 可能包含方法testSharingToFacebook()testSharingToTwitter()

【讨论】:

以上是关于使用 XCTest 和单独文件进行 iOS 测试的主要内容,如果未能解决你的问题,请参考以下文章

iOS测试-如何指标量化app耗电量和性能XCTest Metrics

iOS:如何在设备上运行 XCTest?

如何使用 XCTest UI 测试区分 iOS 13 中的标题和静态文本

如何使用 XCTest 框架测试基于 REST 的原生 iOS 应用程序?

iOS 中的 XCTest 和 UI 测试

现有项目的 XCTest