2
Help us understand the problem. What are the problem?

posted at

updated at

クラウドでの実機検証サービスの考察 ~Remote TestKitの魅力について~

本記事はQiita Engineer Festa 2022Remote TestKitを使ってレビューを書こう!のエントリー記事です!


はじめに

ある日、新機能の開発が完了し、実機検証を進めていると、表示崩れが!!!!

すぐにデザイナーの方に「ここデザイン崩れてるので直してください!」と伝えると「私の方だと崩れてないですよ?」との返答。
あれーおかしいなと思い、調べてみるとSafariのバージョンが異なっていました。

別の端末で見ると確かに表示崩れは起きずに、綺麗に表示されています。1

Safariのどのバージョンからこの現象が起きてしまうのか調べようとするものの、SafariはOSのバージョンと紐づくため、ダウングレードをしなければならないということになり、かなりの手間の発生が予想されました。

結局、その時は崩れていた方が最新のバージョンだったため、端末を最新にすることで検証できたのですが、逆のケースだったらどうなっていたか。

今回のようなケースに遭遇した時に、すぐに別の検証端末使えたらなあと思い、調べていると、ちょうどRemote TestKitが見つかりました!

今回はRemote TestKitを使って、どんなことができるのかを検証していきたいと思います。

クラウドでの実機検証サービスについて

Remote TestKitについて紹介する前に、クラウドでの実機検証サービスを使うことによるメリットについて考えてみたいと思います。
会社によっては検証端末が豊富で、実機検証サービスは必要ないよーという方もいらっしゃるかもしれませんが、果たして本当にそうでしょうか?
クラウドで利用できることで、以下のメリットがあると考えられます。

  • 管理コストの低減
    • バッテリーなどの経年劣化によるメンテナンスが必要ない
    • 誰がどの端末を現在保持しているかといった申請のやり取りが不要
    • 社内での紛失リスクや重複、盗難など機密情報の漏洩リスクを防ぐための管理コストが減らせる
  • 複数端末の同時使用
    • 一度に大量の端末を操作して、検証テストを行う。みたいなことは直接実機を触る場合だと時間がかかってしまうため。
  • ユーザーからの問い合わせに対してすぐに検証を始めることができる
    • ユーザーの使用している端末が無かったり、あっても申請が必要だったり他の人が使っていたり。

料金については、ケースバイケースだと思うので、どちらとも言えないかなと考えています。
具体的には管理方法だったり、検証端末のユースケースで変わってくる部分かなと思います。

先にメリットをお伝えしましたが、クラウドであることで下記の問題が発生しないかは気になるポイントです。

  • セキュリティ面
    • 検証した内容が外部に漏れないか。
  • 端末の種類
    • 契約したはいいが、結局求める端末が利用できずに導入の意味がなくなってしまわないか。
  • 端末のアップデートの速さ
    • 新しい端末発売後に導入されるまでにどれくらいのラグがあるか。

Remote TestKitとは

前置きが長くなりましたが、上記で語ったメリットや気になるポイントがどうなっているのか確認しながらRemote TestKitを触っていきたいと思います!

スクリーンショット 2022-07-14 1.53.19.png

以下の項目にまとめましたので、興味がある箇所から参照いただければと思います!

  • 機能
  • 料金体系
  • セキュリティ
  • 端末の種類
  • 使用感
  • その他特筆点・感想

機能

複数端末の同時操作と既存テストツールとの連携が特に有難いですね!
一気にいろんな端末で検証を行うことで、工数の短縮に繋がりそうです!

  • 複数端末の同時操作
  • キャプチャ機能
  • 音声の入出力機能
  • アプリの検証
  • PCからの入力受付
    • 文字入力がキーボードからそのまま端末に入力が可能!
  • 仮想ADB、XcodeConnectorを利用して既存のテストツールとの連携
    • Appium等で作成した自動テストスクリプトを実行したり、Jenkins等と連携してCIでの活用も可能!

などなど豊富な機能があります!
また、他にもたくさんの機能がありました!
その他の機能についてはコチラから参照してください。

下記機能については、技術上・運用上の理由で利用できないとのこと。

  • 端末の設定機能(オプションメニューで提供)
  • SIMを必要とする機能(オプションメニューで提供)
  • ハードウェア(赤外線、Bluetooth、ジャイロセンサ、FeliCa、NFC、ワンセグ)機能
  • GPS機能(実端末位置は変化しません)
  • カメラ機能(撮影対象を指定できません)

料金体系

公式HPより抜粋。
プランは フラットプラン/チケットプラン/無料プランの3種類があったようですが、現在はフラットプランか無料プランの2種類です。
無料プランはローカルの端末をクラウド上で操作できるようにする仕組みを提供してくれるようです。(2台まで)
フラットプランがメインのプランになるので、こちらのプランを紹介します。

チケットプランは2019年1月23日で終了。

フラットプラン

4つの標準プランがあり、個別でプランの相談をお問合せすることも可能なようです。
プランの違いは同時に利用できる端末数に違いがあります。
初月は無料で利用できます。
※価格表示は税抜です。

