SlideShare uma empresa Scribd logo
1 de 39
EMTEを使って自動化の費用対効果を
わかりやすく表現する
RUEY JYE
芮 杰 (ゼイ ジェ)
© LIFULL Co.,Ltd. 本書の無断転載、複製を固く禁じます。2
アジェンダ
• 自己紹介
• EMTEとは
• 自動テストの評価指標
• 実際のプロジェクトでの検証、測定
• EMTEを使うメリット
• まとめ
© LIFULL Co.,Ltd. 本書の無断転載、複製を固く禁じます。3
自己紹介
© LIFULL Co.,Ltd. 本書の無断転載、複製を固く禁じます。4
自己紹介
Ruey Jye
芮 杰
(ゼイ ジェ)
台湾出身のSET (Software Engineer in Test)
呼び方:ゼイさん、Jさん
経歴:
2016 (来日) LIFULL(新卒) 品質管理グループ
2018 LIFULL SETグループ
2020 LIFULL クオリティエンジニアリンググループ
資格
• ISTQB CTFL (Foundation Level)
• ISTQB CTAL-TAE (Advanced Level
Test Automation Engineer)
テストプロバイダ経由し
て、日本のテストセンタ
ーで試験受けました。
© LIFULL Co.,Ltd. 本書の無断転載、複製を固く禁じます。5
EMTEとは
© LIFULL Co.,Ltd. 本書の無断転載、複製を固く禁じます。6
みなさんはEMTEを聞いたことありますか?
© LIFULL Co.,Ltd. 本書の無断転載、複製を固く禁じます。7
EMTEとは
EMTE (Equivalent Manual Test Effort)
テストを手動で実行する工数
参考:ISTQBの用語集
https://glossary.istqb.org/jp/search/EMTE
© LIFULL Co.,Ltd. 本書の無断転載、複製を固く禁じます。8
EMTEとは
例:
テストを手動で実行する工数:120分
そのテストを自動化したときの実行時間:30分
© LIFULL Co.,Ltd. 本書の無断転載、複製を固く禁じます。9
EMTEとは
例:
テストを手動で実行する工数:120分 ➡︎ 1 EMTE
そのテストを自動化したときの実行時間:30分 ➡︎ 0.25 EMTE
EMTEは時間単位と変換ができます!
© LIFULL Co.,Ltd. 本書の無断転載、複製を固く禁じます。10
なぜEMTEに変換するのか?
© LIFULL Co.,Ltd. 本書の無断転載、複製を固く禁じます。11
EMTEの効果
手動実行で消費した時間と相対的にできる
手動実行時間自動実行時間
その他の工数
自動テスト実行 0.25 EMTE
(テスト実施者は手動実行の
1/4だと直感的に判断できる)
© LIFULL Co.,Ltd. 本書の無断転載、複製を固く禁じます。12
自動テストの評価指標
© LIFULL Co.,Ltd. 本書の無断転載、複製を固く禁じます。13
なぜ自動テストを評価するのでしょうか
© LIFULL Co.,Ltd. 本書の無断転載、複製を固く禁じます。14
目的の達成を確認するためです
© LIFULL Co.,Ltd. 本書の無断転載、複製を固く禁じます。15
自動テストの評価指標
• External TAS metrics
– Automation benefits (自動化メリット)
– Effort to build automated tests (自動テストの構築工数)
– Effort to analyze automated test incidents (自動テストの結果分析工数)
– Effort to maintain automated tests (自動テストのメンテナンス工数)
– Ratio of failures to defects (同じ欠陥によるケース失敗率)
– Time to execute automated tests (自動テストの実行時間)
– Number of automated test cases (自動テストのケース数)
– Number of pass and fail results (自動テストのケース成功/失敗数)
– Number of false-fail and false-pass results (自動テストの結果誤判定数)
– Code coverage (自動テストのカバレッジ)
• Internal TAS metrics
– Tool scripting metrics (分析ツールの結果メトリクス)
– Automation code defect density (自動テストのコードの欠陥密度)
– Speed and efficiency of TAS components (自動テスト各コンポネートの効率)
参考:ISTQB CTAL-TAEシラバス
https://www.istqb.org/downloads/category/48-advanced-level-test-automation-engineer-documents.html
補足:TASはTest Automation Solutionの略語です
© LIFULL Co.,Ltd. 本書の無断転載、複製を固く禁じます。16
工数系の指標のみ紹介します
© LIFULL Co.,Ltd. 本書の無断転載、複製を固く禁じます。17
自動テストの評価指標
• External TAS metrics
– Automation benefits (自動化メリット)
– Effort to build automated tests (自動テストの構築工数)
– Effort to analyze automated test incidents (自動テストの結果分析工数)
– Effort to maintain automated tests (自動テストのメンテナンス工数)
– Ratio of failures to defects (同じ欠陥よるのケース失敗率)
シラバスによるとこれらの指標は
EMTEに変換して表現できることも
記載されています
参考:ISTQB CTAL-TAEシラバス
https://www.istqb.org/downloads/category/48-advanced-level-test-automation-engineer-documents.html
© LIFULL Co.,Ltd. 本書の無断転載、複製を固く禁じます。18
自動テストの評価指標
• 自動テストの構築工数
自動テスト環境構築、テストケース設計、テストケース実装などの初期コスト
• 自動テストの結果分析工数
自動テスト実行後の結果確認、不安定なテストの再実行、
デグレーションが発生の確認などの運用コスト
• 自動テストのメンテナンス工数
テストケースの修正やテストデータの整備などの運用コスト
© LIFULL Co.,Ltd. 本書の無断転載、複製を固く禁じます。19
実際のプロジェクトでの検証、測定
© LIFULL Co.,Ltd. 本書の無断転載、複製を固く禁じます。20
検証したプロジェクト概要
© LIFULL Co.,Ltd. 本書の無断転載、複製を固く禁じます。21
検証したプロジェクト概要
Tチームの自動テストを構築しました
対応した内容:
• 自動テスト環境構築
• テストケース設計、実装
• 実際の運用サポート
© LIFULL Co.,Ltd. 本書の無断転載、複製を固く禁じます。22
集計結果
© LIFULL Co.,Ltd. 本書の無断転載、複製を固く禁じます。23
実際の数字 - 実行時間
• 全ケースを手動で行う時間
1時間34分10秒 ➡︎ 5650秒
• 自動テスト実行時間
531秒
※計算しやすくするため、秒単位で表しています
© LIFULL Co.,Ltd. 本書の無断転載、複製を固く禁じます。24
実際の数字 - 評価指標
• 自動テストの構築工数
97時間 ➡︎ 349200秒
• 自動テストの結果分析工数
30分 ➡︎ 1800秒
• 自動テストのメンテナンス工数
30分 ➡︎ 1800秒
※計算しやすくため、秒単位で表しています
© LIFULL Co.,Ltd. 本書の無断転載、複製を固く禁じます。25
EMTEで変換
© LIFULL Co.,Ltd. 本書の無断転載、複製を固く禁じます。26
実際の数字 - 評価指標
• 自動テストの構築工数
349200秒 ➡︎ 61.81EMTE
• 自動テストの結果分析工数
1800秒 ➡︎ 0.32 EMTE
• 自動テストのメンテナンス工数
1800秒 ➡︎ 0.32 EMTE
• 全ケースを手動で行う時間
5650秒 ➡︎ 1 EMTE
• 自動テスト実行時間
531秒 ➡︎ 0.094 EMTE
© LIFULL Co.,Ltd. 本書の無断転載、複製を固く禁じます。27
わかったこと
© LIFULL Co.,Ltd. 本書の無断転載、複製を固く禁じます。28
わかったこと
• 自動テストの実行効率がいい
自動実行 = 0.094 EMTE (手動の10倍ぐらい早い)
• 運用作業を含めても自動テストのコストは高くない
手動実行 > ( 自動実行 + 分析 + メンテナンス )
➡︎ 1 > ( 0.094 + 0.32 + 0.32 ) (手動実行時間内に収まる)
© LIFULL Co.,Ltd. 本書の無断転載、複製を固く禁じます。29
わかったこと
• 構築工数を還元するまでの期間
自動化で節約出来た時間
= 手動実行 - 自動実行
= 1-0.094 = 0.906 EMTE
構築工数を還元するまでの回数 (※仮に毎回の実行で分析、メンテナンスが発生しない場合)
= 構築工数 / 自動化で節約出来た時間
= 61.81 / 0.906 ≒ 68回
© LIFULL Co.,Ltd. 本書の無断転載、複製を固く禁じます。30
EMTEを使うメリット
© LIFULL Co.,Ltd. 本書の無断転載、複製を固く禁じます。31
メリット
時間より、効果がわかりやすい
手動実行時間 1時間34分10秒
自動テスト
実行時間
8分51秒
自動テスト
結果分析工数
30分
自動テスト
メンテナンス工数
30分
自動テスト
構築工数
97時間
手動実行時間 1 EMTE
自動テスト
実行時間
0.094 EMTE
自動テスト
結果分析工数
0.32 EMTE
自動テスト
メンテナンス工数
0.32 EMTE
自動テスト
構築工数
61.81 EMTE
© LIFULL Co.,Ltd. 本書の無断転載、複製を固く禁じます。32
工数と節約の費用対効果
© LIFULL Co.,Ltd. 本書の無断転載、複製を固く禁じます。33
費用対効果(運用コストなし)
初期コスト = 61.81 EMTE (1回のみ)
節約した工数 = 0.906 EMTE/回
68回自動テストを回すことで
初期コストの元が取れる!
© LIFULL Co.,Ltd. 本書の無断転載、複製を固く禁じます。34
費用対効果(運用コスト込)
初期コスト = 61.81 EMTE (1回のみ)
運用コスト = 0.64 EMTE/回
節約した工数 = 0.906 EMTE/回
233回自動テストを回すことで
初期コスト+運用コストの元が取
れる!
© LIFULL Co.,Ltd. 本書の無断転載、複製を固く禁じます。35
補足情報
© LIFULL Co.,Ltd. 本書の無断転載、複製を固く禁じます。36
補足情報
• EMTEはただの単位変換
時間単位のままでも計算出来ます
• EMTEは工数の指標のみ
他の自動テスト指標は別集計が必要
• 節約は必要な自動テストのみ有効になります
1リリースサイクルで1回自動テストを実行するのであれば、
そのサイクルにある自動テストの実行のみ効果があります
© LIFULL Co.,Ltd. 本書の無断転載、複製を固く禁じます。37
まとめ
© LIFULL Co.,Ltd. 本書の無断転載、複製を固く禁じます。38
まとめ
EMTEは手動で消費した時間と相対的に比較できます
EMTEは効果をわかりやすく表現できます
テストの目的と合わせて、必要な指標も測りましょう
© LIFULL Co.,Ltd. 本書の無断転載、複製を固く禁じます。39
ご清聴ありがとうございました

