Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Magic Pod × Bitriseの活用事例 / nohana-case-study
Search
andysumi
February 17, 2021
Technology
0
470
Magic Pod × Bitriseの活用事例 / nohana-case-study
Magic Pod×Bitrise パートナーウェビナー (
https://bitrise-japan.connpass.com/event/203930
) の登壇資料です
andysumi
February 17, 2021
Tweet
Share
More Decks by andysumi
See All by andysumi
Test Management and Utilization of PractiTest at nohana
andysumi
0
280
Other Decks in Technology
See All in Technology
大規模アジャイルフレームワークから学ぶエンジニアマネジメントの本質
staka121
PRO
3
880
ExaDB-XSで利用されているExadata Exascaleについて
oracle4engineer
PRO
3
200
遷移の高速化 ヤフートップの試行錯誤
narirou
6
1k
Exadata Database Service on Cloud@Customer セキュリティ、ネットワーク、および管理について
oracle4engineer
PRO
2
1.5k
短縮URLをお手軽に導入しよう
nakasho
0
140
Pwned Labsのすゝめ
ken5scal
1
320
システム・ML活用を広げるdbtのデータモデリング / Expanding System & ML Use with dbt Modeling
i125
1
320
2/18 Making Security Scale: メルカリが考えるセキュリティ戦略 - Coincheck x LayerX x Mercari
jsonf
0
110
コンピュータビジョンの社会実装について考えていたらゲームを作っていた話
takmin
1
590
Iceberg Meetup Japan #1 : Iceberg and Databricks
databricksjapan
0
320
【詳説】コンテンツ配信 システムの複数機能 基盤への拡張
hatena
0
210
設計を積み重ねてシステムを刷新する
sansantech
PRO
0
160
Featured
See All Featured
KATA
mclloyd
29
14k
Product Roadmaps are Hard
iamctodd
PRO
50
11k
How to train your dragon (web standard)
notwaldorf
91
5.9k
Typedesign – Prime Four
hannesfritz
40
2.5k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
47
5.2k
Building Your Own Lightsaber
phodgson
104
6.2k
The MySQL Ecosystem @ GitHub 2015
samlambert
250
12k
Agile that works and the tools we love
rasmusluckow
328
21k
Six Lessons from altMBA
skipperchong
27
3.6k
Scaling GitHub
holman
459
140k
Why Our Code Smells
bkeepers
PRO
336
57k
Building Adaptive Systems
keathley
40
2.4k
Transcript
Magic Pod × Bitriseの活用事例 2021/02/18 株式会社ノハナ 武田義之 Magic Pod×Bitrise パートナーウェビナー
武田 義之 株式会社ノハナ 品質保証グループマネージャー 2006年に第三者検証会社に入社し、金融や業務システム等のプロ ジェクトで要件定義〜テスト〜運用(開発以外)を経験。 2015年にノハナに入社し、QAチームの立ち上げに尽力し、現在は開 発チームのスクラムマスターも務める。
None
Magic Podの活用事例
機能テスト 変更した機能が正しく動作することを確認 開発プロセスにおけるテスト リリース 開発 機能テスト 回帰テスト 変更により既存機能に不具合がでていな いことを確認 回帰テスト
バグをみつける コストをかけるべき バグがないこと コストをかけたくない けど、かかっている現状😱 Magic Podの活用事例
• 事前準備が必要なテストケース • 事前準備が必要なテストケース ◦ サービスアクティベーション、強制アップデート • 重要な機能 ◦ 新規登録、写真アップロード、注文etc
回帰テストケースの 30% を自動化し、実行時間(手動)を 40% 削減!! ノハナノハナシにも掲載しています 回帰テストの自動化 Magic Podの活用事例
• ノンプログラマーでも簡単にテスト ケースを作成できる • さまざまなコマンドが用意されている • クラウド環境でテストケース作成・実 行できる ◦ 外部クラウド環境で実行すること
も • Bitriseと簡単に連携できる PROS Magic Podの活用事例 CONS(WANT) • ローカル環境の構築でつまづく • OSバージョンによってテスト結果が異 なる • 事前・事後処理を定義できない • (Githubのように) テストケースをバー ジョン管理、レビューしたい • テスト管理ツールと連携したい
Magic Pod × Bitriseの活用事例
• 簡易な動作確認を行ってアプリをアップロード ◦ アプリがテストを開始できる品質になってない可能性 開発 テスト 開発プロセスでの人間の介入 Magic Pod ×
Bitriseの活用事例① テストアプリ アップロード テスト実行 • 人間が回帰テスト(自動テスト)を実行 ◦ 誤ったバージョンのアプリで実行する可能性
• CIで定期的にアプリをビルドして、自動テストを実行 ◦ 一定の品質を担保したアプリを提供可能 ◦ 回帰テストでは、自動化できていないテストケースのみ手動で実施 CIから回帰テストを実行 Magic Pod ×
Bitriseの活用事例① テスト実行 テストアプリ アップロード 開発 & テスト
Dependabot Magic Pod × Bitriseの活用事例② • Androidアプリが依存するライブラリのアップデート検知にDependabotを採用してい る ◦
アップデートを検知すると自動でPull Requestを作ってくれる • ただし、ライブラリアップデートをテキトーにmergeするのも怖い ◦ 破壊的な変更があるかもしれない ◦ ビルドは通ってもアプリ上で正しく動作しない可能性もある • 対象branchを手元でfetchして動作確認するのは大変 ◦ -> 大変なのでやらなくなる ◦ -> 動作確認しないのでPull Requestが溜まる ◦ -> Dependabotを導入した意味が無くなる
Dependabot + bitrise + Magic Podで解決する Magic Pod × Bitriseの活用事例②
• 動作確認まで自動化する ◦ CIで保証する部分だけでなく、実際のアプリの動作まで保証できる • ここまで通れば安心してmergeができる • また、Magic PodのあとにDeployGateなどで配布すれば、全体動作を保証した上 で、不安なところだけ手元でも簡単に検証可能になる
• 本番環境で定期的に自動テストを実行する ◦ テスト結果をSlack等の目につく場所に通知する • 外部サービスの障害等を早急に発見できる ◦ データの扱いが難しい。。。 • バックエンドにさまざまなサービスを使っている
◦ データベース、サーバー、SMS • 外部サービスの障害等により、アプリの動作に影響を及ぼす 本番環境でのテスト実行 Magic Pod × Bitriseによる改善③
• ノンプログラマーでも比較的簡単に ワークフローを作成できる • さまざまなステップが用意されている • 専門知識(アプリ開発、CI他)も必要な ので、開発者の協力が必要 • 実行環境(?)によってテスト結果が一
定ではない PROS Magic Pod × Bitriseの活用事例 CONS
まとめ
• Magic Pod、BitriseともにGUIから操作できるので、ノンプログラマーでも比 較的簡単に進められた • 常に同じテスト結果になるようにテストケース、ワークフローを改善する • 回帰テスト以外にも自動テストの適用範囲を広げることで、人間が手を動 かすべきテストに時間をかけれるように まとめ
ご清聴ありがとうございました