Question

Comment teste-t-on une méthode qui effectue certaines interactions avec le D-Bus local (accès à un objet HAL)?

Les résultats des tests varieront en fonction du système sur lequel le test est exécuté. Je ne sais donc pas comment fournir à la méthode une entrée fiable.

Je travaille en Python, au fait.

Était-ce utile?

La solution

Si vous ne pouvez pas vous moquer de l'environnement, il vous sera probablement impossible d'écrire le test. Si vous accédez à HAL / D-Bus via un objet et que vous fournissez une instance fictive à votre test, il devrait être possible d'émuler les entrées nécessaires à votre test à partir de l'implémentation fictive.

Autres conseils

Il est également possible de créer des bus D-Bus temporaires pour les tests et d'émuler tous les services utilisés par votre programme dans votre code de test. Vous pouvez utiliser cette approche pour les programmes qui sont des services D-Bus, des clients D-Bus ou les deux. L'inconvénient est que la configuration du bus est un peu poilue. Il existe un code pour le faire. dans par exemple Télépathie Gabble.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top