Mais conteúdo relacionado

Mais procurados

Jubatusのリアルタイム分散レコメンデーション@TokyoNLP#9
Jubatusのリアルタイム分散レコメンデーション@TokyoNLP#9Jubatusのリアルタイム分散レコメンデーション@TokyoNLP#9
Jubatusのリアルタイム分散レコメンデーション@TokyoNLP#9
Yuya Unno
 

Mais procurados (20)

MySQLの文字コード事情
MySQLの文字コード事情MySQLの文字コード事情
MySQLの文字コード事情
 
組み込み開発でのシステムテスト自動化の一つの考え方(STAC)
組み込み開発でのシステムテスト自動化の一つの考え方(STAC)組み込み開発でのシステムテスト自動化の一つの考え方(STAC)
組み込み開発でのシステムテスト自動化の一つの考え方(STAC)
 
品質を加速させるために、テスターを増やす前から考えるべきQMファンネルの話(3D版)
品質を加速させるために、テスターを増やす前から考えるべきQMファンネルの話(3D版)品質を加速させるために、テスターを増やす前から考えるべきQMファンネルの話(3D版)
品質を加速させるために、テスターを増やす前から考えるべきQMファンネルの話(3D版)
 
クラシフィケーション・ツリー法入門
クラシフィケーション・ツリー法入門クラシフィケーション・ツリー法入門
クラシフィケーション・ツリー法入門
 
