这是我如何使用XCTAssertEqual的一个例子
XCTAssertEqual(valueA,valueB,@"message");
但是,当我尝试以下
NSString *message = @"message"; XCTAssertEqual(valueA,message);
我收到编译错误,即
Expected ')'
看起来我只是简单地传递一个NSString.当我深入研究我发现的定义时
#define XCTAssertEqual(a1,a2,format...) _XCTPrimitiveAssertEqual(a1,## format)
我无法做出正面或反面.为什么我无法将NSString *作为格式…参数传递给XCTAssertEquals,当它接受像@“message”这样的NSString文字时?
注意:这似乎是所有断言的情况.
解决方法
试试这个:
XCTAssertEqual(valueA,@"%@",message);