سؤال

ولقد اثنين من الاختبارات للتأكد من رمي استثناء المتوقع. أنا أستخدم أداة JUnit 4 وبناء الجملة التالي.

@Test(expected=IllegalArgumentException.class)
public void testSomething(){
..........
}

واحدة من التجارب تفشل على الرغم من أن يتم طرح IllegalArgumentException والممرات الأخرى. أي فكرة ماذا يكون في عداد المفقودين ؟؟ I تعديل الاختبار الذي فشلت في التالية وأنه يمر.

public void testSomething(){
 try{
  ............ //line that throws exception
  fail();
 }catch(IllegalArgumentException e) {
 }
} 
هل كانت مفيدة؟

المحلول

وPrithis مجرد شيء لاحظت الاختبار الثاني لايوجدTest الشرح على الإطلاق. JUNIT4 لا يعمل الاختبارات التي لم يتم المشروح حتى لو كانت بدايات أسماء الأسلوب مع اختبار *** (ما لم يكن بالطبع كنت فعلا توسيع الطبقة TestCase في هذه الحالة يتصرف مثل testcase JUNIT3.x)

وربما كان هذا هو الحال أن الاختبار لا يعمل على الإطلاق (وبالتالي يجعلك تعتقد أنه يمر)؟

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top