自動テストの品質とテストパターン
自動テストの品質とテストパターン自動テストの品質とテストパターン
自動テストの品質とテストパターン
 
JaSST'15 Tokyo 初心者向けチュートリアル -初心者からの脱出!-
JaSST'15 Tokyo 初心者向けチュートリアル -初心者からの脱出!-JaSST'15 Tokyo 初心者向けチュートリアル -初心者からの脱出!-
JaSST'15 Tokyo 初心者向けチュートリアル -初心者からの脱出!-
 
やさしいGitの内部構造 - yapcasia2013
やさしいGitの内部構造 - yapcasia2013やさしいGitの内部構造 - yapcasia2013
やさしいGitの内部構造 - yapcasia2013
 
人生がときめくAPIテスト自動化 with Karate
人生がときめくAPIテスト自動化 with Karate人生がときめくAPIテスト自動化 with Karate
人生がときめくAPIテスト自動化 with Karate
 
組織にテストを書く文化を根付かせる戦略と戦術
組織にテストを書く文化を根付かせる戦略と戦術組織にテストを書く文化を根付かせる戦略と戦術
組織にテストを書く文化を根付かせる戦略と戦術
 
ちょっと明日のテストの話をしよう
ちょっと明日のテストの話をしようちょっと明日のテストの話をしよう
ちょっと明日のテストの話をしよう
 
