趣旨
1つのサーバー(Mac)で複数のデバイスのテストを実行する環境構築を行う
android , iphone をappiumで実行する環境に関しては、それぞれの記事を参照のこと。
試してみてわかったこと
appium で複数デバイスを紐付けると不安定
最初、test環境で1つのappiumを立ち上げ、そこに複数のデバイスを接続していた。
client側からは、固定のappium server (IP address, port) と使いたい端末情報(capability)を指定して
テスト実行を行っていた。
この場合、端末Aでテスト実行後、端末Bでテストを行うと、appiumが不安定になり、テストが正しく実行されなかった。
appiumをずっと走らせていると不安定
appiumを常駐後、繰り返しテスト(失敗を含む)をするといつのまにかappiumが不安定になる
構築方針
- デバイス1に対してapium1を用意
- appiumを定期的に再起動
このため、clientはappiumのportとdeviceのcapabilityのセットで指定する必要が出てくる
まあ、こんな構築なので運用面では結構煩雑になってしまっている。
解決したいなぁ~