قد تكون محاولة التعامل مع حالات فشل الاختبار المتكررة بسبب الإجراءات الحساسة للوقت في مجموعات الاختبار الكبيرة أمرًا محبطًا. والخبر السار هو أنه يمكنك تنفيذ TestRule لإعادة محاولة الاختبارات الفاشلة.
تمنحك قاعدة الاختبار التحكم في تنفيذ الاختبار. لإنشاء RetryRule، حدد فئة مثل هذا:
public class RetryTest {
public class RetryRule implements TestRule {
...
public Statement apply(Statement base, Description description) {
...
}
...
}
}
في طريقة التطبيق، أدخل منطق إعادة المحاولة حول مكالمة الاختبار باستخدام base.evaluate() المقدم:
public Statement apply(Statement, Description) {
return new Statement() {
@Override
public void evaluate() throws Throwable {
...
for (int i = 0; i استخدام قاعدة إعادة المحاولة
ضع تعليقًا توضيحيًا على فصل الاختبار الخاص بك باستخدام القاعدة مثل هذا:
...
@Rule
public Retry rule = new Retry(3);
...
خيارات أخرى
Custom TestRunner:
بدلاً من ذلك، يمكنك إنشاء TestRunner مخصص يمتد إلى BlockJUnit4ClassRunner ويتجاوز runChild() للتنفيذ آلية إعادة المحاولة.
ملاحظة:
- تسمح لك قاعدة إعادة المحاولة بتحديد عدد مرات إعادة المحاولة، بينما لا يسمح لك TestRunner المخصص بذلك.
- يمكنك أيضًا استخدام التعليقات التوضيحية لتطبيق منطق إعادة المحاولة بشكل انتقائي.
تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.
Copyright© 2022 湘ICP备2022001581号-3