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

探索的テスト入門
探索的テスト入門探索的テスト入門
探索的テスト入門
H Iseri
 

What's hot (20)

ソフトウェアテストことはじめ2016年ver
ソフトウェアテストことはじめ2016年verソフトウェアテストことはじめ2016年ver
ソフトウェアテストことはじめ2016年ver
 
テストの組み立て方
テストの組み立て方テストの組み立て方
テストの組み立て方
 
組み合わせテストの落とし穴〜有則と無則〜
組み合わせテストの落とし穴〜有則と無則〜組み合わせテストの落とし穴〜有則と無則〜
組み合わせテストの落とし穴〜有則と無則〜
 
JCSQE初級受けてみたの
JCSQE初級受けてみたのJCSQE初級受けてみたの
JCSQE初級受けてみたの
 
テスト計画の立て方 WACATE2019 夏
テスト計画の立て方 WACATE2019 夏テスト計画の立て方 WACATE2019 夏
テスト計画の立て方 WACATE2019 夏
 
CIが分からない PE(SETエンジニア)の1年生がWebAPIの負荷テストを 背伸びしてCI運用した
CIが分からないPE(SETエンジニア)の1年生がWebAPIの負荷テストを背伸びしてCI運用したCIが分からないPE(SETエンジニア)の1年生がWebAPIの負荷テストを背伸びしてCI運用した
CIが分からない PE(SETエンジニア)の1年生がWebAPIの負荷テストを 背伸びしてCI運用した
 
テストの極みを目指して ~さあ、理想に近づくための一歩を踏み出そう!~
テストの極みを目指して ~さあ、理想に近づくための一歩を踏み出そう!~テストの極みを目指して ~さあ、理想に近づくための一歩を踏み出そう!~
テストの極みを目指して ~さあ、理想に近づくための一歩を踏み出そう!~
 
What is quality culture? Is it something tasty?
What is quality culture? Is it something tasty?What is quality culture? Is it something tasty?
What is quality culture? Is it something tasty?
 
テストエンジニアの品格 #automatornight
テストエンジニアの品格 #automatornightテストエンジニアの品格 #automatornight
テストエンジニアの品格 #automatornight
 
JaSST Tokyo 2022 アジャイルソフトウェア開発への統計的品質管理の応用
JaSST Tokyo 2022 アジャイルソフトウェア開発への統計的品質管理の応用JaSST Tokyo 2022 アジャイルソフトウェア開発への統計的品質管理の応用
JaSST Tokyo 2022 アジャイルソフトウェア開発への統計的品質管理の応用
 
What should you shift left
What should you shift leftWhat should you shift left
What should you shift left
 
パターン QA to AQ: 伝統的品質保証(Quality Assurance)からアジャイル品質(Agile Quality)へ
パターン QA to AQ: 伝統的品質保証(Quality Assurance)からアジャイル品質(Agile Quality)へパターン QA to AQ: 伝統的品質保証(Quality Assurance)からアジャイル品質(Agile Quality)へ
パターン QA to AQ: 伝統的品質保証(Quality Assurance)からアジャイル品質(Agile Quality)へ
 
シナリオテストについて考えてみる
シナリオテストについて考えてみるシナリオテストについて考えてみる
シナリオテストについて考えてみる
 
アプリ開発へのOdc分析導入の取り組み
アプリ開発へのOdc分析導入の取り組みアプリ開発へのOdc分析導入の取り組み
アプリ開発へのOdc分析導入の取り組み
 
探索的テスト入門
探索的テスト入門探索的テスト入門
探索的テスト入門
 
Re-collection of embedded software qa in the last decade
Re-collection of embedded software qa in the last decadeRe-collection of embedded software qa in the last decade
Re-collection of embedded software qa in the last decade
 
ソフトハウスの品質保証のウソホント
ソフトハウスの品質保証のウソホントソフトハウスの品質保証のウソホント
ソフトハウスの品質保証のウソホント
 
鷲崎 メトリクスの基礎とGQM法によるゴール指向の測定 2014年12月18日 日本科学技術連名SQiP研究会 演習コースI ソフトウェア工学の基礎
鷲崎 メトリクスの基礎とGQM法によるゴール指向の測定 2014年12月18日 日本科学技術連名SQiP研究会 演習コースI ソフトウェア工学の基礎鷲崎 メトリクスの基礎とGQM法によるゴール指向の測定 2014年12月18日 日本科学技術連名SQiP研究会 演習コースI ソフトウェア工学の基礎
鷲崎 メトリクスの基礎とGQM法によるゴール指向の測定 2014年12月18日 日本科学技術連名SQiP研究会 演習コースI ソフトウェア工学の基礎
 
QAアーキテクチャの設計による 説明責任の高いテスト・品質保証
QAアーキテクチャの設計による説明責任の高いテスト・品質保証QAアーキテクチャの設計による説明責任の高いテスト・品質保証
QAアーキテクチャの設計による 説明責任の高いテスト・品質保証
 
探索的テストはじめの一歩 #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. 魅力的品質要素:それが充足されれば満足を与えるが、不充足であっても仕方がないと受けとられる品質要素。 一元的品質要素:それが充足されれば満足、不充足であれば不満を引き起こす品質要素。 当たり前品質要素:それが充足されれば当たり前と受け止められるが、不充足であれば不満を引き起こす品質要素。 無関心品質要素:充足でも不充足でも、満足も与えず不満も引き起こさない品質要素。 逆品質要素:充足されているのに不満を引き起こしたり、不充足であるのに満足を与えたりする品質要素。