这是我如何使用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文字时?
注意:所有断言似乎都是这种情况。
答案 0 :(得分:7)
试试这个:
XCTAssertEqual(valueA, valueB, @"%@", message);