我想知道如何测试同步请求以根据服务器响应断言 API 客户端的行为。由于独立于服务器是一种很好的做法(因此测试运行速度很快并且不依赖于互联网连接),我想返回我自己的响应。我不知道该怎么做,因为请求是同步的:
NSURL *url = [self URL];
NSData *postData = [self postData];
NSMutableURLRequest *downloadRequest = [NSMutableURLRequest requestWithURL:url];
[downloadRequest setHTTPMethod:@"POST"];
[downloadRequest setHTTPBody:postData];
[downloadRequest setTimeoutInterval:10.0];
return downloadRequest;
NSURLResponse *response;
NSError *error = nil;
NSData *urlData = [NSURLConnection sendSynchronousRequest:downloadRequest
returningResponse:&response
error:&error];
你对如何做到这一点有什么建议吗?例如,我不知道是否可以覆盖 NSURLConnection,或者我是否应该更改我的代码,只是为了测试目的。