D-BusとHALの単体テスト?
-
05-07-2019 - |
質問
ローカルD-Bus(HALオブジェクトへのアクセス)とのやり取りを行うメソッドをどのようにテストしますか?
テストの結果は、テストが実行されるシステムによって異なるため、メソッドの信頼できる入力を提供する方法がわかりません。
私は、Pythonで作業しています。
解決
環境をモックできない場合、テストを作成することはおそらく不可能です。 HAL / D-Busへのアクセスがオブジェクトを介しており、テストにモックインスタンスを提供する場合、モック実装からテストへの必要な入力をエミュレートできるはずです。
他のヒント
テスト用の一時的なD-Busバスを作成し、プログラムがテストコードで使用するサービスをエミュレートすることもできます。このアプローチは、D-Busサービス、D-Busクライアント、またはその両方であるプログラムに使用できます。欠点は、バスのセットアップが少し毛深いことです。これを行うためのコードがありますなどテレパシーギャブル。
所属していません StackOverflow