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
文系でも極端にわかるテストと品質 v0.2 / Easy to understand test...
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Dai Fujihara
June 12, 2020
Technology
1.2k
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
文系でも極端にわかるテストと品質 v0.2 / Easy to understand testing and quality
ざっくりまとめる。
Dai Fujihara
June 12, 2020
More Decks by Dai Fujihara
See All by Dai Fujihara
なぜ自社ではスクラムがうまくいかないのか アジャイルコーチと考える、スクラムのアンチパターン / Why Scrum doesn't work in my company?
daipresents
1
940
CI/CDパイプラインにE2Eテストを統合する / Integrate E2E testing into the CI/CD pipeline
daipresents
0
1.9k
アジャイル・DevOps時代のタスク管理ツール / Task Management Tools for the Agile and DevOps Era
daipresents
0
480
品質エンジニアリングと自動化後の世界 / Quality Engineering and the Post-Automated World
daipresents
0
1.2k
アジャイル開発と品質エンジニアリング - QA時代の終わりとQE時代のはじまり / Agile Development and Quality Engineering
daipresents
1
9.3k
QA組織パターン - 構造ごとのメリットデメリットまとめ / QA organizational structure
daipresents
2
1.8k
人類よ! コードレビューも完全自動化の時代へ?!今風なイケてる静的解析を大活用しよう! / Automated Code Review
daipresents
0
2.6k
アジャイルテスティングが倒せない / I can't beat agile testing
daipresents
5
2.3k
E2Eテスト自動化の本質 - 品質と開発スピードを支えるテスト自動化時代へ / The Essence of E2E Test Automation
daipresents
0
860
Other Decks in Technology
See All in Technology
『止めない』を設計する — 制約の中で、事業の根幹を支える判断
hiroyaterui
0
190
AI時代のAPI品質を支えるガードレール / API Guardrails for API quality in the AI era
yokawasa
1
110
Bet AI Day 2026丨Production-Ready AI Agents — エンタープライズの実務を任せるための設計と運用
layerx
PRO
3
2.1k
【視聴者参加型!】AWSセキュリティアンチパターンクイズ
syoshie
0
400
20260903 Tokyo Jazug Night #62 | Azure エンジニアよ、 その環境は本当にセキュアか?
olivia_0707
1
610
KAEN Company Deck
kaen
PRO
0
320
DINO-EdgeQuery:Edge-First Polygon Decoding for Building Footprint Extraction from Satellite Imagery
lehupa
0
140
Bet AI Day 2026丨AIによって本質に戻るシステムリスク管理
layerx
PRO
0
880
動画配信アプリでの Engage SDK 導入 — TVer Android が Play ストアにコンテンツを届けるまで
techtver
PRO
0
110
リージョンの壁を越える、 ちょっと変わったAWSサービスの話
falken
PRO
0
240
V8コントリビュート超入門
riyaamemiya
0
140
スクラムで身についていた動き方を、XPで捉え直してみた
codmoninc
PRO
1
200
Featured
See All Featured
Designing Powerful Visuals for Engaging Learning
tmiket
1
530
Product Roadmaps are Hard
iamctodd
55
13k
A designer walks into a library…
pauljervisheath
211
25k
Docker and Python
trallard
47
4.2k
Measuring Dark Social's Impact On Conversion and Attribution
stephenakadiri
2
270
Utilizing Notion as your number one productivity tool
mfonobong
4
570
Game over? The fight for quality and originality in the time of robots
wayneb77
1
260
A Soul's Torment
seathinner
7
3.5k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
HU Berlin: Industrial-Strength Natural Language Processing with spaCy and Prodigy
inesmontani
PRO
0
690
Unsuck your backbone
ammeep
672
58k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
28
3.6k
Transcript
1 文系でも 極端にわかるテスト Dai Fujihara @daipresents Copyright © 1978-2019 Sekai
Co., Ltd. All Rights Reserved. https://daipresents.com/service/
注意事項 • 今は違うかもしれませんが、昔は文系と理系の間に確固た る溝があったように思います(気のせいかな) • わやりやすくするために極端に解説しています。正しさを求 める場合は専門家にご相談ください • 今回はテスト・品質について極端に説明しようと思います •
その結果、なんとなく理解し、テストや品質に対する意思決 定の助けになれば幸いです
テストについて
テストとは? 「テスト = チェック + α」とします • 「テスト」が単純な「チェック」を意味する場合は、バグがあるかないかを確認する単純作業です。 • 単純作業レベルのテストは、人によって多少の違いはあれど、誰がやっても似たような成果にな
ります • 後述しますが、チェックをするだけでは、バグは減っていくかもしれませんが品質向上になりませ ん
テスト + α とは? 以下、αの例をあげてみます。全社はバグを見つけていますがOKに しており、後者はその逆の判断がされています。 • ここが変ですが、ユーザへの影響はとても小さいので無視してリ リースしていいと思います •
仕様どおりですが使い勝手が悪すぎるので修正するべきでしょう
テストの種類(上に行くほど粒度が小さい) テストしたいもの テスト目的と内容 プログラム ユニットテスト(UT)ともいう。プログラムが正しいことを確認をする。テストコードを書くのが一般 的。 機能 結合テスト(IT)、機能テスト(FT)とも呼ばれる。機能が正しいことを確認する。手動で確認されるこ とが多い。 全体
システムテスト(ST)、エンドツーエンドテスト(E2E)とも呼ばれる。仕様どおりにできていることを ユーザの利用環境目線で確認する 。手動がメインだが最近だとテストツールを使う事が多い。 仕様 受け入れテスト(UAT)と呼ばれる。作ったものが 当初の期待(要件)を満たせそうかを確認する 。 リグレッションテスト 機能が壊れていないことを確認する 。ざっくり一通りの機能をテストする形で構成することが多い。 機能テストや通しのテストは、機能が増えたり更新されるたびにここに追加していく運用がステキ。 パフォーマンス・脆弱性 特定領域を確認する。専門ツールでやるのが一般的。
テストの種類(上に行くほど粒度が小さい) テストしたいもの テスト目的と内容 プログラム ユニットテスト(UT)ともいう。プログラムが正しいことを確認をする。テストコードを書くのが一般 的。 機能 結合テスト(IT)、機能テスト(FT)とも呼ばれる。機能が正しいことを確認する。手動で確認されるこ とが多い。 全体
システムテスト(ST)、エンドツーエンドテスト(E2E)とも呼ばれる。仕様どおりにできていることを ユーザの利用環境目線で確認する 。手動がメインだが最近だとテストツールを使う事が多い。 仕様 受け入れテスト(UAT)と呼ばれる。作ったものが 当初の期待(要件)を満たせそうかを確認する 。 リグレッションテスト 機能が壊れていないことを確認する 。ざっくり一通りの機能をテストする形で構成することが多い。 機能テストや通しのテストは、機能が増えたり更新されるたびにここに追加していく運用がステキ。 パフォーマンス・脆弱性 特定領域を確認する。専門ツールでやるのが一般的。 分けると整理されますが、増えた分管理が面倒です。 分けないと量は減りますが、整理がしにくくなります。 まずは、担当ごとにシンプルに3つぐらいにわけてはどうでしょ う? 例: 1. 開発のテスト(開発チーム) 2. 全体のテスト(テストベンダー) 3. 受け入れテスト(発注元)
テストの広さ • 戻ったり進んだり操作のパターン • 入れたり消したり入力・出力のパターン、 • プラットフォーム、OSごと(iOS、 Andorid、Windowsな ど) •
ブラウザごと(Chrome、IEなど) • 状況(高負荷、弱電波、攻撃時) • ・・・・ ほぼ無限なので限られた時間で 何を、いつ、どこまで、だれがやるか決めましょう
良いテスト・悪いテスト • 良いテストは ◦ サービスやプロダクトが実現したいことに 貢献できるテストです。 ◦ 限られた時間内で大きいバグから順番に 見つかるテストです •
上記の逆が悪いテストです
テストと人とお金 • テストの質はその人のスキルレベルに依存します • スキルレベル=単価とはかぎりません。以下は実際にあった例です。 ◦ 例: 最初は外で発表したりしている有能そうな人が来たけど その後は業務中に居眠りする人がアサインされた ◦
例: 単価は高いのに指示がないと動かない。お願いすると 「それは予算を超えるので追加で・・」と追加課金された ◦ 例: テストベンダーの管理コストが高くて仕事ができない 期待値を明確に伝え それを満たせるのか確認しましょう
品質について
品質とは、品質が高いとは? • 利用者様: 使いやすくてまた使いたくなる • 営業の人の品質例: 売上が上がるサービスであること • 開発の品質例: たくさんのアクセスがあっても
サービスが止まらないこと • 開発全体の品質例: リリース日にリリースできるものが リリースされること 人によって違うので それぞれ確認しておきましょう
品質が高い・低い • 品質が低いのは良くありません • 品質が高いだけでもいいともかぎりません ◦ 例: 売上激増! でも新機能リリースに膨大なコストが かかってしまう・・・
◦ 例: バグゼロでリリース! でもお客さんがぜんぜんこない・・・ ば・ら・ん・す(はーと)
バグとは? • 「エラー」「欠陥」「フォールト」「故障」いろいろ呼び方があ ります 面倒なのでバグでいきましょう
バグが多い・少ない • 作れば作るほど、バグの数も増えがちです • バグがあるものを修正しても、品質が高くなったとは いえません ◦ 例: 車にバグがたくさんありましたが全部取り除 いたのでもう大丈夫です!
• バグが少なくても、ちゃんとテストしていない可能性が 残ります ば・ら・ん・す(はーと)
バグを活用した品質の確認方法 • 普通は、バグが 見つかったれば みつかるほど、 減っていくはず なので、その傾 向を活用して残 存するバグを推 定できます
CREDITS - Special Thank! ◦ Presentation template by SlidesCarnival and
Photographs by Unsplash • Photo by Markus Winkler on Unsplash 17 お問い合わせは https://daipresents.com/service/ からお気軽にどうぞ。