Вопрос

Как проверить метод, который взаимодействует с локальной шиной D-Bus (обращаясь к объекту HAL)?

Результаты тестов будут отличаться в зависимости от системы, в которой выполняется тест, поэтому я не знаю, как обеспечить надежный ввод метода.

Кстати, я работаю в Python.

Это было полезно?

Решение

Если вы не можете издеваться над окружающей средой, вы, вероятно, не сможете написать тест. Если ваш доступ к HAL / D-Bus осуществляется через объект, и вы предоставляете имитирующий экземпляр для своего теста, то должна быть возможность эмулировать необходимые входные данные для вашего теста из фиктивной реализации.

Другие советы

Также возможно создать временные шины D-Bus для тестов и эмулировать любые сервисы, которые ваша программа использует в вашем тестовом коде. Вы можете использовать этот подход для программ, которые являются услугами D-Bus, клиентами D-Bus или обоими. Недостатком является то, что настройка шины немного волосатая. Для этого существует код. в например Телепатия Габбл.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top