Сейчас написано несколько тестов на Microsoft Native Test Framework, но он не слишком удобен. Для запуска тестирования нужен либо dll/stl, т.е. надо сначала это собирать. А если exe, то тут ещё хуже, надо добавлять исходники в проект. В общем, как-то непонятно.
Надо бы перенести на какую-нибудь кросс-платформенную штуку. Из того, что знаю:
- Google Test
- Boost.Test
- CTest
- Catch2
Но это не обязательный список, если найдётся что-то удобнее и круче, то это возьмём.
В общем, цель такая: после внесения изменений надо по клику (или по запуску команды в консоли) запустить тесты, чтобы они выдали какие прошли, какие зафейлились. И желательно, чтобы их отлаживать можно было, т.е. отладчиком полазить во время выполнения.
Сейчас тесты живут в проекте BarcodeTests в папке PrjTests. Там в файле BarcodeTests.cpp написано несколько. Их надо перенести на новую систему или адаптировать.
В общем, в итоге шаги следующие:
0. Создать ветку, где будут все изменения.
- Выбрать новую систему тестирования по следующим критериям: кроссплатформенность, простой запуску, отлаживаемость;
- Перенести тесты на новую систему и закоммитить в втеку.
- Проверить, что всё работает.
- Создать Pull Request. Если всё ОК -- волью.
Все обсуждения проводить в этом issue.
Сейчас написано несколько тестов на Microsoft Native Test Framework, но он не слишком удобен. Для запуска тестирования нужен либо dll/stl, т.е. надо сначала это собирать. А если exe, то тут ещё хуже, надо добавлять исходники в проект. В общем, как-то непонятно.
Надо бы перенести на какую-нибудь кросс-платформенную штуку. Из того, что знаю:
Но это не обязательный список, если найдётся что-то удобнее и круче, то это возьмём.
В общем, цель такая: после внесения изменений надо по клику (или по запуску команды в консоли) запустить тесты, чтобы они выдали какие прошли, какие зафейлились. И желательно, чтобы их отлаживать можно было, т.е. отладчиком полазить во время выполнения.
Сейчас тесты живут в проекте BarcodeTests в папке PrjTests. Там в файле BarcodeTests.cpp написано несколько. Их надо перенести на новую систему или адаптировать.
В общем, в итоге шаги следующие:
0. Создать ветку, где будут все изменения.
Все обсуждения проводить в этом issue.