Я новичок в модульном тестировании / TDD, и у меня возникли проблемы с пониманием некоторых аспектов этого.Например, я не уверен, насколько завершенными должны быть тесты, представьте следующий сценарий.
Я пишу тест, чтобы убедиться, что я получаю правильные цены на продукт.Продукт может быть разных размеров и покупаться в определенных количествах.Цена продукта будет отражать размер и количество.
Например:
Продукт A имеет ценовую матрицу ниже (количество внизу и размер вдоль верха)
----------------------------
| | xs | s | m | l |
----------------------------
| 250| 10 | 20 | 50 | 100 |
----------------------------
| 500| 20 | 40 | 60 | 110 |
----------------------------
| 1000| 15 | 25 | 55 | 105 |
----------------------------
| 1500| 12 | 22 | 52 | 102 |
----------------------------
Теперь скажите, что я писал тесты для метода класса
Pricer.GetPrice(Product p, string size, int quantity)
Должен ли я тестировать для каждого продукта / размера / количества?как вы можете себе представить, это может означать большое количество тестов.
Если цены получены из хранилища данных и, следовательно, могут измениться, как вы делаете свои тесты правильными или это просто раздражает продукт?
Также есть ли у кого-нибудь хорошие ссылкичитайте по поводу написания тестов / TDD.Может быть, пройти через CRUD / Repositories, так как это похоже на сценарий типа курицы и яйца.