Разработка API модульного тестирования
-
14-10-2019 - |
Вопрос
Привет, мне было назначено задача изучения модульных тестирования с использованием инструментов, доступных на рынке. У меня вопрос, как мне написать API, который поможет в написании тестовых случаев. Пример я могу использовать NUNIT, чтобы написать что -то подобное, чтобы проверить, существует ли файл в данном месте.
<Test()> _
Public Sub CheckOutputFileInfo()
ReportPath = "D:temp\test.txt"
Dim result As Boolean
result = File.Exists(ReportPath)
Assert.IsTrue(result)
End Sub
Я понимаю, что это не лучший пример, но мой вопрос заключается в том, как мне включить NUNIT и разработать API, чтобы другие разработчики/тестеры могли писать тестовые примеры, не беспокоясь о том, чтобы узнать о NUNIT. К вашему сведению, я никогда не писал API, это будет мой первый выстрел в него. Какие -либо рекомендации о том, с чего начать ?? Благодарность
Решение
Ваш пример не является строго единичным тестом, поскольку он попадает в файловую систему.
Тест не является модульным тестом, если:
- Он разговаривает с базой данных
- Он общается по всей сети
- Он касается файловой системы
- Он не может работать одновременно с любыми другими вашим модульным тестом
- Вы должны делать особые вещи с вашей средой (например, редактирование файлов конфигурации) для ее запуска.
Я бы посоветовал вам изучать передовые практики и шаблоны для тестирования модуля, прежде чем начать попытаться заставить ваших разработчиков начало тестирования блока. Из опыта кто -то должен защищать единичные тестирование, полностью схватившись с этим сами. Это сэкономит вам много головных болей в долгосрочной перспективе.
Вот отличная книга, чтобы начать вас:
Другие советы
Я думаю, что вам лучше позволить разработчикам использовать NUNIT. Это уже красиво спроектировано и гибко. Если вы хотите облегчить жизнь своим разработчикам, попробуйте построить несколько вспомогательных классов, которые настраивают тестовые объекты и образцы данных в конфигурациях, которые необходимы для множества различных тестов. Может попробовать что -то вроде Метод создания. Анкет Это из действительно хорошей книги под названием Тестовые шаблоны XUNIT Это описывает множество способов облегчения тестового кода для написания, чтения и обслуживания. Большая часть книги доступна в Интернете, и Краткий тур это хорошее место для начала.
Почему вы хотите это сделать? NUNIT и большинство альтернатив действительно просты для изучения и использования. Задача в написании модульных тестов заключается не в освоении API, а в том, чтобы написать хорошие тесты и тестируемый код.
Чтобы эффективно использовать NUNIT, вам нужно только знать атрибуты теста и теста и настройки и узнать доступные утверждения в классе Assert. Это действительно просто!
Поэтому я бы порекомендовал вам сосредоточиться на том, как написать хорошие тесты и как написать код, который легко тестировать. Обе темы сложны, и есть чему поучиться.