Pythonによる黒魔術入門
Pythonによる黒魔術入門Pythonによる黒魔術入門
Pythonによる黒魔術入門
 
Jubatusのリアルタイム分散レコメンデーション@TokyoNLP#9
Jubatusのリアルタイム分散レコメンデーション@TokyoNLP#9Jubatusのリアルタイム分散レコメンデーション@TokyoNLP#9
Jubatusのリアルタイム分散レコメンデーション@TokyoNLP#9
 
QAアーキテクチャの設計による 説明責任の高いテスト・品質保証
QAアーキテクチャの設計による説明責任の高いテスト・品質保証QAアーキテクチャの設計による説明責任の高いテスト・品質保証
QAアーキテクチャの設計による 説明責任の高いテスト・品質保証
 
リアルタイムサーバー 〜Erlang/OTPで作るPubSubサーバー〜
リアルタイムサーバー 〜Erlang/OTPで作るPubSubサーバー〜 リアルタイムサーバー 〜Erlang/OTPで作るPubSubサーバー〜
リアルタイムサーバー 〜Erlang/OTPで作るPubSubサーバー〜
 
CRDT in 15 minutes
CRDT in 15 minutesCRDT in 15 minutes
CRDT in 15 minutes
 
本当は恐ろしい分散システムの話
本当は恐ろしい分散システムの話本当は恐ろしい分散システムの話
本当は恐ろしい分散システムの話
 
[JJUG CCC 2021 Spring]Eclipse ユーザのための VSCode のススメ
[JJUG CCC 2021 Spring]Eclipse ユーザのための VSCode のススメ[JJUG CCC 2021 Spring]Eclipse ユーザのための VSCode のススメ
[JJUG CCC 2021 Spring]Eclipse ユーザのための VSCode のススメ
 
CODE BLUE 2014 : バグハンターの愉しみ by キヌガワマサト Masato Kinugawa
CODE BLUE 2014 : バグハンターの愉しみ by キヌガワマサト Masato KinugawaCODE BLUE 2014 : バグハンターの愉しみ by キヌガワマサト Masato Kinugawa
CODE BLUE 2014 : バグハンターの愉しみ by キヌガワマサト Masato Kinugawa
 
ソフトウェア開発工程とテスト入門
ソフトウェア開発工程とテスト入門ソフトウェア開発工程とテスト入門
ソフトウェア開発工程とテスト入門
 
例外設計における大罪
例外設計における大罪例外設計における大罪
例外設計における大罪
 

Semelhante a EMTEを使って自動化の費用対効果をわかりやすく表現する

アジャイルテスト -高品質を追求するアジャイルチームにおけるテストの視点-
アジャイルテスト  -高品質を追求するアジャイルチームにおけるテストの視点-アジャイルテスト  -高品質を追求するアジャイルチームにおけるテストの視点-
アジャイルテスト -高品質を追求するアジャイルチームにおけるテストの視点-
Satoshi Masuda
 
TABOK Skill Category2解説
TABOK Skill Category2解説TABOK Skill Category2解説
TABOK Skill Category2解説
Kinji Akemine
 
アジャイル×テスト開発を考える
アジャイル×テスト開発を考えるアジャイル×テスト開発を考える
アジャイル×テスト開発を考える
yasuohosotani
 
