Организация тестирования в модульном тестировании - PullRequest
2 голосов
/ 26 января 2012

Я изучаю модульное тестирование и пытаюсь понять, где части соединяются вместе.

Скажем, у меня есть что-то вроде:

public class CarTest {

    public CarTest() {
    }

    @BeforeClass
    public static void setUpClass() throws Exception {
    }

    @AfterClass
    public static void tearDownClass() throws Exception {
    }

    @Before
    public void setUp() {
    }

    @After
    public void tearDown() {
    }

    /**
     * Test of toString method, of class Car.
     */
    @Test
    public void testToString() {
        System.out.println("toString");
        Car instance = new Car(1, 2);
        String expResult = "1/2";
        String result = instance.toString();
        assertEquals(expResult, result);
    }
}

Скажем, у меня разные автомобилиМне нужно проверить.Может быть, вызов конструктора one должен иметь два отрицательных числа и т. Д. Куда идут различные «дела»?Мне нужно запустить testToString () для каждого из них, и я не хочу копировать и вставлять 5 разных машин / заявлений для каждого метода, который мне нужно запустить.Хранить ли их все в массиве тестового класса и встроить ли они в каждый метод setUp () или что-то в этом роде?

1 Ответ

1 голос
/ 26 января 2012

Создать параметризованный тест.Это позволяет вам запускать один тестовый класс для разных предметов:

http://www.mkyong.com/unittest/junit-4-tutorial-6-parameterized-test/

Это даже про автомобили:

http://techinsides.blogspot.com/2010/08/dont-repeat-yourself-junit-4s.html

Илибез использования параметризованного питателя:

параметризованный тест jUnit без смены бегуна

...