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
MagicPodを利用して回帰テストを自動化している話
Search
Kohei Tai
October 20, 2022
Technology
0
24
MagicPodを利用して回帰テストを自動化している話
MagicPodを利用して回帰テストを自動化している話
Kohei Tai
October 20, 2022
Tweet
Share
More Decks by Kohei Tai
See All by Kohei Tai
MagicPodで自動化率を爆上げしたハナシ.pdf
kotatoshi
0
200
スクラム開発でアジャイルテスティングを実施し、リリースサイクルを早めた話.pdf
kotatoshi
0
31
Other Decks in Technology
See All in Technology
実例で紹介するRAG導入時の知見と精度向上の勘所
yamahiro
7
2.7k
サイボウズ 開発本部採用ピッチ / Cybozu Engineer Recruit
cybozuinsideout
PRO
9
37k
Observabilityジャーニーを実現するためのAWSサービス:CloudWatch編
o11yfes2023
0
120
Exadata Database Service on Dedicated Infrastructure(ExaDB-D) UI スクリーン・キャプチャ集
oracle4engineer
PRO
2
1.7k
Step by Stepで学ぶ、ADT(代数的データ型)、モナドからEffect-TSまで
leveragestech
1
2.3k
Prisma ORMを2年運用して培ったノウハウを共有する
tockn
18
4.7k
拓展QA日常工作的邊界
line_developers_tw
PRO
0
190
株式会社EventHub・エンジニア採用資料
eventhub
0
2.1k
IaCからAWSに入門した初心者が CloudFormationを通して考えた「AWS操作」の使い分け
maimyyym
3
660
AWSやJAWS-UGとの出会いを振り返る
yoyoyopg
1
200
複雑なビジネスルールに挑む:正確性と効率性を両立するfp-tsのチーム活用術 / Strike a balance between correctness and efficiency with fp-ts
kakehashi
5
3.1k
kcp: Kubernetes APIs Are All You Need #techfeed_live / TechFeed Experts Night 28th
ytaka23
1
180
Featured
See All Featured
The Invisible Customer
myddelton
114
12k
A Tale of Four Properties
chriscoyier
153
22k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
41
4.5k
GraphQLの誤解/rethinking-graphql
sonatard
56
9.3k
Adopting Sorbet at Scale
ufuk
69
8.6k
Designing the Hi-DPI Web
ddemaree
276
33k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
15
1.6k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
0
91
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
352
28k
Unsuck your backbone
ammeep
664
57k
Bootstrapping a Software Product
garrettdimon
PRO
302
110k
How to name files
jennybc
65
93k
Transcript
Copyright (C) nohana, Inc. All rights reserved. Copyright (C) nohana,
Inc. All rights reserved. 2022/10/20 MagicPodで回帰テストを自動化している話
Copyright (C) nohana, Inc. All rights reserved. 自己紹介 Copyright (C)
nohana, Inc. All rights reserved. 田井 康平 • 株式会社ノハナ ◦ サービスデザイン部 品質管理グループ マネージャー(になりました) • オンラインでのLTは2回目! • QA業務をしつつ、スクラムマスターになるため、日々勉強中 • Twitter: @kotatoshi
Copyright (C) nohana, Inc. All rights reserved. ノハナの紹介 Copyright (C)
nohana, Inc. All rights reserved. • フォトブックアプリ、年賀状アプリの開発 通常フォトブック 毎月1冊無料でつくれるスタンダードタイプ。 高画質仕上げ、表紙デザインやギフト包装など、用途で選べるオプ ションも豊富にご用意しています。 定期的な写真のまとめや、月齢アルバムにおすすめです。 プレミアムフォトブック 高精細な写真画質仕上げの 銀塩ハードカバータイプ。 レイフラット製本で迫力の見開き写真が実現、最大89枚(表紙含む) の写真が入ります。 特別なイベントや、1年ごとの思い出の記録におすすめです。
Copyright (C) nohana, Inc. All rights reserved. トピック • MagicPodでの回帰テスト自動化
• 回帰テストの手動と自動の工数比較 • 自動化率について • 最後に
Copyright (C) nohana, Inc. All rights reserved. MagicPodでの回帰テスト自動化
Copyright (C) nohana, Inc. All rights reserved. MagicPodでの回帰テスト自動化 Copyright (C)
nohana, Inc. All rights reserved. • 導入理由 ◦ プログラミング(コーディング)のスキルが不要 ▪ 個人のスキルに依存しない ◦ 価格がリーズナブル ◦ サーバーなど自前で準備不要(メンテやアップデート含め) ◦ 共有ステップでシナリオ間でテストを共有できる ◦ サポートが早い ◦ 自動修復機能 ◦ 外部ツールとの連携 ▪ Slackへの結果通知、Jenkinsのジョブ実行、CIからの自動実行
Copyright (C) nohana, Inc. All rights reserved. MagicPodでの回帰テスト自動化 Copyright (C)
nohana, Inc. All rights reserved. • 共有ステップの活用 • 組み合わせのサンプル(実際の組み合わせではありません) ◦ この場合だと5シナリオある ▪ それぞれで個別にテストコードを作成するとそれだけでも大変 ◦ 仕様変更時などのたびに5つのシナリオを修正する必要がある ◦ 実際のテストではもっと多いパターンもあることが多い → 共有ステップで対応
Copyright (C) nohana, Inc. All rights reserved. MagicPodでの回帰テスト自動化 Copyright (C)
nohana, Inc. All rights reserved. • 共有ステップの活用 • 共有ステップ内ではデータパターンの値をもとに条件分岐を導入 ◦ 例:商品選択の共有ステップで、色が◯◯である場合、◯◯を選択する • 最初に共有ステップを作る時間はかかった ◦ その後は流用できるので全体工数としては少なく済んだ 共有ステップのメリット • 使い回し可能 • 修正時に1つのシナリオ修正でOK
Copyright (C) nohana, Inc. All rights reserved. 回帰テストの手動と自動の工数比較
Copyright (C) nohana, Inc. All rights reserved. 回帰テストの手動と自動の工数比較 Copyright (C)
nohana, Inc. All rights reserved. • 自動テストは失敗時のメンテコスト含む • 自動テストの作成工数は除く Android 手動で全て実施 自動テストが少し安定 してきたころ 期間は2年ぐらい オフショアから内製に 切り替え
Copyright (C) nohana, Inc. All rights reserved. 回帰テストの手動と自動の工数比較 Copyright (C)
nohana, Inc. All rights reserved. • 自動テストは失敗時のメンテコスト含む • 自動テストの作成工数は除く iOS テストケース見 直しのため 自動化初期はエラー になるケースが多い 期間は2年ぐらい オフショアから内製に 切り替え
Copyright (C) nohana, Inc. All rights reserved. 回帰テストの手動と自動の工数比較 Copyright (C)
nohana, Inc. All rights reserved. • 全体工数が減ったタイミング ◦ オフショアでの手動テストから内製での手動テストへの切り替え ◦ 自動テストの増加 • 全体工数が増えたタイミング ◦ テストケースの見直し ◦ エラーのため手動で実施 ◦ エラーが大量に発生しメンテナンスが必要 ▪ テストケースの修正漏れ(修正箇所を全て修正してないケースなど) ▪ アプリを更新すると要素が見つからなくなることなどがある
Copyright (C) nohana, Inc. All rights reserved. 回帰テストの自動化率について
Copyright (C) nohana, Inc. All rights reserved. 回帰テストの自動化率について Copyright (C)
nohana, Inc. All rights reserved. ※次の期の予定 ※1Sprintの2週間なので、1年での推移 ※破線は今四半期の期初に設定したもの テストケース見 直しのため
Copyright (C) nohana, Inc. All rights reserved. 回帰テストの自動化率について Copyright (C)
nohana, Inc. All rights reserved. • 現状、期初の予定とほぼ同じ進捗で推移 • Androidはそのまま(現状、追加で自動化できる箇所なし) • 次の期以降も決済とiOSは自動化を進める予定 • CIで定期実行を行っている(テスト環境) ◦ デグレなどを早期検知するため ◦ 現在はAndroidのみなので、iOSも対応予定 • 定期実行の安定化 • リリース前の本番環境でのテスト
Copyright (C) nohana, Inc. All rights reserved. 最後に Copyright (C)
nohana, Inc. All rights reserved. • 初期コストはかかるものの、メンテコストはそこまで高くない • ノー(ロー)コードだと、属人化しないので誰でもできる • 外部サービスだとサーバーなど環境準備、メンテが不要 • 共有ステップの活用 • 自動化が難しいところは無理して自動化しないことが重要かも 今日お話しした内容の一部はブログも公開していますので、ご覧ください!! ノハナではAndroidエンジニアを絶賛募集しています!!詳しくは@kotatoshi,
[email protected]
まで!
None