我想通过在 UITextField 中输入1到10000之间的值并按“Go” UIButton 来测试我的应用程序即可。
并了解执行segue的条件。
如何定义自动化测试的测试标准,并在UITextField中输入值1 - 10000?
与我的问题完全匹配的另一种情况:
在测试计算器应用程序时,我需要检查所有可能的操作和数字。我们可以自动化测试随机点击计算器并检查输出吗?
答案 0 :(得分:1)
您可以使用循环来尝试1到10000之间的每个值。对于每个值,在文本字段中键入它,按下按钮,看看会发生什么。我不确定你期待发生什么,所以我刚刚编写了代码来检查标签是否出现 - 你应该将其更改为你认为可以断言正确结果发生的任何内容。
XCUIApplication *app = [[XCUIApplication init] alloc];
XCUIElement *textField = [[app.textFields matchingIdentifier: "myTextField"] elementBoundByIndex: 0];
XCUIElement *goButton = [[app.buttons matchingIdentifier: "goButton"] elementBoundByIndex: 0];
for (NSNumber i = 1; i <= 10000; i++) {
NSString *n = [NSString stringWithFormat:@"%d", i];
[textField tap];
[textField typeText: n];
[goButton tap];
// Define what it is you expect to happen
BOOL expectedOutcome = [[app.staticTexts matchingIdentifier: "myLabel"] elementBoundByIndex: 0].exists;
XCTAssert(expectedOutcome, [NSString stringWithFormat:@"Unexpected result for %d", i])
}