Автоматизированное тестирование привилегированных операций - PullRequest
2 голосов
/ 26 июля 2010

Как вы тестируете код модуля / интеграции, который требует уровня привилегий, отличного от того, который существует в вашей среде непрерывной интеграции?

В моей среде без полномочий root, CCRB , яУ меня есть некоторые служебные функции, которые принимают привилегии, которые не сохраняются в моей среде автоматической сборки: привилегии root или специальные учетные записи и группы.(Например, одна функция изменяет UID / GID и дополнительные группы на указанную учетную запись, изменяет корневой и текущий рабочий каталог и отсоединяет от любого управляющего терминала.)

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

Как другие решают эту проблему?

1 Ответ

0 голосов
/ 26 июля 2010

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

Без более конкретных подробностей трудно сказать больше.

...