Есть некая утилита, обрабатывающая текстовые файлы. Обычно на вход идут tsv, а результат — в виде текстовых XML файлов. Нужно как-то тестировать правильность полученных XML-файлов — количество записей, правильность преобразований и т.д. Инструмент работает через командную строку.
Посоветуйте какой-нибудь удобный инструмент для написания тестов для этой утилиты.
Сейчас используются обычные юниттесты на C# — я написал простой базовый класс, который при инициализации копирует все нужные библиотеки и текстовые файлы, потом запускает процесс с нужными ангументами и проверяет результат. Но проблема в том, что очень сложно всё это поддерживать — файлы приходится прописывать вручную куда-то в local.testsettings, юниттест получается трудночитаемым.
Здравствуйте, Artem Korneev, Вы писали:
AK>Сейчас используются обычные юниттесты на C# — я написал простой базовый класс, который при инициализации копирует все нужные библиотеки и текстовые файлы, потом запускает процесс с нужными ангументами и проверяет результат. Но проблема в том, что очень сложно всё это поддерживать — файлы приходится прописывать вручную куда-то в local.testsettings, юниттест получается трудночитаемым.
1. Тесты NUnit запускаются из каталога текущего билда. Достаточно указывать для файла "Copy to output dir".
2. Не понимаю, как связана читаемость теста с прописыванием в local.testsettings.
Здравствуйте, samius, Вы писали:
S>1. Тесты NUnit запускаются из каталога текущего билда. Достаточно указывать для файла "Copy to output dir".
Этот тест нельзя запустить в каталоге текущего билда. Приходится копировать всё это в %systemdisk%\temp\ и там запускать. Кроме того, нужно копировать кучу сторонних бинарников, которые предоставляют эмуляцию платформы для запуска.
То, что тестируется, к шарпу практически никакого отношения не имеет и тестировать это из студии довольно-таки неудобно. Поэтому я и ищу другой инструмент. По сути это не юниттест, а тест приложения. В студии я уже создал юниттест, он работал. За полгода кто-то (может быть я) что-то поменял и отвалился деплоймент нужного xaml-файла. Думается мне, что лучше найти более пригодный инструмент для тестирования приложения, нежели разбираться, где там копирование отвалилось.