В настоящее время у меня есть следующий метод:
public void SetNewRandomValue() {
double newValue = numberGenerator.GenerateDouble(
genesValuesInterval.MinimumValue,
genesValuesInterval.MaximumValue
);
this.value = newValue;
}
Какими должны быть рекомендации для определения того, сколько тестов (и какие тесты) необходимо выполнить для этого метода?В настоящее время я сделал следующее (только после реализации метода - то есть, не для первого теста):
var interval = new Interval(-10, 10);
var numberGeneratorMock = new Mock<INumberGenerator>(MockBehavior.Strict);
var numberGenerator = numberGeneratorMock.Object;
double expectedValue = 5.0;
numberGeneratorMock.Setup(ng =>
ng.GenerateDouble(interval.MinimumValue, interval.MaximumValue))
.Returns(expectedValue);
var gene = new Gene(numberGenerator, 0, new Interval(-10, 10));
gene.SetNewRandomValue();
Assert.AreEqual<double>(expectedValue, gene.Value);
, который в основном просто тестирует одну ситуацию.При регрессионном тестировании я бы сказал, что не могу придумать, как испортить код, превратить его в некорректно работающий код и все же пройти тест, то есть, я думаю, что метод выглядит прилично покрытым.
Что вы думаете по этому поводу?Как бы вы справились с этим маленьким методом?
Спасибо