プラン名 FLAT1 FLAT2 FLAT3 FLAT5
料金 50,000円/月 80,000円/月 125,000円/月 200,000円/月
同時利用端末数 1端末 2端末 3端末 5端末

オプション

追加料金を支払うことで、オプションを有効化できます。
※価格表示は税抜です。

  • 最新・人気端末パック 20,000円/月
    • 最新・人気の端末を利用可能。端末の予約も可能になる。
  • OS設定解放 80,000円/月
    • レンタルした端末のOS設定を変更可能
  • 端末お預かりオプション 100,000円/月
    • ローカルで所持している端末を専用端末としてRemote TestKit上で利用可能
  • 接続元IP制限 100,000円/月
    • 登録済みのIPアドレス以外からの接続制限
  • サブアカウント機能 100,000円/月
    • 利用者アカウントを自由に発行可能

特に気になったオプションとしては、端末お預かりオプションですね。
端末たくさん所持している企業の方も、端末お預かりオプションが利用できれば
管理コストを減らせるのでお得かもしれないですね!

セキュリティ

一番気になるのは、利用した端末の履歴が残って、他者に悪用されてしまわないかというところかと思います。
この点をRemote TestKitはばっちり解消しています。

公式の記事から抜粋します。

:SaaS(Software as a Service)でレンタルした端末には履歴やデータが残るため、次の人が借りる前にデータを消す作業が必要になりますが、その実現においてもひと手間かけています。工場出荷状態に戻すファクトリーリセットという機能が使えると楽なのですが、これでは端末とサーバとの連携設定も外れて操作不能となってしまうため、この機能を使わずに初期に近い状態にもっていくのが肝です。通常のAPI(Application Programing Interface)によるコマンド操作ではクリアできない項目などのクリーニング処理も、独自の技術で自動化しています

独自の技術を使ってクリーニング処理をかけているとのことです。
同記事をさらに引用しますが、海外の競合では、データクリアをしていないサービスもあるとのこと。怖いですね。

理由は分かりませんが、海外の競合サービスは、端末のレンタル後にデータクリアしなくてもOKという文化があるようです。

端末の種類

端末一覧
上記から参照することができます。
700機種以上の端末を利用できるとのことで、なかなかこういうサービスを使わないとこれだけの種類の端末確保は難しいかもしれないですね。
新発売機種についても、2週間以内に原則用意していくとのことで、スピードが早いですね!

使用感

Web版とソフトウェア版がありますが、今回はソフトウェア版を使用します。
ソフトウェア版の方が高機能なためです。2
Mac OSでもWindowsでもどちらでも使用可能です。
使い方についてはドキュメントを参照してください。

GUIはこんな感じです。
スクリーンショット 2022-07-14 0.37.55.png

端末がずらーっと並んで、どれ使おうかなーとちょっとワクワクします笑

せっかくなので、高スペックマシンを使っていこうと思います。
最新モデルのXperia 1 IV SO-51Cを使います。
普通に買ったら10万以上はする製品がボタンクリックで簡単に使えちゃうのはびっくりですね。

有効化してすぐに使用することができました。
端末のスクショ

URLの直接入力だとページを開くのに少し時間はかかりますが、開いた後の操作感はサクサクでほとんど気になりませんでした。

URL入力 操作感
URL入力.gif 操作性 - HD 720p.gif

全体的に、実機の使用感そのままに、PCでの利用をしやすくしており、非常に使いやすかったです!
これなら検証もかなりしやすいかと思います。

使用した後、すぐにオフラインとなり、別の人に使われないことも確認できました。
どれくらいのタイミングで再度使えるようになるかも調べてみました。

before after
スクリーンショット 2022-07-14 1.15.16.png スクリーンショット 2022-07-14 1.19.55.png

なんと!わずか10分で再使用可能になりました。恐るべし。 (スクショの時間で計測してます)
削除されているかも念のためみてみます。
スクリーンショット 2022-07-14 1.25.31.png

chromeで開いていたタブが全て消え、履歴も消えています。
(※肖像権や著作権などに引っかからないように意図的にモザイクをかけています)
スクリーンショット 2022-07-14 1.27.50.png

すごい技術だ...

複数端末同時操作も簡単でした。
スクリーンショット 2022-07-14 1.35.10.png

その他特筆点・感想

箇条書きで感じたポイントを羅列していきます。

  • キーボードでそのままPCから入力できるのは便利! シミュレータと似た操作感で使えるのはかなりありがたいです。
  • スワイプなどスマホ特有の操作や物理ボタンのデバイスに対応していたり、スマホと同じ操作感を担保しているのが良い!
    • 検証する時、やっぱり直接触った感って大事になってきますからね。
  • apkファイルを直接アップロードできるのは楽。すぐにアプリ入れて試せるのはありがたい!
  • 利用をやめてからわずか10分で再び使えるようになるのがすごい!端末待ちの状況が長くかからない!!
  • Appiumテスト連携できるものの、テスト特化しているわけではないのでテストメインに寄せたい場合は別の選択肢になってくる可能性がありそうです。

他サービスとの比較

