Link
Embed
Share
Beginning
This slide
Copy link URL
Copy link URL
Copy iframe embed code
Copy iframe embed code
Copy javascript embed code
Copy javascript embed code
Share
Tweet
Share
Tweet
Slide 1
Slide 1 text
テストの考え方 & 協力したテストのすすめ
Slide 2
Slide 2 text
自己紹介 松谷峰生 (まつやみねお) 社外活動 • テスト • JaSST Kyushu(ソフトウェアテストシンポジウム九州)共同実行委員長 • 機械学習方面 • QA4AI コンソーシアム発起人の一人 • マンガ・イラスト • 新人さんからわかるソフトウェアテスト解説マンガ「テスターちゃん」 • IVIA(IT検証産業協会)キャラクターイラスト • 他ソフトウェアテスト系マンガ、イラスト • 他 • 大学の授業(非常勤講師 / 特別講師)
Slide 3
Slide 3 text
この発表の前提 テストの人と開発者が 別れている組織の話
Slide 4
Slide 4 text
この発表の目的 テストの人と開発者で どう協力しながらテストを進めよう? と 考えるきっかけになれば嬉しい
Slide 5
Slide 5 text
テストって何?
Slide 6
Slide 6 text
テストって何? ソフトウェアテストとは 想定したことが 想定した通り動くことを チェックする 活動である
Slide 7
Slide 7 text
テストって何? だけではない
Slide 8
Slide 8 text
テストって何? テストによってそのシステムに 何らかの価値を付加するならば
Slide 9
Slide 9 text
テストって何? 品質・信頼性の向上
Slide 10
Slide 10 text
テストって何? 信頼性は バグを見つけ取り除くことで より向上させることができる
Slide 11
Slide 11 text
テストって何? ソフトウェアテストは バグを見つけるつもりで プログラムを実行する過程
Slide 12
Slide 12 text
テストって何? 想定した通り 動くか確認 想定外の 問題を 発見 + チェッキング テスティング
Slide 13
Slide 13 text
http://www.jasst.jp/symposium/jasst18kyushu/pdf/S6.pdf
Slide 14
Slide 14 text
テストって何? チェッキング 機械的なチェックが 比較的容易 人によるテストが 必要 テスティング +
Slide 15
Slide 15 text
よくあるテストのありかた
Slide 16
Slide 16 text
よく言われる形 ユニットテスト APIレイヤー のテスト ←end to endテスト マニュアルテスト テストの ピラミッド コスト高 テスト実行時間長さ テスト範囲の広さ テストの実行数
Slide 17
Slide 17 text
よくあるテストのありかた ←ユニットテスト ←APIレイヤーのテスト マニュアル テスト アジャイル開発に 耐えられない プロセス 手によるテスト範囲が多すぎて テストが間に合わない→人員増大でカバー
Slide 18
Slide 18 text
よくあるテストのありかた プロジェクトの 破綻 APIレイヤーの テスト
Slide 19
Slide 19 text
よくあるテストのありかたのよくある原因 「テスト」はテスト側のお仕事 という業務分担 (どうせシステムテストで全部通るしUTいいよね…) 開発側でチェックしているところも テスト側で重複チェック (全部見ないと不安…)
Slide 20
Slide 20 text
よくあるテストのありかたのよくある原因 「全体としてのテスト最適化」 に考えが及んでいない
Slide 21
Slide 21 text
じゃあ、どうしよう?の例 開発側とテスト側で 「テストどう分担します?」 を話してみる 「このリストの並び順はAPIのレスポンスでみます」 「バッチ処理自体は見ますが、システムをつなげて処理が上手に動くかは テスト側で見てもらっていいですか」 「ユーザーシナリオを通したテストはテスト側で見ます」 「探索的テスト(問題点を探索するテスト)を実施します」 「この導線はE2E自動テストのチェックが回っています」
Slide 22
Slide 22 text
松谷の理想論 • テスティング • どうしても手でしか見 れない場所 • UI APIレイヤー でのチェッキング ユニットテスト でのチェッキング 各レイヤーで 行うべきテストが 考慮されている バランスタイプ ピラミッド ↓ テストの ビルディング (松谷命名)
Slide 23
Slide 23 text
松谷の理想論 テストの ラミエル (松谷命名) ユニットテスト でのチェッキング • テスティング • どうしても手でしか見れない場 所 • UI 振る舞いを APIレイヤーで チェッキング ※発表後追記: あとから知ったことですが 「テスティングトロフィー」という 考え方があるそうです。
Slide 24
Slide 24 text
実際の取り組み例
Slide 25
Slide 25 text
削除ページ 以下参照です。 https://www.slideshare.net/next_developer/ltech6-lifullqa/14
Slide 26
Slide 26 text
最後にもろもろ •開発/テスト双方ともに基本知識がないと話がしにくい • テストレベルって何?探索的テストとは? • メソッドって何?CRUDとは? •ユニットテストをただふやすと、いつもどこかでユニットテストがコケて いる • ユニットテストを書くコストが増える • 修正するコストも増える
Slide 27
Slide 27 text
この発表の目的 テストする人と開発者で どう協力しながらテストを進めよう? と 考えるきっかけになれば嬉しい
Slide 28
Slide 28 text
Thank you