这是我将如何使用 XCTAssertEqual 的示例
XCTAssertEqual(valueA, valueB, @"message");
但是,当我尝试以下操作时
NSString *message = @"message";
XCTAssertEqual(valueA, valueB, message);
我得到一个编译器错误,即
Expected ')'
无论哪种方式,我似乎都只是简单地传递了一个 NSString。当我深入研究我发现的定义时
#define XCTAssertEqual(a1, a2, format...) _XCTPrimitiveAssertEqual(a1, a2, ## format)
我不知道是哪个。为什么我无法将 NSString*
作为 format...
参数传递给 XCTAssertEquals,当它接受像 @"message"
这样的 NSString 文字时?
注意:这似乎是所有断言的情况。
最佳答案
试试这个:
XCTAssertEqual(valueA, valueB, @"%@", message);
关于objective-c - 使用带有 NSString 的 XCTAssertEqual 作为错误消息参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25187096/