最後に、Remote TestKitと他サービスとの簡単な比較をします。
比較検討しましたが、Remote TestKitAWS Device Farmのどちらかを選択するのが現状良い選択肢なのではと思います。
ただし、Remote TestKitAWS Device Farmでは用途が異なると思います。
Remote TestKitはより自分で操作して動きを細かく確かめたい時に真価を発揮しますし、
AWS Device Farmテスト自動化を推進するときに真価を発揮すると思います。
Remote TestKitは少しお高めですが、端末の種類の豊富さやセキュリティ面、機能面などを比較すると妥当どころか、むしろ安いくらいの料金かもしれません。

項目/サービス Remote TestKit モバオペ AWS Device Farm MOBACloud
機能 ?(不明)
料金
セキュリティ ?(不明) ?(不明)
端末の種類  ◎ (700種類以上) △(Android端末のみ 100種類以上) ○(100種類以上) ×(20種類以上)

以下、詳細については折りたたみにて記載しますので、ご興味あれば折りたたみをクリックしてください。

各サービスとの比較詳細

モバオペについて

スクリーンショット 2022-07-14 1.52.25.png

基本的な欲しい機能は抑えてくれているが、エンタープライズ版でないと自動テストツールが使えないのがネックか。
iOS端末が使えないのも痛い(日本だとiOSの割合が多いため)

  • 機能
    • キャプチャ機能
    • アプリインストール
    • キーボード入力可能
    • 同時操作可能
    • Appiumでのテスト利用可能
  • 料金体系 (※価格は税抜です)
    • スモールプラン: 1アカウント 20,000円/月
    • ミディアムプラン: 3アカウント 50,000円/月
    • ラージプラン: 5アカウント 80,000円/月
    • エンタープライズ: 要相談
  • セキュリティ: 不明。(サイトに情報なし)
  • 端末の種類
    • Android端末が100種類以上
    • iOSもサポートを検討している。

AWS Device Farmについて

https://youtu.be/21oIarLiAKU
上記動画がどんなものかがわかりやすいと思います。
スクリーンショット 2022-07-14 2.19.41.png

料金が従量課金もしくは定額プランと選べるのがありがたいですね。
カスタマーサポート的に使う人は従量課金でいいと思いますし、日常的に検証で使うなら無制限テストで使うなど柔軟に切り替えられます。
また、テストにとても特化している印象です。
テストフレームワークが色々使え、かなり楽に使用できそうでした。
パフォーマンスデータの収集も、ゲームアプリ開発者にとってはとても嬉しいと思います。

  • 機能
    • マルチデバイス、マルチブラウザでのテスト実行
    • 同時操作、同時テストの実行
    • テストフレームワークをそのまま選択してテストをカスタマイズできる
    • ビデオ、ログ、パフォーマンスデータの収集
  • 料金体系
    • 従量課金 最初の1000分無料 以降 0.17$/1デバイス利用分
    • 無制限テスト 250$/月 1デバイススロット毎
    • プライベートデバイス 200$/月~
      • ユーザーに応じた専用のデバイスが割り当てられる
  • セキュリティ: 記載は特になし。 ですが、プライベートデバイスも使えるので、担保はできそうです。
  • 端末の種類: 100種類以上。 iOSもAndoridもどちらもあります。

MOBACloudについて

Webサイトの更新が頻繁ではないため、そもそも不安点が多いです。

  • 機能: おそらく単純なデバイスの操作のみ? 情報が少なく不明。
  • 料金体系 ※料金は税込です。
    • ライトプラン 5,400円/日 5機種から選択
    • ビジネスプラン 16,200円/7日間 10機種から選択
    • プラチナムプラン 54,000円/月 25機種から選択
  • セキュリティ 情報が無く、わかりませんでした。
  • 端末の種類 20種類以上

まとめ

ということでRemote TestKitを使ってみました。
最初に、下記3点が気になるなあと思い、注意深くみていたのですが、3点とも見事にクリアしており、素晴らしい製品だと感じました。

  • セキュリティ面
  • 端末の種類
  • 端末のアップデートの速さ

セキュリティ面は独自技術でしっかりカバー。
端末の種類も700種類以上と豊富で、しかもすぐに借りれて使いやすい。
端末のアップデートの速さもばっちりで、2022年6月24日発売(執筆時点2022/7/14)の新しいモデルもすぐに使えました。

ぜひ、会社でも必要な場面が来た際にはぜひ取り入れていきたいなと思いました。
最後までご覧いただきありがとうございました!

最後に、この記事はQiita Engineer Festa 2022のテーマの一環の記事です!
みなさんも一緒にQiita Engineer Festa 2022を盛り上げていきましょう!

参考文献

  1. ↓ちなみにこんな感じのことが起きていました。※画像はイメージです。 右が正規。左に変な線が入っています。
    スクリーンショット 2022-07-12 23.40.59.pngスクリーンショット 2022-07-12 23.41.43.png

  2. https://appkitbox.com/testkit/spec/ ソフトウェア版とWeb版の機能比較についてはリンクのページ下部を参照。

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Sign upLogin
2
Help us understand the problem. What are the problem?