SlideShare a Scribd company logo
1 of 48
Download to read offline
はじめての
ソフトウェアテスト
はじめてのテスト講座
~初心者向けソフトウェアテストのお話~
in Fusic
2017.06.14
@____rina____
 品質に関するおはなし
 QCDについて
 ワーク1:立ち位置からの観点導出
 品質モデルの話:狩野モデル
 ソフトウェア品質モデルのおはなし
 ソフトウェアテストのおはなし
 ワーク2:マイヤーズの三角形問題
 ソフトウェアテストのお勉強的なおはなし
アジェンダ
3
品質に関するおはなし
4
 品質に関するおはなし
 QCDについて
 ワーク1:立ち位置からの観点導出
 品質モデルの話:狩野モデル
 ソフトウェア品質モデルのおはなし
 ソフトウェアテストのおはなし
 ワーク2:マイヤーズの三角形問題
 ソフトウェアテストのお勉強的なおはなし
アジェンダ
5
Quality :「品質」
Cost :「コスト」
Delivery :「納期」
QCDについて
6
 品質に関するおはなし
 QCDについて
 ワーク1:立ち位置からの観点導出
 品質モデルの話:狩野モデル
 ソフトウェア品質モデルのおはなし
 ソフトウェアテストのおはなし
 ワーク2:マイヤーズの三角形問題
 ソフトウェアテストのお勉強的なおはなし
アジェンダ
7
それぞれの立ち位置(立場)で“製品の観点”を
挙げてください。
A:市場・顧客
B:製品企画
C:設計・開発
D:テスト
参考:現在のレビューに必要な次の一手を把握しよう! レビュー実践ウォークスルー
安達 賢二
http://www.slideshare.net/AdachiKenji/20150529-ja-sst15web
ワーク1:立ち位置からの観点導出
8
“製品の観点”
A:市場・顧客
B:製品企画
C:設計・開発
D:テスト
発表 | 立ち位置からの観点導出
9
“製品の観点”
A:市場・顧客
使いたいか、流行りそうか、見た目のよさ、ステータス
B:製品企画
売れそうか
C:設計・開発
簡単に作れそうか、汎用性、最新技術が使えるか
D:テスト
問題なく使えるか、使いやすいか
発表(ほんの一例) | 立ち位置からの観点導出
10
立ち位置が変わると
同じ製品でも重要となる箇所が変わる
ワークの目的 | 立ち位置からの観点導出
11
 品質に関するおはなし
 QCDについて
 ワーク1:立ち位置からの観点導出
 品質モデルの話:狩野モデル
 ソフトウェア品質モデルのおはなし
 ソフトウェアテストのおはなし
 ワーク2:マイヤーズの三角形問題
 ソフトウェアテストのお勉強的なおはなし
アジェンダ
12
狩野モデル
https://sites.google.com/site/techdmba/kanomodel
13
顧客の満足感
物
理
的
充
足
状
況
製品品質モデル ISO/IEC 25010:2011
14
ソフトウェアテストのおはなし
15
 品質に関するおはなし
 QCDについて
 ワーク1:立ち位置からの観点導出
 品質モデルの話:狩野モデル
 ソフトウェア品質モデルのおはなし
 ソフトウェアテストのおはなし
 ワーク2:マイヤーズの三角形問題
 ソフトウェアテストのお勉強的なおはなし
