Xamarin.iOS & Android App Center ハンズオン勉強回復習
iOS11
以上の iPhone 実機
とあり、古い端末しか持っていないので、iOS端末を持たずに参加しましたが、端末に合わせた設定にすることにより実機でのアプリ実行と App Center
でのUIテストまで確認出来たので備忘として残しておきます。
GitHub - TomohiroSuzuki128/XamAppCenterSample2018が当日のテキストですが、独自に変更が必要な箇所のみ以下に記載します。
1. 手持ちの端末
まずは、手持ちの端末の確認から
-
iPod touch (5th generation) : iOS 9.3.5 (13G36)
2. ダミーのプロジェクトの設定
「Xcode でのダミーアプリ実行」で作成するダミーアプリの Deployment Target
を端末のOSバージョンに合わせて 9.3
に設定する。
3. Xamarin プロジェクトの設定
Xamarin
で作成する iOS
アプリのプロジェクト設定も変更する。
3.2. アーキテクチャ設定
iOSプロジェクト
の オプション
を開いて
サポートされるアーキテクチャを ARMv7
に設定する。
ARMv7 を含んでいれば ARMv7 + ARMv7s 等を選んでも大丈夫なはず
|
4. App Center の New test run
App Center
の New test run
で選択するデバイスは 10.0.3
または 10.0.2
とする。
それ以外の 10.2.1
, 10.1.1
は以下のようになりテストに失敗する。
10.2.1
または 10.1.1
の場合
image::xamarin_handson/2a63d1b4.png[]
10.3.3
は以下のように謎なメッセージが
10.3.3
の場合実機のOSバージョンに合わせて 9.3.5
のデバイスを選択すると、以下のようなエラーが出てテストに通りません。
EnterText
が日本語に対応していないようです。
1System.Exception : Error while performing EnterText("私は毎日電車に乗って会社に行きます。")
2 ----> System.Exception : Underlying query failed with output: ...snip... Error: VerboseError: target.frontMostApp().keyboard() failed to locate key '\u79c1' typeString@[native code]
5. その他
端末で単体テストを実行したときに次のエラーが出たときは、一端端末から DeviceAgent-Runner
を削除するとテストが実行出来ました。
1SetUp : Xamarin.UITest.XDB.Exceptions.DeviceAgentException : Failed to launch DeviceAgent