Автоматическое тестирование привилегированных операций
-
29-09-2020 - |
Вопрос
Как вы используете тестовый код единицы / интеграции, который требует другого уровня привилегии, чем существует в вашей непрерывной среде интеграции?
в моем неруните, CCRB - Среда на сборку, у меня есть несколько полезных функций, которыеПредположим, что привилегии, которые не содержат в моей автоматической среде сборки: либо корневые привилегии, либо специальные счета и группы.(Например, одна функция изменяет UID / GID и дополнительные группы до указанной учетной записи, изменяет корневой и текущий рабочий каталог и разводы от любого контролирующего терминала.)
, конечно, мы могли бы запустить тесты вручную, но тогда мы могли бы забыть запустить их.
Как другие решают эту проблему?
Решение
Я бы попытался учитывать код управления безопасностью за издевателем интерфейса, так что в модульных тестах я могу предоставить поддельные привилегии, однако я хочу.
Таким образом, можно было бы проверить оба, что запрещает необходимые привилегии. Функция не удалась, и что с привилегиями предоставлено, это делает то, что он должен делать.
Без более конкретных деталей трудно сказать больше.