【发布时间】:2018-06-19 11:45:47
【问题描述】:
我正在为现有项目编写单元测试代码。该项目在 Objective-C 中,我必须使用测试用例的大量输入来测试几个函数。例如,我有一个测试用例来测试输入两个参数的函数计算器。目前我创建数组来存储一组输入值以运行测试。使用的代码如下:
- (void)setUp {
[super setUp];
self.vcToTest = [[BodyMassIndexVC alloc] init];
input1 = [[NSMutableArray alloc] initWithObjects:@"193", @"192", @"192", @"165", @"155", @"154", nil];
input2 = [[NSMutableArray alloc] initWithObjects:@"37", @"37", @"36", @"80",@"120", @"120", nil];
}
- (void)testCalculatorSuccess {
for (int i=0; i<input1.count; i++) {
NSArray *expectedResult = [[NSArray alloc] initWithObjects: @"9.93", @"10.04", @"9.77", @"29.38", @"49.95", @"50.60", nil];
NSString *actualResult = [self.vcToTest calculateResult:input1[i] andInput2:input2[i]];
XCTAssertEqualObjects(actualResult, expectedResult[i]);
}
}
我在网上搜索了最佳做法,但没有找到。有人可以帮我弄这个吗?我是否以正确的方式运行测试?在这种情况下应遵循的最佳做法是什么?我应该为每组输入创建一个测试用例吗?
【问题讨论】:
-
您可能想知道您可以在断言中传递描述。 developer.apple.com/documentation/xctest/…
标签: ios objective-c xctest