gpt4 book ai didi

xcode - XCTAssertTrue不会停止例程

转载 作者:行者123 更新时间:2023-12-04 03:43:51 27 4
gpt4 key购买 nike

Xcode不会在失败的断言时终止测试例程。这样对吗?
我无法理解其背后的原因,我希望它的行为类似于assert并使其终止程序。
通过以下测试,它将打印“仍在运行”。
这是故意的吗?

- (void)testTest
{
XCTAssertTrue(false, @"boo");
NSLog(@"still running");
}

我看不到这有什么用,因为当不满足先决条件时,随后的代码通常会崩溃:
- (void)testTwoVectors
{
XCTAssertTrue(vec1.size() == vec2.size(), @"vector size mismatch");

for (int i=0; i<vec1.size(); i++) {
XCTAssertTrue(vec1[i] == vec2[i]);
}
}

最佳答案

您可以更改XCTAssert<XX>的行为。
在设置方法中,将self.continueAfterFailure的值更改为NO。

在测试断言失败后,IMO停止测试是更好的行为(防止崩溃导致不运行其他重要测试)。如果测试在失败后需要继续进行,则意味着测试用例太长了,应该将其拆分。

关于xcode - XCTAssertTrue不会停止例程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23845923/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com