我使用MockRetrofit(改进2快照4)来模拟服务器apis。MockRetrofit不允许避免网络错误
NetworkBehavior networkBehavior = NetworkBehavior.create();
networkBehavior.setFailurePercent(1);
networkBehavior.setDelay(500, TimeUnit.MILLISECONDS);
MockRetrofit mockRetrofit = new MockRetrofit.Builder(retrofit)
.networkBehavior(networkBehavior)
.build();
BehaviorDelegate<FinderCommonApis> delegate = mockRetrofit.create(FinderCommonApis.class);
finderCommonApis = new MockFinderCommonApis(delegate);
我也在我的测试用例中使用这个模拟。由于NetworkBehavior
,我的测试案例间歇性失败。它引入了导致间歇性故障的网络错误。我想完全避免这种网络错误,但看起来我完全可以避免这种错误。我甚至试图设置失败百分比为0,但它不允许。因此,我将可能的最低值设置为1.他们在MockRetrofit.Builder
中设置NetworkBehavior
为可选项,但它提供了自己的默认值NetworkBehavior
,这也引入了相同的网络错误。我检查了NetworkBehavior
代码,并且他们已经完成了最终的课程,所以我无法覆盖它。我想尽办法避免这个问题。
我只想知道如何完全避免NetworkBehavior。
你是对的。一些如何混合-1和0.它正在工作。感谢您的及时回复 – Rakesh