Agile japan2010 rakuten様プレゼン資料
Agile japan2010 rakuten様プレゼン資料Agile japan2010 rakuten様プレゼン資料
Agile japan2010 rakuten様プレゼン資料
Akiko Kosaka
 
Jenkins ユーザ・カンファレンス 2012 東京 S406-4/マルチステージ型継続的インテグレーションのすすめ
Jenkins ユーザ・カンファレンス 2012 東京 S406-4/マルチステージ型継続的インテグレーションのすすめJenkins ユーザ・カンファレンス 2012 東京 S406-4/マルチステージ型継続的インテグレーションのすすめ
Jenkins ユーザ・カンファレンス 2012 東京 S406-4/マルチステージ型継続的インテグレーションのすすめ
atsushi_tmx
 
システムテスト自動化標準ガイド第7章
システムテスト自動化標準ガイド第7章システムテスト自動化標準ガイド第7章
システムテスト自動化標準ガイド第7章
nihon buson
 

Semelhante a EMTEを使って自動化の費用対効果をわかりやすく表現する (20)

システムテスト自動化標準ガイド 読書会 第8章
システムテスト自動化標準ガイド 読書会 第8章システムテスト自動化標準ガイド 読書会 第8章
システムテスト自動化標準ガイド 読書会 第8章
 
テスト自動化とアーキテクチャ
テスト自動化とアーキテクチャテスト自動化とアーキテクチャ
テスト自動化とアーキテクチャ
 
Automation test.ssf alpha
Automation test.ssf alphaAutomation test.ssf alpha
Automation test.ssf alpha
 
ワンクリックデプロイ101 #ocdeploy
ワンクリックデプロイ101 #ocdeployワンクリックデプロイ101 #ocdeploy
ワンクリックデプロイ101 #ocdeploy
 
テストプロセス改善技術の概要
テストプロセス改善技術の概要テストプロセス改善技術の概要
テストプロセス改善技術の概要
 
アジャイルテスト -高品質を追求するアジャイルチームにおけるテストの視点-
アジャイルテスト  -高品質を追求するアジャイルチームにおけるテストの視点-アジャイルテスト  -高品質を追求するアジャイルチームにおけるテストの視点-
アジャイルテスト -高品質を追求するアジャイルチームにおけるテストの視点-
 
失敗から学ぶテスト自動化導入で大切なこと
失敗から学ぶテスト自動化導入で大切なこと失敗から学ぶテスト自動化導入で大切なこと
失敗から学ぶテスト自動化導入で大切なこと
 
SGT2013 技術トークス「アジャイルテスティング」
SGT2013 技術トークス「アジャイルテスティング」SGT2013 技術トークス「アジャイルテスティング」
SGT2013 技術トークス「アジャイルテスティング」
 
TABOK Skill Category2解説
TABOK Skill Category2解説TABOK Skill Category2解説
TABOK Skill Category2解説
 
Et west テスト自動化_公開版
Et west テスト自動化_公開版Et west テスト自動化_公開版
Et west テスト自動化_公開版
 
Q te cc2
Q te cc2Q te cc2
Q te cc2
 
【システムテスト自動化カンファレンス2015】 楽天の品質改善を加速する継続的システムテストパターン #stac2015
【システムテスト自動化カンファレンス2015】 楽天の品質改善を加速する継続的システムテストパターン #stac2015【システムテスト自動化カンファレンス2015】 楽天の品質改善を加速する継続的システムテストパターン #stac2015
【システムテスト自動化カンファレンス2015】 楽天の品質改善を加速する継続的システムテストパターン #stac2015
 
アジャイル×テスト開発を考える
アジャイル×テスト開発を考えるアジャイル×テスト開発を考える
アジャイル×テスト開発を考える
 
Gui自動テストツール基本
Gui自動テストツール基本Gui自動テストツール基本
Gui自動テストツール基本
 
Chainerと実験管理と私
Chainerと実験管理と私Chainerと実験管理と私
Chainerと実験管理と私
 
Agile japan2010 rakuten様プレゼン資料
Agile japan2010 rakuten様プレゼン資料Agile japan2010 rakuten様プレゼン資料
Agile japan2010 rakuten様プレゼン資料
 
