Я хотел бы задать простой вопрос о наилучшей практике методов тестирования. Допустим, у меня есть класс, как это,Зависимость метода JUnit
public static class MyClass {
private int num;
public MyClass(int num) {
this.num = add(num);
}
public int getNum() {
return num;
}
private int add(int num) {
return num + 1;
}
}
Что лучше написать один метод испытания, как этот
Assert.assertEquals(3, new MyClass(2).getNum());
или незавершенная метод добавления и написать тестовый метод для конструктора утверждать внутренний num значение и getNum отдельно? Я знаю, что это простой класс и не нужны такие осложнения для этого, но я хотел бы указать на проблему с помощью простого примера. Было бы хорошо, если вы объясните свой ответ, спасибо заранее.
Но это также означает, что это зависит от отражения для укусов частных методов и параметров класса. –
Вы тестируете UNIT - это означает, что вы проверяете ** внешний контракт ** этого класса. Если у вас есть частные методы, которые не добавляют к тому, что ваши общедоступные методы терпят неудачу или что-то не удается, это отключено. – Jan