Автоматические тесты Valgrind - они где-нибудь используются? - PullRequest
3 голосов
/ 27 мая 2009

Считаете ли вы, что запуск набора автоматических тестов на основе набора инструментов valgrind имеет смысл? Вы слышали или видели такую ​​установку в действии? Какие автоматические (без человеческой интуиции) действия могла бы выполнить такая установка?

1 Ответ

7 голосов
/ 27 мая 2009

Это имело бы смысл, если бы вы проверяли наличие проблем с памятью / плохой код как часть модульного тестирования или тестирования окончательной сборки. Может быть два подхода:

  1. написание инструмента тестирования, который будет использовать API-интерфейс valgrind через свою библиотеку, в значительной степени создавая пользовательский интерфейс, заменяющий исполняемый файл valgrind (кажется головной болью)
  2. Valgrind также может выводить XML для memcheck (опция --xml = yes)
  3. Используйте Ожидайте http://en.wikipedia.org/wiki/Expect, чтобы автоматизировать ваши действия командной строки valgrind и проверить вывод
  4. Написание сценариев оболочки, которые запускают valgrind и grep вывод
  5. Может быть, посмотрите на добавление этой функциональности к чему-то вроде DejaGNU , использующему wait и tcl

Возможно, эти инструменты могут автоматически создавать элементы ошибок в вашем трекере (хотя они могут быстро заполняться).

Сам ничего не видел, но как пользователь valgrind это было бы удобно. Если вы создаете что-то классное, возможно, запустите его как проект с открытым исходным кодом!

редактировать после небольшого поиска я нашел http://www.redhat.com/f/summitfiles/presentation/June2/Developer%20Tools/Cox,Malcom_Automated%20Testing.pdf

Что, похоже, охватывает автоматическое тестирование с использованием DejaGNU и Valgrind, как я предлагал выше

Удачи!

...