【JaSST'14 Tokyo】システムテストの自動化による 大規模分散検索プラットフォームの 開発工程改善 #JaSST
【JaSST'14 Tokyo】システムテストの自動化による 大規模分散検索プラットフォームの 開発工程改善 #JaSST【JaSST'14 Tokyo】システムテストの自動化による 大規模分散検索プラットフォームの 開発工程改善 #JaSST
【JaSST'14 Tokyo】システムテストの自動化による 大規模分散検索プラットフォームの 開発工程改善 #JaSST
 
JUnit実践入門 xUnitTestPatternsで学ぶユニットテスト
JUnit実践入門 xUnitTestPatternsで学ぶユニットテストJUnit実践入門 xUnitTestPatternsで学ぶユニットテスト
JUnit実践入門 xUnitTestPatternsで学ぶユニットテスト
 
Jenkins ユーザ・カンファレンス 2012 東京 S406-4/マルチステージ型継続的インテグレーションのすすめ
Jenkins ユーザ・カンファレンス 2012 東京 S406-4/マルチステージ型継続的インテグレーションのすすめJenkins ユーザ・カンファレンス 2012 東京 S406-4/マルチステージ型継続的インテグレーションのすすめ
Jenkins ユーザ・カンファレンス 2012 東京 S406-4/マルチステージ型継続的インテグレーションのすすめ
 
システムテスト自動化標準ガイド第7章
システムテスト自動化標準ガイド第7章システムテスト自動化標準ガイド第7章
システムテスト自動化標準ガイド第7章
 

Último

Último (7)

Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
 
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイスLoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
 
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
 
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半        2024/04/26の勉強会で発表されたものです。新人研修 後半        2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
 
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
 
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
 
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルLoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
 

