物理iOSデバイスでテストするためのMac上の準備
物理iOSデバイスでテストするためには、Mac上に Silk Test Information Service をインストールした後、追加の作業をする必要があります。
Apple Developer Program (有償)の契約がある場合と、契約がない場合とで手順が異なりますので、それぞれの場合について、手順を記載します。
なお、契約がない場合、無償のApple ID アカウントを使用することになりますが、
このアカウントに付随して何らかの問題が発生した場合には、お客様ご自身で対応して頂くことになります。
Apple社の仕様変更等により予告なく使用できなくなる等の可能性もございますので、
弊社としましては、Apple Developer Program (有償)の契約をおすすめいたします。
Apple Developer Program の契約がある場合
1.Xcodeがインストールされていることを確認します。
以下のコマンドでインストールされているXcodeのバージョンを確認します。
xcodebuild -version
Silk Testのリリースノートを参照し、サポートされているXcodeのバージョンであることを確認します。
なお、複数のバージョンのXcodeを同時にインストールしている場合には、xcode-select コマンドによりサポートされているXcodeのバージョンへ切り替えを必ず行ってください。
例えば、以下のコマンドになります。
sudo xcode-select --switch /Applications/Xcode1121.app
2.Xcode 上で Apple Developer Program のアカウントを確認します。
Xcodeを起動し、メニューの Xcode > Preferences を表示して、Accounts タブにアカウントがあることを確認します。
アカウントがない場合には、画面左下+ボタンをクリックして、[Add Apple ID]を選択し、Apple Developer Program の Apple ID でサインインします。
3.Xcode 上で Certificates を確認します。
Preferrences 画面上の [Download Manual Profiles] をクリックし、ダウンロードを行います。
次に、[Manage Certificates]をクリックし、有効な[iOS Development Certificates]が存在していることを確認します。
存在していない場合には、Apple Developer Programのご契約者様にご相談ください。
Xcodeを終了します。
4.iOSデバイスをUSB接続します。
MacにiOSデバイスをUSB接続します。
iOSデバイス上に「このコンピュータを信頼しますか?」が表示されますので、[信頼]を選択します。
Mac上に「このコンピュータがiOSデバイス上の情報にアクセスするのを許可しますか?」が表示されますので許可します。
5.Silk Test Configuration Assistant を起動します。
Mac のメニューバーから Silk Test の [Configuration Assistant] を起動し、[開始]ボタンを押します。
6.モバイル設定を行います。
適切なプロビジョニングプロファイルとターゲットとなるiOSデバイスを選択し、[テストを実行して設定の確認]ボタンを押して、結果を確認します。
プロビジョニングプロファイルは、Type が「iOS Development」、かつ App ID が「com.*」である必要があります。
有効なプロビジョニングプロファイルがない等の場合には、Apple Developer Programのご契約者様にご相談ください。
なお、このプロビジョニングプロファイルは、Silk Test内部で使用しているオープンソースWebDriverAgentのビルドのためのみに使用されます。Silk Testはお客様のアプリ(.ipa)に一切変更を加えることはいたしません。
Apple Developer Program の契約がない場合
代替として無償のApple ID のアカウントを使用します。Apple ID の作成方法は以下をご参照ください。
https://support.apple.com/ja-jp/HT203993
【注意】このアカウントでビルドしたアプリは一週間を経過すると起動できななくなりますので、一週間ごとに下記手順4以降の作業をやり直す必要があります。
1.Xcodeがインストールされていることを確認します。
以下のコマンドでインストールされているXcodeのバージョンを確認します。
xcodebuild -version
Silk Testのリリースノートを参照し、サポートされているXcodeのバージョンであることを確認します。
2.Xcode 上で Apple ID のアカウントでサインインします。
Xcodeを起動し、メニューの Xcode > Preferences を表示して、Accounts タブを選択します。
画面左下+ボタンをクリックして、[Add Apple ID]を選択し、作成した Apple ID でサインインします。
3.Xcode 上で Certificates を追加します。
Preferrences 画面上の [Download Manual Profiles] をクリックし、ダウンロードを行います。
次に、[Manage Certificates]をクリックし、有効な[iOS Development Certificates]が存在していることを確認します。
存在していない場合には、Apple Developer Programのご契約者様にご相談ください。
Xcodeを終了します。
4.iOSデバイスをUSB接続します。
MacにiOSデバイスをUSB接続します。
iOSデバイス上に「このコンピュータを信頼しますか?」が表示されますので、[信頼]を選択します。
Mac上に「このコンピュータがiOSデバイス上の情報にアクセスするのを許可しますか?」が表示されますので許可します。
5.Xcode で WebDriverAgent をビルドします。
Finder上で以下のファイルをダブルクリックし、Xcode で WebDriverAgent のプロジェクトを開きます。
/Applications/Silk/Mobile/common/Appium/node_modules/appium-webdriveragent/WebDriverAgent.xcodeproj
Xcode のメニュー [Product] > [Destination] にて、接続したiOSデバイスを選択します。
TARGETS リストから、WebDriverAgentLib ターゲットを選択し、Signing & Capabilities タブを選択します。
[Automatically manage signing] をチェックし、[Team] に先ほど作成したアカウント(Personal Team)を選択します。
TARGETS リストから、WebDriverAgentRunner ターゲットを選択し、Build Settings タブを選択します。
Product Bundle Identifier の値「com.borland.WebDriverAgentRunner」の「com.borland」の部分を任意の文字列に変更します。
所有しているドメイン名である必要はありませんが、世界中のiOSアプリ開発者と重複しない文字列でなければなりません。
Signing & Capabilities タブを選択します。
[Automatically manage signing] をチェックし、[Team] に先ほど作成したアカウント(Personal Team)を選択します。
この画面上にエラーメッセージが表示された場合には、Product Bundle Identifier の値が重複している可能性があります。
エラーが発生しないような別の文字列を設定し直してください。
設定が完了したら、Xcode を終了します。
ターミナルを起動し、以下のコマンドでビルドを実行し、ビルドが成功するこをと確認します。
$ idevice_id -l
※ USB接続したiOSデバイスのUDID (Unique Device ID) が表示されます。
$ cd /Applications/Silk/Mobile/common/Appium/node_modules/appium-webdriveragent
$ xcodebuild -project WebDriverAgent.xcodeproj -scheme WebDriverAgentRunner -destination 'id=<udid>' test
※ <udid> は上で表示された UDID で置き換えます。
6.Silk Test Configuration Assistant を起動します。
Mac のメニューバーから Silk Test の [Configuration Assistant] を起動し、[開始]ボタンを押します。
7.モバイル設定を行います。
指定した Product Bundle Identifier をもつプロビジョニングプロファイルとターゲットとなるiOSデバイスを選択します。
[テストを実行して設定の確認]ボタンを押すと、以下のエラーメッセージが表示されます。これが既定の動作です。
xcodebuildはデバイス上でWebDriverAgentを起動できませんでした。
デバイス上で「設定」>「一般」>「プロファイル」を開き、
設定したプロファイルを信頼するように設定してください。
8.iOSデバイス上でアプリの実行を許可します。
iOSデバイス上で、設定 > 一般 > プロファイル、 または 設定 > 一般 > デバイス管理(デバイスの種類と iOS のバージョンによって異なります)に移動して、開発元を信頼します。
9.再度モバイル設定を行います。
再度、Silk Test Configuration Assistant の[テストを実行して設定の確認]ボタンを押して、正しく設定されることを確認します。