Junit 4.x 单元测试,参数化测试,套件测试 实例
生活随笔
收集整理的這篇文章主要介紹了
Junit 4.x 单元测试,参数化测试,套件测试 实例
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
對下面三個類進行單元測試?,組成套件測試。
public class Calculate {public int add(int a, int b) {return a + b;}public int sub(int a, int b) {return a - b;} } public class Car {public int getWheels() {return 4;} } public class Rectangle{public int getArea(int width,int height){return width*height;} }?測試代碼:建議把測試代碼放在test源文件中
public class CalculateTest {Calculate calculate;@Beforepublic void setUp() throws Exception {calculate = new Calculate();}@Testpublic void testAdd() {int result = calculate.add(12, 12);assertEquals(24, result);}@Testpublic void testSub() {int result = calculate.sub(12, 12);assertEquals(0, result);}} public class CarTest {Car car;@Beforepublic void setUp() throws Exception {car = new Car();}@Testpublic void testGetWheels() {int result = car.getWheels();assertEquals(4, result);}} public class RectangleTest {Rectangle rectangle;@Beforepublic void setUp() throws Exception {rectangle=new Rectangle();}@Testpublic void testGetArea() {int result = rectangle.getArea(12, 2);assertEquals(24, result);} }測試套件代碼:
@RunWith(Suite.class) @SuiteClasses({ CalculateTest.class, CarTest.class, RectangleTest.class }) public class AllTests {}?
請用下面的參數對Calculate類的add方法進行參數化的測試
????????????? {2,1,1},
????????????? {2,0,2},
????????????? {0,2,-2},
@RunWith(Parameterized.class) public class CalculateTest2 {Calculate calculate;private int input1;private int input2;private int expected;@Parameterspublic static Collection prepareData() {Object[][] object = { { -1, -2, -3 }, { 0, 2, 2 }, { -1, 1, 0 },{ 1, 2, 3 } };return Arrays.asList(object);}public CalculateTest2(int input1, int input2, int expected) {this.input1 = input1;this.input2 = input2;this.expected = expected;}@Beforepublic void setUp() throws Exception {calculate = new Calculate();}@Testpublic void testAdd() {int result = calculate.add(input1, input2);assertEquals(expected, result);} }?
轉載于:https://www.cnblogs.com/taoweiji/p/3327876.html
總結
以上是生活随笔為你收集整理的Junit 4.x 单元测试,参数化测试,套件测试 实例的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Windows Phone开发(11):
- 下一篇: vss设置自动登录