2008-11-28 1 views
5

Я собираюсь внести некоторые изменения в существующий модуль Apache C, чтобы исправить некоторые возможные недостатки безопасности и общие плохие методы. Однако функциональность кода должна оставаться неизменной (за исключением случаев, когда исправление ошибки). Кажется, что в стандартном регрессионном тестировании. Я хотел бы знать, знает ли кто-нибудь о хорошем способе повторного запуска некоторых тестов регрессии. Я думаю что-то вроде использования C-Unit, но со всеми связями с APR и структурами состояния Apache мне было интересно, есть ли хороший способ проверить это. Существуют ли какие-либо предварительно построенные фреймворки, которые можно использовать с C-модулем, например?Есть ли среда для запуска модульных тестов на модулях Apache C?

Благодаря

Питер

ответ

7

Я думал отвечать за это время, но фигурные кто-то другие могли бы придумать лучший ответ, потому что у меня это довольно неудовлетворительный: нет, я не осознавая какую-либо такую ​​модульную систему тестирования.

Я думаю, что лучше всего попробовать и реорганизовать свой C-модуль таким образом, чтобы его зависимости от базы кода httpd содержались в очень тонком слое клея. Я бы не стал слишком беспокоиться о зависимостях от APR, которые можно легко связать с вашим модульным тестовым кодом. Это похоже на использование записи запроса, которую вы должны попытаться немного абстрагироваться.

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

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

Итак, не ответ, который вы искали, и вы, вероятно, сами подумали о чем-то в этом направлении. Но, по крайней мере, я могу сказать вам по опыту, что если модуль не может быть заменен чем-то новым по соображениям бизнеса, то рефакторинг его для проверки будет, скорее всего, окупиться в долгосрочной перспективе.

1

Прошло некоторое время, оглядываясь вокруг межотраслев для вас, поскольку я задал себе вопрос. наткнулся на вики-статью о том, что

http://cutest.sourceforge.net/

был использован для апача портативного тестирования с выполнения. может стоить проверить это.

 Смежные вопросы

  • Нет связанных вопросов^_^