我是XCTest的新手,我正在尝试使用XCTest在我的iPhone中使用safari应用程序,但无法做任何事情,因为这样做是为了实现这一目标
截至目前已尝试使用代码:
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"www.ggogle.com"]];
答案 0 :(得分:1)
使用XCTest打开safari是不可能的。我尝试过以下操作,它给出了错误"应用程序可访问性未加载"。
在Brigding-Header.h中声明XCUIApplication私有方法接口:
@interface XCUIApplication (Private)
- (id)initPrivateWithPath:(NSString *)path bundleID:(NSString *)bundleID;
- (void)resolve;
@end
然后尝试打开safari:
let safari : XCUIApplication = XCUIApplication(privateWithPath: nil, bundleID: "com.apple.safari")
safari.launch();
答案 1 :(得分:0)
NSURL *url = [NSURL URLWithString:@"http://www.stackoverflow.com"];
if (![[UIApplication sharedApplication] openURL:url]) {
NSLog(@"%@%@",@"Failed to open url:",[url description]);
}
答案 2 :(得分:0)
编写一个模拟[UIApplication openURL:]
的单元测试,并验证您是否正在向其传递正确的URL。或者,如果您想要其他方向,请编写一个单元测试,该测试将调用被叫顺序中的UIApplicationDelegate
方法,模拟您的应用打开链接。这是你可以使用XCUnit。并手动测试。
或尝试此
NSString *filePath = [[[NSBundle bundleForClass:[self class]] resourcePath] stringByAppendingPathComponent:@"YourFileName.json"];
XCTAssertNotNil(filePath);