UFTでiOS実機を使いたい－前編－

# はじめに

UFTでモバイルのテストをする際に、iOS実機を使用するにはどうするかを記載していきます。
iOSを使用できるまでにかなりの手順を踏む必要があり、複雑です。
また公式のドキュメントを見ても大変わかりにくくなっています。
なのでこれからiOS実機を使いたい、という方に向けて手順を事細かに残して置こうと思います。
**手順が多いため、前後編に分けています。**
またスクショの画質が一部やや荒くなってしまいました…（画像内の個人が特定できそうなところなどはマスクしています）

後編は[こちら](https://qiita.com/YamaAri/items/93e3e59e5c2ac2d9b032)

※**UFTではiOSエミュレータは使用することができません。**
Androidエミュレータは使用でき、セットアップについては[UFTでAndroidエミュレータを使いたい](https://qiita.com/YamaAri/items/fbe9711863a84e3d3fc0)でまとめています。


# 環境
|                          |      Version      |           補足           |
|:-------------------------|:-----------------:|:------------------------:|
| Windows                  |              10   |                          |
| UFT One                  |            15.0   |   Windowsにインストール   |
| Mobile Add-in for local  |             3.3   |   Windowsにインストール   |
| iTunes                   |       12.10.7.3   |   Windowsにインストール   |
| Mac                      |         10.15.5   |   Macにインストール       |
| Xcode                    |            11.5   |   Macにインストール       |

**[Apple Developer](https://idmsa.apple.com/IDMSWebAuth/signin?appIdKey=891bd3417a7776362562d2197f89480a8547b108fd934911bcbea0110d07f757&path=%2Faccount%2F&rv=1)にアクセスできるアカウントも準備してください。**
**テスト対象にはApple公式サンプルアプリを使用します。**


※UFT Oneのバージョンによって対応しているMobile Add-inのバージョンが違うので注意が必要です。
対応しているバージョンの確認は下記から行ってください。

- UFTのバージョンが15.××の場合は[こちらのUFT Mobileの欄](https://admhelp.microfocus.com/documents/uft/PAM/UFT_15.X_PAM.html)
- UFTのバージョンが14.××の場合は[こちらのMobile Centerの欄](https://admhelp.microfocus.com/documents/uft/UFT_14.xx_PAM.html#UFT%20Add-ins)を確認してください。

※UFT Oneではサポート外の端末の場合、動かない可能性があるので注意が必要です。
UFT Oneがサポートしている端末は[Supported Devices](https://admhelp.microfocus.com/uftmobile/standalone/standalone%20device%20page1.html)を参照してください。

# 手順

手順については下記の通りです。
前編ではこちらの1~4までを実施していきます。

1. 【Windows】UFT Oneをインストールする
2. 【Windows】Mobile Add-in for localをインストールする
3. 【Mac】Xcodeをインストールする
4. 【Mac】プロビジョニングプロファイルを作る
5. 【Mac+Windows】ファイルの再署名を行う
6. 【Mac】アプリをXcodeでビルドする
7. 【Mac】Xcodeでipaファイルを作成する
8. 【Windows】UFTの設定を行って、動かす！


## 1.【Windows】UFT Oneをインストールする
UFT Oneは基本的にデフォルト設定のままインストールでOKです。
（なにか今後Add-in を増やしたい等がある場合でも再インストール可能なのでここはデフォルトで進めます）

## 2.【Windows】Mobile Add-in for localをインストールする
こちらもデフォルトのままインストールでOKです。
インストーラは[こちら](https://marketplace.microfocus.com/appdelivery/content/uft-mobile-add-in-for-local-device)から取得できます。

## 3.【Mac】Xcodeをインストールする
XCodeをインストールしてください。
インストールには時間がかかるので、早めにやっておいたほうが良いと思います。

## 4. 【Mac】プロビジョニングプロファイルを作る
ここの手順が煩雑なので、注意してください。
細かく区切って説明します。

### 4-1.キーチェーンアクセスで必要な設定を行う
まずはキーチェーンアクセスを開きます。
Finder>アプリケーション>ユーティリティ>キーチェーンアクセス
または、Lauchpad>その他>キーチェーンアクセスで開くことができます。

キーチェーンアクセスのメニューから「認証局に証明書を要求する」を選択してください。
（このとき「構成済みの認証局がありません。」といったメッセージが表示された場合はOKを選択した後、再度「認証局に証明書を要求する」を実行してください）

![図1.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/121319/46a7d82c-324b-497b-bfa2-c4c341738ff7.png)

証明書アシスタントには以下を入力してください。
ユーザのメールアドレス：ご自身のアドレスを入力してください
通称：何でも良いので入力してください。（何も入力していないとエラーになることがあります）
CAのメールアドレス：無記入でOKです
要求の処理：ディスクに保存と鍵ペア情報を指定にチェックを入れてください
記入が完了したら「続ける」を選択してください。
![図2.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/121319/081939dc-e642-fdb7-2eda-d3d9f071634f.png)

CertificateSigningRequest.certSigningRequestはご自身のわかりやすい場所に保存しておいてください。
![図3.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/121319/833f4fb5-394e-a274-b897-c2eec7e6b696.png)

鍵ペア情報では下記の設定をしてください。
![図4.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/121319/c3143467-f6a5-27fd-5df6-673f638ca9ed.png)


設定結果が「証明書要求がディスク上に作成されました」と表示されたら、完了です。

### 4-2.Apple Developerで必要な情報を作成する
[Apple Developer](https://idmsa.apple.com/IDMSWebAuth/signin?appIdKey=891bd3417a7776362562d2197f89480a8547b108fd934911bcbea0110d07f757&path=%2Faccount%2F&rv=1)にアクセスし、ログインをします。

#### 4-2-1.Certificationsの登録
Certificatesの右にある＋ボタンを選択します。
![図5.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/121319/213c531f-7847-62dc-41ca-0304c4e19f4f.png)

SoftWareの「iOS App Development」を選択して、Continueボタンを押下してください。
![図6.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/121319/411b4cf6-b111-5be2-609f-692112b6abdf.png)

Choose Fileでは4-1.で作成したCertificateSigningRequest.certSigningRequestを選択してください。
選択できたらContinueを押下します。
![図7.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/121319/d1175f85-6f65-8aa6-0995-56008575cf45.png)

作成ができたらDownloadを押下してください。
![図8.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/121319/7c71a45d-8ff2-a59e-cf3a-266035bfe40a.png)

ダウンロードフォルダに**ios_development.cer**がダウンロードされているはずです。
こちらをダブルクリックして、キーチェーンアクセスを確認してください。
キーチェーンアクセス内に「iPhone Developer: アカウント名」のように登録されていればOKです。
![図9.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/121319/d923e47d-489e-094f-bfd2-fc62a6620dda.png)

#### 4-2-2. Identifiersの登録
Apple Developerに戻り、次は左のリストからIdentifiersを選択してください。
＋ボタンから、下記のようにワイルドカードと呼ばれるAppIDを作成します。
このワイルドカードは自由度が高く、汎用性が高いものになります。
![図10.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/121319/1b39ef68-c564-5239-95be-1f908cfe84e7.png)


#### 4-2-3.Devicesの登録
次はデバイスの登録を行っていきます。
デバイスの登録には「UDID」が必要です。
UDIDはiPhoneをPCにつなぎ、iTunesを起動します。
赤枠の部分をクリックするとUDIDが確認できます。（右クリックでコピーも可能です）
![図12.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/121319/b2793f0b-1b25-3d8a-3ccd-d636280c29fa.png)

Apple Developerに戻ります。
Devicesの右にある＋ボタンを選択します。

![図11.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/121319/e1990b0c-dd06-1dc2-aa02-3a8dea62bf31.png)

Device Nameは後ほどみてわかるものを入力します。
Deivece ID(UDID)には先程取得したUDIDを入力してください。
入力が完了したら、画面左上のContinueを選択してください。
![図13.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/121319/f719ac80-3610-a26d-5559-ed203e254ff6.png)

次のページで内容が確認できたら、Registerでを選択します。
さらに次のページではDoneを選択してください。
これでDevicesの欄に先程登録したデバイスが表示されていれば、デバイスの登録は完了です。

#### 4-2-4.Profilesの登録
最後にProfilesの登録を行っていきます。
Profilesの右にある＋ボタンを選択します。

Developementの「iOS App Developement」を選択し、Continueで次に進みます。
![図14.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/121319/8561444f-0db9-3c34-bdfc-60d9204c9ca1.png)

App IDはIDENTIFERが*（Wildcard）になっているものを選択し、Continueで次に進みます。
![図15.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/121319/54401612-927b-fffb-ce78-d506b3b531f4.png)

Certificatesは先程登録したものを選択し、Continueで次に進みます。
![図16.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/121319/ee3241b0-2172-13eb-3aa4-c6f37f5378a4.png)

Devicesは先程登録したDeviceを選択し、Continueで次に進みます。
![図17.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/121319/e6d856cf-c39c-9494-6d8b-81b26ff1bcde.png)

Privisioning Profile Nameは自分がわかるように命名してください。
入力が完了したらGenerateをクリックします。
![図18.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/121319/53e85cd8-c688-b589-9863-951a08a1b4a0.png)

Downloadをクリックしてください。
![図19.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/121319/6131cf03-b735-cc91-5bc8-149c6e301962.png)


〇〇（Name部分が当てはまります）.mobileprovisionがダウンロードされているので、こちらをダブルクリックしてキーチェーンアクセスに反映させてください。

これでApple Developerを使用したプロビジョニングプロファイルの作成は終了です。
※プロビジョニングプロファイルについてはQiitaを探すと良い記事が出てくるので、そちらに説明は任せます。


前編はこれにて終了です。
後編は[こちら](https://qiita.com/YamaAri/items/93e3e59e5c2ac2d9b032)から御覧ください。

ここまでで半分って、長いですね…