アジェンダ
16
プログラムをテストするのに十分と思われる一連
のテストケース(すなわち十分なデータのセッ
ト)を書いてください。
1.このプログラムは、カードから3つの整数を読
む。
2.この3つの値は、それぞれ三角形の3辺の長さ
を表すものとする。
3.プログラムは、三角形が不等辺三角形、二等辺
三角形、正三角形のうちどれであるかを決める
メッセージを印字する。
ワーク2:マイヤーズの三角形問題
ソフトウェア・テストの技法 より GLENFORD J.MYERS
17
1. 有効な不等辺三角形として成立するか
例[A=3,B=4,C=5]
2. 有効な正三角形として成立するか [A=B=C]
例[A=1,B=1,C=1]
3. 有効な二等辺三角形として成立するか [A=B]
例[A=2,B=2,C=3]
4. 有効な二等辺三角形として成立し、2つの等辺
を含む3種類の組み合わせ [A=B, B=C, C=A]
例[A=3,B=3,C=4][A=3,B=4,C=3][A=4,B=3,C=3]
ワーク2(解答):マイヤーズの三角形問題
18
5. 入力した項目が0の場合
例[A=0,B=3,C=4 他1つが0の場合 3パターン]
[A=0,B=0,C=1 他2つが0の場合 3パターン]
6. 入力した項目がマイナスの場合
例[A=-1,B=3,C=4 他1つがマイナスの場合 3パターン]
[A=-1,B=-1,C=1 他2つがマイナスの場合 3パターン]
[A=-1,B=-1,C=-1]
7. 全ての項目が0を超える整数だが、2つの項目
の和が残りの1つの項目と等しい場合
[A+B=C]
例[A=1,B=2,C=3]
ワーク2(解答):マイヤーズの三角形問題
19
8. 「7」の項目において、3種類の組み合わせ
[A+B=C]
例[A=1,B=2,C=3][A=1,B=3,C=2][A=3,B=2,C=1]
9. 全ての項目が0を超える整数だが、2つの項目
の和が残り1つの項目より小さい場合
[A+B<C]
例[A=1,B=2,C=4]
10.「9」の項目において、3種類の組み合わせ
[A+B<C,B+C<A,C+A<B]
例[A=1,B=2,C=4],[A=1,B=4,C=2], [A=4,B=2,C=1]
ワーク2(解答):マイヤーズの三角形問題
20
11.全ての項目が0の場合 [A=B=C=0]
例[A=0,B=0,C=0]
12.半角数字の整数ではない値が入力されている場合
例[小数点、制御コード、半角/全角スペース、
半角/全角英大小文字、半角/全角カナ、
全角数字、かな、漢字 等]
13.入力されている値が3個に満たない場合
例 [A=null,B=3,C=4 他1つが空欄の場合3パターン],
[A=null,B=null,C=1 他2つが空欄の場合3パターン],
[A=null,B=null,C=null]
14.入力した値に対して期待される表示結果と実際の
表示結果が合っているか
ワーク2(解答):マイヤーズの三角形問題
21
http://blog.livedoor.jp/hime78/archives/50980099.html
簡単そうな問題でも、
テストの抜け・漏れが発生する
テストパターンはたくさんある
ワークの目的 |マイヤーズの三角形問題
22
マイヤーズの三角形問題を勉強会でするよーっ
て言ったら、思ってたより色々大変だというこ
とを教えてもらって深かったときの話
http://togetter.com/li/843768
三角形問題で必要なテストケース数
http://a-lifelong-tester.cocolog-
nifty.com/blog/2011/06/post-caee.html
三角形問題のテストの考え方いろいろ
http://a-lifelong-tester.cocolog-
nifty.com/blog/2011/06/post-790a.html
余談|マイヤーズの三角形問題
23
 品質に関するおはなし
 QCDについて
 ワーク1:立ち位置からの観点導出
 品質モデルの話:狩野モデル
 ソフトウェア品質モデルのおはなし
 ソフトウェアテストのおはなし
 ワーク2:マイヤーズの三角形問題
 ソフトウェアテストのお勉強的なおはなし
