SlideShare a Scribd company logo
Soumettre la recherche
Mettre en ligne
S’identifier
S’inscrire
オレオレになりがちなテスト計画を見直した話
Signaler
terahide
Suivre
20 May 2023
•
0 j'aime
•
74 vues
1
sur
21
オレオレになりがちなテスト計画を見直した話
20 May 2023
•
0 j'aime
•
74 vues
Télécharger maintenant
Télécharger pour lire hors ligne
Signaler
Technologie
Scrum Fest Niigata 2023 RoomD 15:30-16:00
terahide
Suivre
Recommandé
マイクロにしすぎた結果がこれだよ!
mosa siru
132.1K vues
•
32 diapositives
それはYAGNIか? それとも思考停止か?
Yoshitaka Kawashima
29K vues
•
41 diapositives
テストとリファクタリングに関する深い方法論 #wewlc_jp
kyon mm
20.5K vues
•
63 diapositives
がんばらなくても C# で Single Page Web アプリケーションが書けてしまう「Blazor」とは
Jun-ichi Sakamoto
21.5K vues
•
64 diapositives
シリコンバレーの「何が」凄いのか
Atsushi Nakada
183.4K vues
•
77 diapositives
コンテナの作り方「Dockerは裏方で何をしているのか?」
Masahito Zembutsu
30.2K vues
•
96 diapositives
Contenu connexe
Tendances
劇的改善 Ci4時間から5分へ〜私がやった10のこと〜
aha_oretama
14.5K vues
•
19 diapositives
目grep入門 +解説
murachue
88.6K vues
•
83 diapositives
ふつうのRailsアプリケーション開発
Takafumi ONAKA
30.7K vues
•
90 diapositives
組織にテストを書く文化を根付かせる戦略と戦術
Takuto Wada
76.4K vues
•
33 diapositives
エンジニアの個人ブランディングと技術組織
Takafumi ONAKA
22.9K vues
•
40 diapositives
TDD のこころ
Takuto Wada
12.6K vues
•
52 diapositives
Tendances
(20)
劇的改善 Ci4時間から5分へ〜私がやった10のこと〜
aha_oretama
•
14.5K vues
目grep入門 +解説
murachue
•
88.6K vues
ふつうのRailsアプリケーション開発
Takafumi ONAKA
•
30.7K vues
組織にテストを書く文化を根付かせる戦略と戦術
Takuto Wada
•
76.4K vues
エンジニアの個人ブランディングと技術組織
Takafumi ONAKA
•
22.9K vues
TDD のこころ
Takuto Wada
•
12.6K vues
「関心の分離」と「疎結合」 ソフトウェアアーキテクチャのひとかけら
Atsushi Nakamura
•
8K vues
DockerコンテナでGitを使う
Kazuhiro Suga
•
18.3K vues
SQLアンチパターン 幻の第26章「とりあえず削除フラグ」
Takuto Wada
•
147K vues
DevOps勉強会
Shuntaro Saiba
•
1.8K vues
トランザクションの設計と進化
Kumazaki Hiroki
•
71.3K vues
モノリスからマイクロサービスへの移行 ~ストラングラーパターンの検証~(Spring Fest 2020講演資料)
NTT DATA Technology & Innovation
•
3.6K vues
Serf / Consul 入門 ~仕事を楽しくしよう~
Masahito Zembutsu
•
19.3K vues
エンジニアから飛んでくるマサカリを受け止める心得
Reimi Kuramochi Chiba
•
64.3K vues
イミュータブルデータモデルの極意
Yoshitaka Kawashima
•
23.3K vues
Docker Compose 徹底解説
Masahito Zembutsu
•
60.9K vues
ServiceとRepository
シオリ ショウノ
•
3.8K vues
The only one big thing every programmer should know
Takuto Wada
•
7.9K vues
新たなgitのブランチモデル「Git Feature Flow」!Git Flow,Git Hub Flow,Git Lab Flowを超えれるか?
naoki koyama
•
89.4K vues
緊急Ques - コードのメトリクスに基づくリファクタリング戦略
Tomoki Kuriyama
•
2.7K vues
Similaire à オレオレになりがちなテスト計画を見直した話
チームで行う探索的テスト
Tomonobu Kawakita
90 vues
•
45 diapositives
アジャイルなテストの見積もりと計画作り
kyon mm
3.4K vues
•
136 diapositives
テストエンジニアの品格 #automatornight
kyon mm
52.6K vues
•
51 diapositives
TDDを研ぎ究める
pocketberserker
1K vues
•
87 diapositives
Scrum,Test,Metrics #sgt2016
kyon mm
20.2K vues
•
71 diapositives
はじめてのテスト技法
Tatsuya Saito
1.9K vues
•
15 diapositives
Similaire à オレオレになりがちなテスト計画を見直した話
(20)
チームで行う探索的テスト
Tomonobu Kawakita
•
90 vues
アジャイルなテストの見積もりと計画作り
kyon mm
•
3.4K vues
テストエンジニアの品格 #automatornight
kyon mm
•
52.6K vues
TDDを研ぎ究める
pocketberserker
•
1K vues
Scrum,Test,Metrics #sgt2016
kyon mm
•
20.2K vues
はじめてのテスト技法
Tatsuya Saito
•
1.9K vues
分散開発チームによるAgile開発実践 ~いろいろハマった!よかった
Makoto Iguchi
•
4K vues
PHPのテスト名を日本語にした話
Norifumi Kawamoto
•
3.4K vues
Sue445 Style TDD #atest_hack
Go Sueyoshi (a.k.a sue445)
•
1.5K vues
#NagoyaTesting アジャイルなテストの見積りと計画づくり
kyon mm
•
5.9K vues
JavaのテストGroovyでいいのではないかという話
disc99_
•
9.8K vues
テストを書こう!!
拓 小林
•
1.9K vues
テストを育てる。テストを支える(Ultimate Agilist Tokyo)
H Iseri
•
4.8K vues
コミュニケーションスキルを重視したソフトウェア技術者教育手法の研究
Yuichiro Saito
•
7.3K vues
Testing processqualifylevel 2009
Shinsuke Matsuki
•
601 vues
Coderetreat のススメ at Developers' Summit 2013 Unconference
Kiro Harada
•
1.6K vues
サイボウズQAの働き方
Cy1DayCy1Day
•
865 vues
ソフトウェアテストことはじめ2016年ver
Kosuke Fujisawa
•
19.7K vues
nseg第5回勉強会
ko ty
•
798 vues
Xcode10での テスト周りの進化をふりかえる
Toshiyuki Hirata
•
1.8K vues
Plus de terahide
和服を普段着にするようになって気づいたアジャイルの心
terahide
289 vues
•
41 diapositives
Management3.0のワークを受けてから会社の偉い人へM3.0のワークショップをするまでにやったこと
terahide
80 vues
•
26 diapositives
一番アジャイルな料理人はソーマくんだと思うんだ
terahide
159 vues
•
19 diapositives
Att
terahide
1.6K vues
•
29 diapositives
受託開発でテストファーストしたらXXXを早期発見できてハイアジリティになったはなし
terahide
3.8K vues
•
50 diapositives
オフショアだから失敗したの?~誤解だらけのオフショアと、アジャイルの再発見~
terahide
1.6K vues
•
34 diapositives
Plus de terahide
(20)
和服を普段着にするようになって気づいたアジャイルの心
terahide
•
289 vues
Management3.0のワークを受けてから会社の偉い人へM3.0のワークショップをするまでにやったこと
terahide
•
80 vues
一番アジャイルな料理人はソーマくんだと思うんだ
terahide
•
159 vues
Att
terahide
•
1.6K vues
受託開発でテストファーストしたらXXXを早期発見できてハイアジリティになったはなし
terahide
•
3.8K vues
オフショアだから失敗したの?~誤解だらけのオフショアと、アジャイルの再発見~
terahide
•
1.6K vues
Springのプログラムモデルと動く仕様~テスト編~
terahide
•
2.6K vues
Spring bootで学ぶ初めてのwebアプリ開発
terahide
•
12.7K vues
明日に繋がるふり返りのプラクティス
terahide
•
679 vues
ふりかえり
terahide
•
3.2K vues
データモデルは時空を越える
terahide
•
5K vues
ももたろう
terahide
•
3K vues
Vbaでもtdd
terahide
•
2K vues
Sierのアジャイルとジレンマとパラダイムシフト
terahide
•
3.9K vues
脱Java初心者を目指すときに読むといいと思う本を考える会
terahide
•
1.7K vues
再入門!RESTとSpringMVC
terahide
•
9.2K vues
SGT2014 横浜道場 始めよう!インセプションデッキ
terahide
•
3.1K vues
Tdd keyword
terahide
•
515 vues
ゆるぎー
terahide
•
822 vues
マシュマロチャレンジ
terahide
•
2.1K vues
Dernier
テスト自動化.pdf
ssuserf8ea02
23 vues
•
26 diapositives
GraphQLはどんな時に使うか
Yutaka Tachibana
6 vues
•
37 diapositives
遠隔お酌IoTLT2309.pptx
Yoshiaki Ito
121 vues
•
12 diapositives
20230921_IoTLT_vol103_kitazaki_v1.pdf
Ayachika Kitazaki
140 vues
•
16 diapositives
2023情報処理学会関西支部大会-G12.pdf
KoseiShimoda1
6 vues
•
11 diapositives
CatBoost on GPU のひみつ
Takuji Tahara
421 vues
•
30 diapositives
Dernier
(10)
テスト自動化.pdf
ssuserf8ea02
•
23 vues
GraphQLはどんな時に使うか
Yutaka Tachibana
•
6 vues
遠隔お酌IoTLT2309.pptx
Yoshiaki Ito
•
121 vues
20230921_IoTLT_vol103_kitazaki_v1.pdf
Ayachika Kitazaki
•
140 vues
2023情報処理学会関西支部大会-G12.pdf
KoseiShimoda1
•
6 vues
CatBoost on GPU のひみつ
Takuji Tahara
•
421 vues
gtk4_gem_usage.pdf
ssuser0ef4681
•
14 vues
松下研究室紹介_関西大学高槻キャンパスオープンキャンパス
Matsushita Laboratory
•
26 vues
CCoE実践者コミュニティ#1_CCoEが進めるセキュリティカイゼンの旅.pptx
Tomoaki Tada
•
26 vues
IGDA Japan SIG Audio #20-1 室内・野外でのマイク収録と整音.pdf
IGDA Japan SIG-Audio
•
103 vues
オレオレになりがちなテスト計画を見直した話
1.
オレオレになりがちな テスト計画を見直した話 てらひで 2023.5.20 Scrum Fest
Niigata 2023 RoomD 15:30-15:50
2.
テストをしていて 困ったときは ありませんか?
3.
テストあるある • 何のテストをしているのかわからない • どこの(テストレベル)で何をしたらいい か分からない •
テストレベルを跨いでテストケースの重 複が見受けられて効率的とは言えない • 後続のテストレベルで前段で見つかる べきインシデントが散見される
4.
今までのテスト計画 •各テストレベルで「なんとなく こんなことをやるよー」みたい なルールを決めていた
5.
良くないなーと思い見直すことに • ソフトウェアテストの国際規格「ISO/IEC/IEEE 29119」 •
2007年に作成が始まった。最初のPart1は2013年に公布され、最 後のPart5は、2016年に公布された • Part1~5で構成される • Part1 概念と定義 • Part2 テストプロセス • Part3 テストドキュメント • Part4 テスト技法 • Part5 キーワード駆動テスト ISBN-10:499113790X てらひではこちらの書籍で 学ばさせて頂きました 大変感謝しております
6.
本日は「ISO/IEC/IEEE 29119」 の概要を自分なりに整理し 事例とスクラムのエッセンスを交 えてご説明いたします
7.
だれ? てらひで @terahide27 • SIorを中心にアジャイルを叫んでいる •
ふりかえりの人 • テスト駆動開発の人 • 着物ぐらし • 深夜アニメのカバレッジ90% • 初音ミク • 酒・ラーメン
8.
ISO/IEC/IEEE 29119 の構成 ソフトウェアテスト規格の教科書より ※本書では(レビューなどの)他の規格への参照も掲載されているが割愛 Part1 テストの概念と定義 Part2 テストプロセス Part3 テストドキュメント Part4 テスト技法 Part5 キーワード駆動テスト
9.
ISO/IEC/IEEE 29119 における適用分野 •
すべての産業分野 • セーフティクリティカルおよびそれ以外のシステム • 探索的テストおよびスクリプトテスト • 伝統的なモデル(例えば、ウォーターフォール、V字モデル) やアジャイル(例えばスクラム、カンバン、ハイブリッド)を含 むすべてのライフサイクルモデル • 自動テスト ほぼ全てのプロジェクトで適用が可能
10.
リスクベースドテスト • ISO/IEC/IEEE 29119は、リスクベースドテストの根底に流れる思 想を支持している •
リスクベースドテストでは、テストにより品質リスクを軽減させリスクレ ベルを受け入れ可能なレベルにまで引き下げるという目的がある リスクとは? リスクとは、悪いまたは望ましくない結果やイベントをもたらす可能性である • プロダクトリスク:潜在的な問題の主な影響がプロダクト品質におよぶリスク • プロジェクトリスク:潜在的な問題の主な影響がプロジェクト成功におよぶリスク
11.
テスト計画 • 状況の把握 • どのような機能が期待されているかを知ることが有効 •
システムに何を期待しているかを各ステークホルダと会話する • リスクの特定 • ステークホルダによってすでに特定されているリスクを確認 • 更なるリスクを特定する • リスクの評価 • 相対的なリスクスコア(発生率x影響)に合意する • リスクの低減 • リスクを管理するためのオプションを特定する • リスク低減の措置としてなんのテスト(テストレベル・テスト技法)を行うかを決める • テスト戦略の設計 • 個別リスクに基づくテスト戦略 • どのテストレベルでどのテスト技法を用いてテストを行い、どこまでテストすれば完 了か(網羅性)を記載する
12.
4次元で表してみる Time 線 面 時間軸 立体 ※1次元は点であることは承知してます 説明のために目を瞑ってください。。。
13.
1次元:点と線とテスト技法 Part4 テスト技法より • 同値分割法 •
境界値分析 配送料 1kg未満 500円 1kg以上 1000円 5kg以上 ※配送不可 1kg 5kg 同値パーテーション 同値パーテーション 同値パーテーション 200gでも500gで も500円 2kgでも3kgでも 1000円 5kgでも10kgでも 配送不可 境界値 境界値 値の正当性
14.
2次元:面とテストターゲットとテストケース • テスト対象の網羅性 • テスト戦略設計の中で、どのテストターゲットをどれだけテストすればそのリ スクが低減できるかを考えると網羅を考える必要が出てくることもある。ま るで面で潰すかのように Part4
テスト技法より • 状態遷移テスト • ディシジョンテーブル • 組み合わせテスト #1 #2 #3 #4 室温が21℃未満 T T F F 20℃に設定 T F T F 冷たい空気が出る F - T - 麺 タレ スープ #1 細麺 味噌 鶏がら #2 中太 塩 とんこつ #3 太麺 醤油 煮干しT 現状のス テータス イベント 期待す る結果 #1 A あ B #2 B い C #3 B う D #4 C え A A B C D イベント:あ い う え 麺 細麺 中太 太麺 タレ 味噌 塩 醤油 スープ 鶏がら とんこつ 煮干し 以下組み合わせが続く。。。 状態遷移テスト ディシジョンテーブル 組み合わせテスト 値の正当性 網羅性
15.
3次元:立体とテストレベル • それぞれのリスクに対して、 • どのテストレベルで •
どのテスト技法を用いてテストを行い • どこまでテストすれば完了か 値の正当性 網羅性 テストレベル の妥当性 単体テスト 結合テスト 受入 テスト テストレベル ID プロダクトリスク スコア テストレベル テスト手法 R1 顧客が登録できない 6 単体テスト 状態遷移テスト 結合テスト シナリオテスト 受入テスト 探索的テスト R2 顧客が予約できない 6 単体テスト 状態遷移テスト デシジョンテーブルテスト 結合テスト シナリオテスト 受入テスト 探索的テスト R3 システム応答時間が遅すぎる 3 性能テスト ...省略 自動テスト • コードをビルドする前に静的解析を行って、不正を除去すること • 全てのコードにおいて100%のステートメントカバレッジを達成し、再利用 可能なテストケースと共にコミットすること 手動テスト • 単体テストのディシジョンテーブルに基にしたシナリオを作成し、正常系、異 常系とも網羅すること テスト計画書の例(テスト戦略部分の抜粋) テスト完了条件の抜粋 ある程度は「ルール」となる
16.
4次元:時間軸とShift Left Testing •
※ ISO/IEC/IEEE 29119 から離れます 値の正当性 網羅性 テストレベル の妥当性 time Shift Left Testingとは? この場では「思ったタイミングより早いタイミングでテストのことを考える・始める」 くらいの意 テストファースト テストコード プロダクション コード 先にテストを書く テストを成功させる プロダクションコードを書く テストを成功したら 次のテストを書く 受入テスト駆動開発 受 入 テ ス ト スプリント 受入テスト仕様 プランニング バックログリ ファインメント • そのバックログが開発され るスプリントが始まる前に 受入条件(受入テスト 仕様)を作成しておく • プランニングのインプットや 受入テストで使用する • それによりよりバックログの 理解が深まるとともに受入 テストを円滑に進めること ができる TF ATDD
17.
みたいなことを「テス ト計画書」としてまと めればよいのでは 「ルール」として書く部分と個別のリスクに向き合って書く部分を分ける
18.
スクラムへの適応 • スクラムガイド 2020には 「完成の定義を満たさない限り、 作業をインクリメントの一部とみなすことはできない」 •
完成の定義に「ルール」を • 個別のリスクはスプリント単位でテスト計画を スプリント 出荷可能な インクリメント DoD テスト計画 実装 テスト ※実際のテストの作業は • テスト設計・実装 • テストの実行 • テストのモニタリング • インシデントの対応 など複数の作業となりますがここでは省略しています Part2 テストプロセス 参照
19.
事例:受入テスト駆動開発 Given When Then 例:
一覧画面で アイテムを選ぶと 詳細画面が表示される 選択したアイテムが表示される (右のExcelを 見せて) これ埋められま せんか? スプリント バックログ 受入 テスト仕様 受入 テスト 顧客 開発者 • 基本的には計画駆動(作るものが決まっている) • スプリントが始まるまでに、そのスプリントで消化予定の バックログの受入テスト仕様を作成(顧客) • 開発のスプリントでその仕様を元にGherkin形式に対 応したテストフレームワークで自動化 • 自動化できるものは自動化、そうでないものは手動で (TestRailを使って見える化) たぶんで きそう Excel
20.
まとめ • 国際規格を知っておくとチーム内・ステークホルダと プロトコルが作りやすいかも • テスト技法はたくさん覚えておくと都合がいい •
テストの「ルールを決める」だけではなく、「テスト計画」をする • 早期発見・早期治療
21.
Happy Development Life