Как я должен разделить эти функции на отдельные случаи, когда они взаимосвязаны? - PullRequest
0 голосов
/ 06 июня 2018

Скажем, я хочу проверить функциональность загрузки.

  1. Пользователи могут загружать несколько файлов.
  2. Файлы группируются по дате и помещаются в папки с датой в качестве имени.Например, 2018-06-04, 2018-06-03 ....
  3. Пользователи могут загружать только определенные файлы, например, JPEG, PDF ...

Должен ли я проверить их отдельноили сгруппировать их и проверить сразу?При тестировании варианта 1 случай 2 также включается в логику, верно?Если я проверю случай 3, случай 1 и случай 2 также будут включены в логику.Если я тестирую их вместе в одном случае, тестовый пример кажется слишком толстым.

Если я не включу логику случая 2 при записи случая 1, весь тест в конечном итоге не пройден, поскольку файлы не группируютсяпо дате

Как мне поступить?

1 Ответ

0 голосов
/ 06 июня 2018

в идеале каждый тест должен проверять только одну функцию.таким образом:

  1. при изменении требований вам придется изменить только один тест
  2. ваша оперативная документация (тесты) будет более конкретной и понятной

Если я проверю случай 3, случай 1 и случай 2 также будут включены в логику

на самом деле.если вы проверите, может ли пользователь загружать только jpg, вам все равно, где будут сохраняться файлы.вам просто нужно проверить, что пользователь может выбирать только определенные расширения, и этот сервер будет отклонять другие.вам даже не нужно включать компонент сохранения файла в тест.

другая вещь - наличие некоторой вспомогательной функции, которая подготовит данные для загрузки и будет использоваться большинством тестов

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...