我使用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