Gar*_*lph 9 unit-testing ocmock flurry ios xctest
我们正在尝试创建一个单元测试(使用OCMock,虽然对其他框架开放),这样可以模拟一个在类加载时产生副作用的类.
我们有一个跟踪类,可以调用其他跟踪库,如Flurry.
许多其他跟踪库(特别是Flurry)在类初始化时执行代码.
单元测试失败,因为代码无法在单元测试环境中执行.理想情况下,我们想用mock/stub替换Flurry类.
- (void) testConstruction {
[Flurry class];
}
Run Code Online (Sandbox Code Playgroud)
当调用此代码时,它会尝试使用SCNetworkReachability和接收exceptions...
我们如何存根/模拟对具有如下静态实现的Flurry的调用?
[Flurry setAppVersion:@"1.0"];
[Flurry setCrashReportingEnabled:NO];
Run Code Online (Sandbox Code Playgroud)
我将从用于测试的构建配置中删除 Flurry(将其从框架搜索路径/库搜索路径中删除)。我将通过获取 Flurry 头文件并使用空方法创建我自己的实现来创建我自己的虚拟 Flurry。最后,如果我关心 Flurry 被调用,我会使用 OCMock 来模拟我的假类。
| 归档时间: |
|
| 查看次数: |
279 次 |
| 最近记录: |