j-kbt 備忘録

日々のお勉強や思ったことを残しておくもの

クラウドモバイルビルド/テスト Meetup 参加備忘録

クラウドモバイルビルド/テスト Meetup

クラウドモバイルビルド/テスト Meetup に行ってきました. 時間の都合上, 懇親会には参加しませんでしたが, 多くの発表がありいろいろな知見が得られたかなと思います.

勉強会中に取ったメモをそのまま載せます. 本当は一つ一つまとめたほうがいいんですけどね. 気が向いたらまとめていきます.

今回特に印象に残ったのは HeadSpin での話でした. 移動している端末のテストについて考えたことあまりなかったので, なにかいい論文があれば読んでみたいなと思いました.

いつものQAをもっと楽にするDeployGateの使い方

発表スライド

藤崎 友樹 DeployGate @tnj

  • アプリの配信の仕方の部分の工夫の方法
  • Bitrise + DeployGate Update
  • アプリ開発において, テスト対象のビルドを間違えずに渡すか
    • QA用のBuildを作ったり, そのバージョンを渡したり
    • 開発者が多くなってくるとどのビルドが正しいかの判別が難しい
  • 正しく配布するために
    • 配布ページ機能を提供
    • Gitブランチごとに自動的に配布ページを作る
    • ブランチごとの最新版を手元でダウンロードできる仕組みを作る

Remote TestKitを使った実機端末の自動テストについて

栗島 聡哉 (NTTレゾナント) Remote TestKit

  • Remote TestKit
    • データセンターの中に大量の端末があり, クラウド上から動作確認を行えるサービス
    • 実機が使いたいときに使えるのが特徴
  • 実機テストも自動化したい
    • Remote TestKit Appium 自動テストクラウド
      • Appiumのテストコードで接続先をエンドポイントに設定し, 専用のコードを入れれば良い
      • Androidは, Dockerコンテナを立ち上げて実行環境を分離. コンテナ内に仮想的に端末を接続してAppiumを実行
      • テスト実行ごとにAppiumプロセスを立ち上げ.

Bitriseではじめるモバイル向けCI/CD

大湾 龍二 Bitrise

  • Bitrise のおすすめ理由
    • 素早く効率的なチーム規模の増減が可能?
    • 簡単なGUIにてオンボーディングからアプリのデプロイまでできる
    • 豊富な(240以上)のステップが存在. それらを組み合わせることができる
    • スタックの更新スピードが早い
    • クラウド/ローカル双方ともにビルド可能
  • ユーザの裾野を広げる活動が盛ん

Uncover mobile performance on HeadSpin platform

発表スライド

松尾 和昭 (HeadSpin) @

  • HeadSpinについて
    • テストをしたり
    • 自動テストを実行したり
    • モニタリングしたり
    • 結果をアナライズをする
      • ユーザがどのあいだの期間待ち時間で操作不能だったのか
      • CPU使用率
        • CPU スレッドのデータも確認可能
      • ネットワーク
      • 動画の品質評価ができる
        • ブロックノイズ
        • ゆらぎ
    • アプリや海鮮のパフォーマンステストができる
    • ボックスに入れているという強みがあり, 車での移動中の動きを確認することもできる
  • 日本のセールススタッフもいるため, デモなどを見ることができる

Magic Podで簡単クラウド自動テスト

発表スライド

伊藤 望 (TRIDENT) Magic Pod @ito_nozomi

  • Magic Pod
    • 機械学習技術を利用したクラウド自動テストサービス
    • 読みやすい自動テストがかけることが特徴
    • テスト実行はシステム要素名を使ってAppiumで行う
  • 対応状況
    • ネイティブアプリ
    • WebViewアプリ
    • Webサイト(mobile)
    • Webサイト
  • テストが不安定になる理由
    • 環境が不安定になるもの
    • 接続が悪くて失敗など
    • 上記をサービスでやってくれ, 解決してくれる?
  • Magic Podのクラウド端末はバッチだと月1万円/1台くらい
  • 外部のクラウドサービスを利用することも可能
  • Self-Healing 機能を現在実装中
    • テストが壊れたときに, 推論をしてテストを継続するもの

Magic Podの活用で【 】な時間が増えた

岡川 準 (GA technologies)

  • Magic Podを導入したきっかけ
    • 自動化を教育に取り入れたい
    • QAに関する知見や経験を実務で教えたい
    • なるべく旬なものを取り入れたい
  • 課題
    • 実務は待ってくれない
    • Techとビジネスのバランスは難しい
    • 人の能力はそれぞれで安定しない
  • 魅力
    • 立ち上げが早く, 実務やQAの経験に対して安定してコストを掛けられることが魅力
    • 結果としてTechとビジネスの両立ができる
  • 取り入れた結果
    • テストケースのメンテナンス, 実行, 結果確認が用意となる
    • APIとCircleCIを連携して, ノークリックでビルドごとにテスト実行
    • 創造的な時間が増えてきた
  • 今後の展望
    • 新人にもQAを主軸に自動化を触れさせる
    • 開発とQAの領域をクロスさせたい
    • より早く, より便利に Circle CI部分の改善を実施する

iOS Auto Provisionで証明書更新の苦悩からの解放

発表スライド

植岡 和哉 (Timers Inc.) @fromkk

  • bitriseの導入理由
    • GUIで操作が簡単
    • 複数のWorkflowをその時時に使い分けられる
    • Stepが公式非公式豊富にある
    • Xcode Stackのアップデートが早い
  • Workflowについて
  • Stepについて
  • 利用状況
    • Push トリガー
    • Pull Request トリガー
    • DANGGER
  • iOSアプリの証明書管理
    • 開発用, リリース用など複数の証明書が必要. その管理が大変
    • Extensionごとにも必要
    • 対応案
      • fastlane matchの利用
      • Bitrise iOS Auto Provision Step
    • まとめ
      • CI上の証明書管理から開放される

TestArchitect Gondolaにおける多端末検証及びRemote Test Kit活用

高橋寿一 (ロジギアジャパン)

  • TestArchitect Gondola
    • 商用ツール
    • キーワード駆動のスクリプト
    • 複数のアプリのテストが可能
    • 軽くてしっかり動きスケーラビリティ
    • Remote Test Kit など外部サービスと接続できる.
  • 自動化すべきテスト
    • APIテスト
    • 繰り返しテスト
    • ロングランテスト
    • 多端末テスト
  • マルチデバイステスト上での問題
    • 複数のOSで一つのスクリプト
    • 異なる解像度
      • OpenCVでの特徴店抽出
      • OCR エンジンを変更可能
        • 自分たちが学習させたものが使える
  • キーワード駆動
  • 例えばの構成

Azure DevOpsとVisual Studio App CenterをモバイルアプリのCI/CDに活用しよう

発表スライド

中島進也 (Japan Xamarin User Group) @nakasho_dev

  • Visual Studio App Center
    • ビルドが失敗すると対象のコミットにすぐ飛べる
    • ビルドが成功すると画面からデプロイもできる
    • 実機テスト
      • Appium
      • Espresso
      • 使用可能実機
        • 691機種!
      • テスト詳細も確認可能
    • Distribute
      • グループ配信
      • ストアへの配信
      • Intune Company Portal用の配信
    • App Centerの料金体系
  • Azure DevOps
    • Azure Repos
    • Azure Artifact
    • Azure PipeLines