アジェンダ
24
ソフトウェアテストのお勉強的なおはなし
テストの7原則
テスト技法
テストレベル
テストタイプ
テストの4象限
ソフトウェアテストのお勉強的なおはなし |アジェンダ
25
1. テストは「欠陥がある」ことしか示せない
2. 全数テストは不可能
3. 初期テスト
4. 欠陥の偏在
5. 殺虫剤のパラドックス
6. テストは条件次第
7. 「バグゼロ」の落とし穴
テストの7原則
26
テストをすることで
「欠陥がない」と
示すことはできない
1.テストは「欠陥がある」ことしか示せない |テストの7原則
27
2.全数テストは不可能 |テストの7原則
因子数
n
総当り
テスト項目数のオーダー:
<2n>
2因子間の
全組合せ
<n2>
HAYST法
<n>
ペアワイズ
√n
10 1,024 180 16 9
20 1,048,576 760 32 10
30 1,073,741,824 1,740 32 12
40 1,099,511,627,776 3,120 64 13
50 1,125,899,906,842,620 4,900 64 14
『ソフトウェアテスト技法ドリル』秋山浩一著
因子数(サイズはすべて2水準)とテスト項目数
フォント種類 フォントサイズ フォントカラー
メイリオ 8pt 赤
MSゴシック 10pt 青
因子(3)
水準(2)
28
ソフトウェア開発
システム開発
のライフサイクルの
なるべく早い時期に見つけようね☺
3.初期テスト | テストの7原則
29
4.欠陥の偏在 | テストの7原則
2:8の法則
30
何回も同じことをやっても
新しい欠陥は見つからなくなるよ
5.殺虫剤のパラドックス | テストの7原則
31
システムによって
最重要視するテストは変わるよね
6.テストは条件次第 | テストの7原則
32
バグが(限りなく)0に近い
システムができても
とても起動に時間がかかるような
システムじゃだめよね
7.「バグゼロ」の落とし穴 | テストの7原則
33
ソフトウェアテストのお勉強的なおはなし
テストの7原則
テスト技法
テストレベル
テストタイプ
テストの4象限
ソフトウェアテストのお勉強的なおはなし |アジェンダ
34
 仕様ベース/ブラックボックスのテスト技法
