Модульное тестирование кажется более или менее решенной проблемой, поэтому все три пакета, вероятно, будут соответствовать вашим потребностям. Между ними есть тонкие различия:
RUnit
основан на xunit, и поэтому его легко понять, если вы использовали какие-либо его версии с других языков.
svUnit
использует те же тесты, что и RUnit, но включает графический интерфейс для интерактивного использования.
testthat
не совместим ни с одним, но включает в себя практически те же функции и может проверять выполнение тестов только на тех файлах, которые не были изменены, что полезно для тестирования больших проектов.
Несколько лет спустя ...
RUnit
и svUnit
до сих пор не имеют ни проверок на сообщения и предупреждения, ни тестовое кэширование, и, похоже, не находятся в стадии разработки, поэтому testthat
должен быть вашим первым выбором для новых проектов. Вы можете конвертировать RUnit
тесты в testthat
тесты, используя мой пакет runittotestthat
.