Страницы: 1
RSS
Как проводить юнит-тесты VBA проектов?
 
Добрый день,
Хотелось бы уточнить у коллег, сталкивался ли кто-то с автоматизированным тестированием vba-кода (юнит-тесты).
Есть ли какая-либо литература по этой теме, либо, возможно, пример такого теста?

Никогда не сталкивался ранее, хотелось бы понять общий принцип.  
Изменено: Igor D - 19.12.2019 13:17:16
 
Не сталкивался. Это нужно для каких целей? Если программа выдает ожидаемый результат во всех заказанных режимах работы - тест пройден)
«Бритва Оккама» или «Принцип Калашникова»?
 
Это один из вопросов в тестовом задании при трудоустройстве)
Необходимо реализовать такой тест после решения основного ТЗ.
 
Литературы конкретно по VBA не встречал, но общие принципы можно подсмотреть в других языках, например в Python.

Если очень хочется, то можно воспользоваться самописными фреймворками на просторах гитхаба:
* https://github.com/VBA-tools/vba-test
* http://rubberduckvba.com/UnitTesting - какое-то время активно пользовался, но после смены профессии перестал.

В конце концов есть debug.assert и debug.print (которыми я активно пользуюсь).

Далее мое мнение
Юнит-тестирование нужно, когда развиваешь большой (серьезный) проект, где код планируется использовать достаточно регулярно продолжительное время. Когда мы говорим о жалких 100-200 строках при низкой дисциплине написания, например, через Select → Selection и записи макрорекордера без последующего рефакторинга ни о каком нормальном тестировании не может быть и речи.

В идеале любое тестирование (будь то Unit, Integration, System, и т.д.) должно помогать
* в документировании кода,
* бесшовном внедрении,
* повышении уверенности стейкхолдеров в безотказности и корректности результатов отработки,
* автоматической отловке багов до commit'а.
С уважением,
Федор/Все_просто
Страницы: 1
Наверх