Я видел много теорий о Теории, но правда в том, что ни один из них не достаточно хорош, чтобы объяснить, почему не всегда использовать Теорию. Я не вижу причины (кроме ... ну ... что слова «Теория и Тест» - это не одно и то же), почему бы не всегда использовать теорию.NUnit Theory заменяет тест?
Самое забавное, что во всех примерах вы можете легко настроить тест как тест или теорию, и я уверен, что здесь что-то отсутствует, но я не вижу необходимости ставить себя в философскую неопределенность относительно того, какой тип атрибута я должен использовать.
Предположим, что разница заключается только ради самодокументированного кода. Тогда почему вы используете Datapoint и DatapointSource для теории и что-то еще для теста?
По правде говоря, я чувствую, что никто не пришел с простым и чистым ответом, который освещает, где разница действительно. По крайней мере, один пример, когда Теория абсолютно не имеет смысла, и Тест хорошо подходит, или наоборот ...
Как программист Я ..... Если ответ не прост, там что-то не так. помогите мне увидеть, чего я не вижу.
Ваш ответ очень убедителен. Тем не менее у меня есть несколько вопросов (только потому, что я хочу узнать больше), но я думаю, что я получил общую идею.Ну, мой вопрос: если вы можете ограничить ввод теорией через точки данных, разве вы не превращаете теорию в тест в конце концов? –
Да, в теории. :-) – Charlie
В некотором роде выбор datapoints делает подход менее «чистым», но на практике, потому что в Теории используются точки данных, которые он обнаруживает для каждого аргумента комбинаторно, вы получаете проблемы, которые вы не видели. Конечно, вы также можете использовать случайные параметры для создания еще большего количества данных. – Charlie