構造ベース/ホワイトボックスのテスト技法
経験ベースのテスト技法
テスト技法
35
同値分割法
仲間分け
境界値分析
はじっこ
デシジョンテーブルテスト
規則表
状態遷移テスト
切り替え
ユースケーステスト
使用場面
https://thinkit.co.jp/images/article/40/2/4021_zoom.gif
仕様ベース/ブラックボックスのテスト技法 | テスト技法
37
りんごの販売価格
① 1個~4個:単価200円
② 5個~9個:単価170円
③ 10個以上:単価160円
同値分割(仲間分け)・境界値分析(はじっこ)
0 1 4 5 9 10
単価200円 単価170円 単価160円
『ソフトウェアテスト技法ドリル』秋山浩一著 38
インターネットショッピングで
書籍を1,500円以上購入した場合、
送料が無料になる
デシジョンテーブルテスト(規則表)
『ソフトウェアテスト技法ドリル』秋山浩一著 39
1 2 3 4
条件 品物は書籍 Y Y N N
合計1,500円以上 Y N Y N
動作 送料無料 Y N N N
インターネットショッピングの配送料c
状態遷移テスト(切り替え)
『ソフトウェアテスト技法ドリル』秋山浩一著 40
動作中
針は進む
停止中
内部も停止
動作中
針は停止
初期状態
スタートボタン
スタート
ボタン
スタート
ボタン
ラップ
ボタン
ラップ
ボタン
ラップボタン
終了状態
ストップウォッチの状態遷移図
ユースケーステスト(使用場面)
https://thinkit.co.jp/images/article/40/2/4021_zoom.gif 41
出張申請システム
申請者
承認者
経理担当者
出張申請を登録する
出張申請を提出する
出張申請を承認する
出張申請を却下する
出張申請を差し戻す
出張申請を確認する
ユースケース図の例
ソフトウェアテストのお勉強的なおはなし
テストの7原則
テスト技法
テストレベル
テストタイプ
テストの4象限
ソフトウェアテストのお勉強的なおはなし |アジェンダ
42
テストレベル | テスト技法
コンポーネントテスト
(ユニットテスト)
43
ソフトウェアテストのお勉強的なおはなし
テストの7原則
テスト技法
テストレベル
テストタイプ
テストの4象限
ソフトウェアテストのお勉強的なおはなし |アジェンダ
44
機能テスト
「何をするのか」のテスト
非機能テスト
「どのように動作するのか」のテスト
構造テスト
「構造をどの程度網羅したか」のテスト
再テスト、および回帰テスト
テスト済みのプログラムを何度もテスト
テストタイプ | テスト技法
45
ソフトウェアテストのお勉強的なおはなし
テストの7原則
テスト技法
テストレベル
テストタイプ
テストの4象限
ソフトウェアテストのお勉強的なおはなし |アジェンダ
46
テストの4象限 | テスト技法
47
まとめ
48
① 色んな立場からの視点でテストをする
② 簡単そうなプログラムでも、テストケースが沢
山あるということ
③ QCD[品質(Quality)、価格(Cost)、
納期(Delivery/Time)を意識する
④いいか悪いかだけでなく、提案やカイゼ
ンもして品質を高めましょう
まとめ
49
ソフトウェア・テストの技法
JSTQB FoundationLebelシラバス
ソフトウェアテスト教科書JSTQB Foundation
第3版
実践アジャイルテスト
ソフトウェアテスト293の法則
ソフトウェア品質知識体系ガイド 第2版 –
SQuBOK Guide V2-
ソフトウェアテスト技法ドリル-テスト設計の
考え方と実際
参考文献など
50

More Related Content

What's hot

テスト分析入門 -「ゆもつよメソッド」を例に- #wacate
テスト分析入門 -「ゆもつよメソッド」を例に- #wacateテスト分析入門 -「ゆもつよメソッド」を例に- #wacate
テスト分析入門 -「ゆもつよメソッド」を例に- #wacate
Kinji Akemine
 
ゴリラテスト モバイルゲームのUIを自動的に検出・操作する モンキーテスト
ゴリラテスト  モバイルゲームのUIを自動的に検出・操作する モンキーテストゴリラテスト  モバイルゲームのUIを自動的に検出・操作する モンキーテスト
ゴリラテスト モバイルゲームのUIを自動的に検出・操作する モンキーテスト
KLab Inc. / Tech
 
メトリクスを用いたソフトウェア品質定量評価・改善 (GQM, Metrics, ET2013)
メトリクスを用いたソフトウェア品質定量評価・改善 (GQM, Metrics, ET2013)メトリクスを用いたソフトウェア品質定量評価・改善 (GQM, Metrics, ET2013)
メトリクスを用いたソフトウェア品質定量評価・改善 (GQM, Metrics, ET2013)
Hironori Washizaki
 
プロダクトに貢献する~テスト計画コンシェルジュとリリース高速化で品質向上を牽引する~
プロダクトに貢献する~テスト計画コンシェルジュとリリース高速化で品質向上を牽引する~プロダクトに貢献する~テスト計画コンシェルジュとリリース高速化で品質向上を牽引する~
プロダクトに貢献する~テスト計画コンシェルジュとリリース高速化で品質向上を牽引する~
Naoki Nakano
 
3 Amigosの考え方で、独立したQAチームがアジャイルテストチームになるまでの話
3 Amigosの考え方で、独立したQAチームがアジャイルテストチームになるまでの話3 Amigosの考え方で、独立したQAチームがアジャイルテストチームになるまでの話
3 Amigosの考え方で、独立したQAチームがアジャイルテストチームになるまでの話
Koichiro Takashima
 

What's hot (20)

品質を加速させるために、テスターを増やす前から考えるべきQMファンネルの話(3D版)
品質を加速させるために、テスターを増やす前から考えるべきQMファンネルの話(3D版)品質を加速させるために、テスターを増やす前から考えるべきQMファンネルの話(3D版)
品質を加速させるために、テスターを増やす前から考えるべきQMファンネルの話(3D版)
 
テストを分類してみよう!
テストを分類してみよう!テストを分類してみよう!
テストを分類してみよう!
 
テスト分析入門 -「ゆもつよメソッド」を例に- #wacate
テスト分析入門 -「ゆもつよメソッド」を例に- #wacateテスト分析入門 -「ゆもつよメソッド」を例に- #wacate
テスト分析入門 -「ゆもつよメソッド」を例に- #wacate
 
ゴリラテスト モバイルゲームのUIを自動的に検出・操作する モンキーテスト
ゴリラテスト  モバイルゲームのUIを自動的に検出・操作する モンキーテストゴリラテスト  モバイルゲームのUIを自動的に検出・操作する モンキーテスト
ゴリラテスト モバイルゲームのUIを自動的に検出・操作する モンキーテスト
 
メトリクスを用いたソフトウェア品質定量評価・改善 (GQM, Metrics, ET2013)
メトリクスを用いたソフトウェア品質定量評価・改善 (GQM, Metrics, ET2013)メトリクスを用いたソフトウェア品質定量評価・改善 (GQM, Metrics, ET2013)
メトリクスを用いたソフトウェア品質定量評価・改善 (GQM, Metrics, ET2013)
 
60分でわかった気になるISO29119 #wacate
60分でわかった気になるISO29119 #wacate60分でわかった気になるISO29119 #wacate
60分でわかった気になるISO29119 #wacate
 
プロダクトに貢献する~テスト計画コンシェルジュとリリース高速化で品質向上を牽引する~
プロダクトに貢献する~テスト計画コンシェルジュとリリース高速化で品質向上を牽引する~プロダクトに貢献する~テスト計画コンシェルジュとリリース高速化で品質向上を牽引する~
プロダクトに貢献する~テスト計画コンシェルジュとリリース高速化で品質向上を牽引する~
 
3 Amigosの考え方で、独立したQAチームがアジャイルテストチームになるまでの話
3 Amigosの考え方で、独立したQAチームがアジャイルテストチームになるまでの話3 Amigosの考え方で、独立したQAチームがアジャイルテストチームになるまでの話
3 Amigosの考え方で、独立したQAチームがアジャイルテストチームになるまでの話
 
テスト計画の立て方 WACATE2019 夏
テスト計画の立て方 WACATE2019 夏テスト計画の立て方 WACATE2019 夏
テスト計画の立て方 WACATE2019 夏
 
「PdMと考えるQAとプロダクトマネジメント」
「PdMと考えるQAとプロダクトマネジメント」「PdMと考えるQAとプロダクトマネジメント」
「PdMと考えるQAとプロダクトマネジメント」
 
リーン開発の本質 公開用
リーン開発の本質 公開用リーン開発の本質 公開用
リーン開発の本質 公開用
 
テストアプローチにデータ分析を使おう
テストアプローチにデータ分析を使おうテストアプローチにデータ分析を使おう
テストアプローチにデータ分析を使おう
 
SQuaREに基づくソフトウェア品質評価枠組みと品質実態調査
SQuaREに基づくソフトウェア品質評価枠組みと品質実態調査SQuaREに基づくソフトウェア品質評価枠組みと品質実態調査
SQuaREに基づくソフトウェア品質評価枠組みと品質実態調査
 
例外設計における大罪
例外設計における大罪例外設計における大罪
例外設計における大罪
 
テスト計画セッション
テスト計画セッションテスト計画セッション
テスト計画セッション
 
テスト分析.pptx
テスト分析.pptxテスト分析.pptx
テスト分析.pptx
 
ソフトウェアの品質保証の基礎とこれから
ソフトウェアの品質保証の基礎とこれからソフトウェアの品質保証の基礎とこれから
ソフトウェアの品質保証の基礎とこれから
 
探索的テストはじめの一歩 #wacate
探索的テストはじめの一歩 #wacate探索的テストはじめの一歩 #wacate
探索的テストはじめの一歩 #wacate
 
概説 テスト分析
概説 テスト分析概説 テスト分析
概説 テスト分析
 
研究発表のためのプレゼンテーション技術
研究発表のためのプレゼンテーション技術研究発表のためのプレゼンテーション技術
研究発表のためのプレゼンテーション技術
 

More from Rina Fukuda

日本で一番PHPのシステムをテストしている手動テスターが思うところ:PHPカンファレンス福岡
日本で一番PHPのシステムをテストしている手動テスターが思うところ:PHPカンファレンス福岡日本で一番PHPのシステムをテストしている手動テスターが思うところ:PHPカンファレンス福岡
日本で一番PHPのシステムをテストしている手動テスターが思うところ:PHPカンファレンス福岡
Rina Fukuda
 

More from Rina Fukuda (14)

テストマネジメントの鉄則
テストマネジメントの鉄則テストマネジメントの鉄則
テストマネジメントの鉄則
 
福岡開発立ち上げQAメンバーが語るメルカリQAのはじめかた
福岡開発立ち上げQAメンバーが語るメルカリQAのはじめかた福岡開発立ち上げQAメンバーが語るメルカリQAのはじめかた
福岡開発立ち上げQAメンバーが語るメルカリQAのはじめかた
 
Testing Live!!!
Testing Live!!!Testing Live!!!
Testing Live!!!
 
Issueの書き方と伝え方
Issueの書き方と伝え方Issueの書き方と伝え方
Issueの書き方と伝え方
 
PHPerに覚えて欲しい日本語の重要性
PHPerに覚えて欲しい日本語の重要性PHPerに覚えて欲しい日本語の重要性
PHPerに覚えて欲しい日本語の重要性
 
九州ソフトウェアテスト勉強会紹介LT:Developers Summit 2016 FUKUOKA懇親会
九州ソフトウェアテスト勉強会紹介LT:Developers Summit 2016 FUKUOKA懇親会九州ソフトウェアテスト勉強会紹介LT:Developers Summit 2016 FUKUOKA懇親会
九州ソフトウェアテスト勉強会紹介LT:Developers Summit 2016 FUKUOKA懇親会
 
SNSとコミュニティ活動 でシームレスに働こう - エンジニアとしての私の働き方 - :Developers Summit 2016 FUKUOKA
SNSとコミュニティ活動でシームレスに働こう- エンジニアとしての私の働き方 -:Developers Summit 2016 FUKUOKASNSとコミュニティ活動でシームレスに働こう- エンジニアとしての私の働き方 -:Developers Summit 2016 FUKUOKA
SNSとコミュニティ活動 でシームレスに働こう - エンジニアとしての私の働き方 - :Developers Summit 2016 FUKUOKA
 
日本で一番PHPのシステムをテストしている手動テスターが思うところ:PHPカンファレンス福岡
日本で一番PHPのシステムをテストしている手動テスターが思うところ:PHPカンファレンス福岡日本で一番PHPのシステムをテストしている手動テスターが思うところ:PHPカンファレンス福岡
日本で一番PHPのシステムをテストしている手動テスターが思うところ:PHPカンファレンス福岡
 
社外活動参加において実施している内容と工夫、そしてその効果
社外活動参加において実施している内容と工夫、そしてその効果社外活動参加において実施している内容と工夫、そしてその効果
社外活動参加において実施している内容と工夫、そしてその効果
 
Idの桁数の話
Idの桁数の話Idの桁数の話
Idの桁数の話
 
立ち位置から観点導出をしてみよう
立ち位置から観点導出をしてみよう立ち位置から観点導出をしてみよう
立ち位置から観点導出をしてみよう
 
テストする人をおにぎり試食人で例えてみた
テストする人をおにぎり試食人で例えてみたテストする人をおにぎり試食人で例えてみた
テストする人をおにぎり試食人で例えてみた
 
Wacate2014夏_BPPセッション~外に出てみよう伝えてみようそして生み出そう~
Wacate2014夏_BPPセッション~外に出てみよう伝えてみようそして生み出そう~Wacate2014夏_BPPセッション~外に出てみよう伝えてみようそして生み出そう~
Wacate2014夏_BPPセッション~外に出てみよう伝えてみようそして生み出そう~
 
【ボツ】Wacate2014夏_BPPセッションPresentation
【ボツ】Wacate2014夏_BPPセッションPresentation【ボツ】Wacate2014夏_BPPセッションPresentation
【ボツ】Wacate2014夏_BPPセッションPresentation
 

はじめてのソフトウェアテスト

Editor's Notes

  1. 魅力的品質要素:それが充足されれば満足を与えるが、不充足であっても仕方がないと受けとられる品質要素。 一元的品質要素:それが充足されれば満足、不充足であれば不満を引き起こす品質要素。 当たり前品質要素:それが充足されれば当たり前と受け止められるが、不充足であれば不満を引き起こす品質要素。 無関心品質要素:充足でも不充足でも、満足も与えず不満も引き起こさない品質要素。 逆品質要素:充足されているのに不満を引き起こしたり、不充足であるのに満足を与えたりする品質要素。