EMTEを使って自動化の費用対効果をわかりやすく表現する

  • 2. © LIFULL Co.,Ltd. 本書の無断転載、複製を固く禁じます。2 アジェンダ • 自己紹介 • EMTEとは • 自動テストの評価指標 • 実際のプロジェクトでの検証、測定 • EMTEを使うメリット • まとめ
  • 3. © LIFULL Co.,Ltd. 本書の無断転載、複製を固く禁じます。3 自己紹介
  • 4. © LIFULL Co.,Ltd. 本書の無断転載、複製を固く禁じます。4 自己紹介 Ruey Jye 芮 杰 (ゼイ ジェ) 台湾出身のSET (Software Engineer in Test) 呼び方:ゼイさん、Jさん 経歴: 2016 (来日) LIFULL(新卒) 品質管理グループ 2018 LIFULL SETグループ 2020 LIFULL クオリティエンジニアリンググループ 資格 • ISTQB CTFL (Foundation Level) • ISTQB CTAL-TAE (Advanced Level Test Automation Engineer) テストプロバイダ経由し て、日本のテストセンタ ーで試験受けました。
  • 5. © LIFULL Co.,Ltd. 本書の無断転載、複製を固く禁じます。5 EMTEとは
  • 6. © LIFULL Co.,Ltd. 本書の無断転載、複製を固く禁じます。6 みなさんはEMTEを聞いたことありますか?
  • 7. © LIFULL Co.,Ltd. 本書の無断転載、複製を固く禁じます。7 EMTEとは EMTE (Equivalent Manual Test Effort) テストを手動で実行する工数 参考:ISTQBの用語集 https://glossary.istqb.org/jp/search/EMTE
  • 8. © LIFULL Co.,Ltd. 本書の無断転載、複製を固く禁じます。8 EMTEとは 例: テストを手動で実行する工数:120分 そのテストを自動化したときの実行時間:30分
  • 9. © LIFULL Co.,Ltd. 本書の無断転載、複製を固く禁じます。9 EMTEとは 例: テストを手動で実行する工数:120分 ➡︎ 1 EMTE そのテストを自動化したときの実行時間:30分 ➡︎ 0.25 EMTE EMTEは時間単位と変換ができます!
  • 10. © LIFULL Co.,Ltd. 本書の無断転載、複製を固く禁じます。10 なぜEMTEに変換するのか?
  • 11. © LIFULL Co.,Ltd. 本書の無断転載、複製を固く禁じます。11 EMTEの効果 手動実行で消費した時間と相対的にできる 手動実行時間自動実行時間 その他の工数 自動テスト実行 0.25 EMTE (テスト実施者は手動実行の 1/4だと直感的に判断できる)
  • 12. © LIFULL Co.,Ltd. 本書の無断転載、複製を固く禁じます。12 自動テストの評価指標
  • 13. © LIFULL Co.,Ltd. 本書の無断転載、複製を固く禁じます。13 なぜ自動テストを評価するのでしょうか
  • 14. © LIFULL Co.,Ltd. 本書の無断転載、複製を固く禁じます。14 目的の達成を確認するためです
  • 15. © LIFULL Co.,Ltd. 本書の無断転載、複製を固く禁じます。15 自動テストの評価指標 • External TAS metrics – Automation benefits (自動化メリット) – Effort to build automated tests (自動テストの構築工数) – Effort to analyze automated test incidents (自動テストの結果分析工数) – Effort to maintain automated tests (自動テストのメンテナンス工数) – Ratio of failures to defects (同じ欠陥によるケース失敗率) – Time to execute automated tests (自動テストの実行時間) – Number of automated test cases (自動テストのケース数) – Number of pass and fail results (自動テストのケース成功/失敗数) – Number of false-fail and false-pass results (自動テストの結果誤判定数) – Code coverage (自動テストのカバレッジ) • Internal TAS metrics – Tool scripting metrics (分析ツールの結果メトリクス) – Automation code defect density (自動テストのコードの欠陥密度) – Speed and efficiency of TAS components (自動テスト各コンポネートの効率) 参考:ISTQB CTAL-TAEシラバス https://www.istqb.org/downloads/category/48-advanced-level-test-automation-engineer-documents.html 補足:TASはTest Automation Solutionの略語です
  • 16. © LIFULL Co.,Ltd. 本書の無断転載、複製を固く禁じます。16 工数系の指標のみ紹介します
  • 17. © LIFULL Co.,Ltd. 本書の無断転載、複製を固く禁じます。17 自動テストの評価指標 • External TAS metrics – Automation benefits (自動化メリット) – Effort to build automated tests (自動テストの構築工数) – Effort to analyze automated test incidents (自動テストの結果分析工数) – Effort to maintain automated tests (自動テストのメンテナンス工数) – Ratio of failures to defects (同じ欠陥よるのケース失敗率) シラバスによるとこれらの指標は EMTEに変換して表現できることも 記載されています 参考:ISTQB CTAL-TAEシラバス https://www.istqb.org/downloads/category/48-advanced-level-test-automation-engineer-documents.html
  • 18. © LIFULL Co.,Ltd. 本書の無断転載、複製を固く禁じます。18 自動テストの評価指標 • 自動テストの構築工数 自動テスト環境構築、テストケース設計、テストケース実装などの初期コスト • 自動テストの結果分析工数 自動テスト実行後の結果確認、不安定なテストの再実行、 デグレーションが発生の確認などの運用コスト • 自動テストのメンテナンス工数 テストケースの修正やテストデータの整備などの運用コスト
  • 19. © LIFULL Co.,Ltd. 本書の無断転載、複製を固く禁じます。19 実際のプロジェクトでの検証、測定
  • 20. © LIFULL Co.,Ltd. 本書の無断転載、複製を固く禁じます。20 検証したプロジェクト概要
  • 21. © LIFULL Co.,Ltd. 本書の無断転載、複製を固く禁じます。21 検証したプロジェクト概要 Tチームの自動テストを構築しました 対応した内容: • 自動テスト環境構築 • テストケース設計、実装 • 実際の運用サポート
  • 22. © LIFULL Co.,Ltd. 本書の無断転載、複製を固く禁じます。22 集計結果
  • 23. © LIFULL Co.,Ltd. 本書の無断転載、複製を固く禁じます。23 実際の数字 - 実行時間 • 全ケースを手動で行う時間 1時間34分10秒 ➡︎ 5650秒 • 自動テスト実行時間 531秒 ※計算しやすくするため、秒単位で表しています
  • 24. © LIFULL Co.,Ltd. 本書の無断転載、複製を固く禁じます。24 実際の数字 - 評価指標 • 自動テストの構築工数 97時間 ➡︎ 349200秒 • 自動テストの結果分析工数 30分 ➡︎ 1800秒 • 自動テストのメンテナンス工数 30分 ➡︎ 1800秒 ※計算しやすくため、秒単位で表しています
  • 25. © LIFULL Co.,Ltd. 本書の無断転載、複製を固く禁じます。25 EMTEで変換
  • 26. © LIFULL Co.,Ltd. 本書の無断転載、複製を固く禁じます。26 実際の数字 - 評価指標 • 自動テストの構築工数 349200秒 ➡︎ 61.81EMTE • 自動テストの結果分析工数 1800秒 ➡︎ 0.32 EMTE • 自動テストのメンテナンス工数 1800秒 ➡︎ 0.32 EMTE • 全ケースを手動で行う時間 5650秒 ➡︎ 1 EMTE • 自動テスト実行時間 531秒 ➡︎ 0.094 EMTE
  • 27. © LIFULL Co.,Ltd. 本書の無断転載、複製を固く禁じます。27 わかったこと
  • 28. © LIFULL Co.,Ltd. 本書の無断転載、複製を固く禁じます。28 わかったこと • 自動テストの実行効率がいい 自動実行 = 0.094 EMTE (手動の10倍ぐらい早い) • 運用作業を含めても自動テストのコストは高くない 手動実行 > ( 自動実行 + 分析 + メンテナンス ) ➡︎ 1 > ( 0.094 + 0.32 + 0.32 ) (手動実行時間内に収まる)
  • 29. © LIFULL Co.,Ltd. 本書の無断転載、複製を固く禁じます。29 わかったこと • 構築工数を還元するまでの期間 自動化で節約出来た時間 = 手動実行 - 自動実行 = 1-0.094 = 0.906 EMTE 構築工数を還元するまでの回数 (※仮に毎回の実行で分析、メンテナンスが発生しない場合) = 構築工数 / 自動化で節約出来た時間 = 61.81 / 0.906 ≒ 68回
  • 30. © LIFULL Co.,Ltd. 本書の無断転載、複製を固く禁じます。30 EMTEを使うメリット
  • 31. © LIFULL Co.,Ltd. 本書の無断転載、複製を固く禁じます。31 メリット 時間より、効果がわかりやすい 手動実行時間 1時間34分10秒 自動テスト 実行時間 8分51秒 自動テスト 結果分析工数 30分 自動テスト メンテナンス工数 30分 自動テスト 構築工数 97時間 手動実行時間 1 EMTE 自動テスト 実行時間 0.094 EMTE 自動テスト 結果分析工数 0.32 EMTE 自動テスト メンテナンス工数 0.32 EMTE 自動テスト 構築工数 61.81 EMTE
  • 32. © LIFULL Co.,Ltd. 本書の無断転載、複製を固く禁じます。32 工数と節約の費用対効果
  • 33. © LIFULL Co.,Ltd. 本書の無断転載、複製を固く禁じます。33 費用対効果(運用コストなし) 初期コスト = 61.81 EMTE (1回のみ) 節約した工数 = 0.906 EMTE/回 68回自動テストを回すことで 初期コストの元が取れる!
  • 34. © LIFULL Co.,Ltd. 本書の無断転載、複製を固く禁じます。34 費用対効果(運用コスト込) 初期コスト = 61.81 EMTE (1回のみ) 運用コスト = 0.64 EMTE/回 節約した工数 = 0.906 EMTE/回 233回自動テストを回すことで 初期コスト+運用コストの元が取 れる!
  • 35. © LIFULL Co.,Ltd. 本書の無断転載、複製を固く禁じます。35 補足情報
  • 36. © LIFULL Co.,Ltd. 本書の無断転載、複製を固く禁じます。36 補足情報 • EMTEはただの単位変換 時間単位のままでも計算出来ます • EMTEは工数の指標のみ 他の自動テスト指標は別集計が必要 • 節約は必要な自動テストのみ有効になります 1リリースサイクルで1回自動テストを実行するのであれば、 そのサイクルにある自動テストの実行のみ効果があります
  • 37. © LIFULL Co.,Ltd. 本書の無断転載、複製を固く禁じます。37 まとめ
  • 38. © LIFULL Co.,Ltd. 本書の無断転載、複製を固く禁じます。38 まとめ EMTEは手動で消費した時間と相対的に比較できます EMTEは効果をわかりやすく表現できます テストの目的と合わせて、必要な指標も測りましょう
  • 39. © LIFULL Co.,Ltd. 本書の無断転載、複製を固く禁じます。39 ご清聴ありがとうございました