เมื่อใดก็ตามที่ฉันเห็นบล็อกโพสต์ที่เกี่ยวข้องกับการทดสอบฤดูใบไม้ผลิฉันเห็นชั้นเรียนเหล่านี้ แต่ไม่เข้าใจความแตกต่างที่แท้จริง:
@RunWith(SpringRunner.class)
@RunWith(SpringJUnit4ClassRunner.class)
เมื่อใดก็ตามที่ฉันเห็นบล็อกโพสต์ที่เกี่ยวข้องกับการทดสอบฤดูใบไม้ผลิฉันเห็นชั้นเรียนเหล่านี้ แต่ไม่เข้าใจความแตกต่างที่แท้จริง:
@RunWith(SpringRunner.class)
@RunWith(SpringJUnit4ClassRunner.class)
คำตอบ:
ไม่มีความแตกต่างจาก javadoc:
SpringRunner เป็นนามแฝงสำหรับ SpringJUnit4ClassRunner
@RunWith(SpringRunner.class)บอกให้ JUnit ทำงานโดยใช้การสนับสนุนการทดสอบของ Spring SpringRunnerเป็นชื่อใหม่SpringJUnit4ClassRunnerมันง่ายกว่าในสายตา
SpringRunner ใช้ได้เฉพาะในการทดสอบสปริง 4.3 เท่านั้น
SpringRunnerSpringJUnit4ClassRunnerระดับขยาย
ซอร์สโค้ดของSpringRunneris
package org.springframework.test.context.junit4;
import org.junit.runners.model.InitializationError;
public final class SpringRunner extends SpringJUnit4ClassRunner {
public SpringRunner(Class<?> clazz) throws InitializationError {
super(clazz);
}
}
SpringRunner SpringJUnit4ClassRunner