OGeek|极客世界-中国程序员成长平台

标题: ios - XCTestCase 带互联网连接案例 [打印本页]

作者: 菜鸟教程小白    时间: 2022-12-12 11:30
标题: ios - XCTestCase 带互联网连接案例

我正在编写一个在线和离线功能分开的应用程序。在这些功能中,我使用 Reachability 来检查互联网连接,并且对于每种情况(在线/离线),它的工作方式不同。

现在,我被要求为这些业务逻辑编写测试用例。我到处搜索,但似乎没有人关心 iOS 中的测试用例。

我想编写涵盖在线/离线案例的测试用例。在iOS中可以吗?如果是这样,如何模拟互联网连接状态?

更新问题:

我还想介绍从在线切换到离线的案例,反之亦然。应该有办法模拟这种网络连接状态吧?



Best Answer-推荐答案


您应该使用 OCMock 模拟返回值

id reachabilityMock = OCMClassMock([Reachability class]);
[OCMStub([reachabilityMock currentReachabilityStatus]) andReturnValue(ReachableViaWiFi)];
[OCMStub([reachabilityMock reachabilityForInternetConnection]) andReturn:reachabilityMock];
Reachability *reachability = [Reachability reachabilityForInternetConnection];
XCTAssertEqual(reachability.currentReachabilityStatus, ReachableViaWiFi);

然后手动发送可达性更改通知。

[[NSNotificationCenter defaultCenter] postNotificationName: kReachabilityChangedNotification object: noteObject];

关于ios - XCTestCase 带互联网连接案例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37539299/






欢迎光临 OGeek|极客世界-中国程序员成长平台 (http://ogeek.cn/) Powered by Discuz! X3.4