ここが変だよ。このテスト〜テストケース爆発と戦う〜

E5117ee3645333d11c9d5a785c156f3c?s=47 はない
February 11, 2017

 ここが変だよ。このテスト〜テストケース爆発と戦う〜

Laravelもくもく会#4

E5117ee3645333d11c9d5a785c156f3c?s=128

はない

February 11, 2017
Tweet

Transcript

  1. ͕͜͜มͩΑɻ͜ͷςετ ʙςετέʔεരൃͱઓ͏ʙ  !IBOBIJSP@B[F

  2. ͳ·͑ɿՖҪɹ޺ߦ UXJUUFSɿ!IBOBIJSP@B[F ॴଐɿIJUPNFEJB

  3. 継続的デリバリー p129 技術視点 ビジネス視点 支 援 評 価 機能の受け入れ テスト ユニットテスト

    インテグレーションテスト システムテスト ショーケース(デモなど) ユーザビリティテスト 探索的テスト 非機能の受け入れテスト (キャパシティ/セキュリティなど) リグレッション テスト
  4. 継続的デリバリー p129 技術視点 ビジネス視点 支 援 評 価 機能の受け入れ テスト ユニットテスト

    インテグレーションテスト システムテスト ショーケース(デモなど) ユーザビリティテスト 探索的テスト 非機能の受け入れテスト (キャパシティ/セキュリティなど) リグレッション テスト
  5. こんな光景 このパターン全部テストします。 お客さん いっぱいあるじゃないですか。 どうやってやるんですか? 画面から入力してください。 手伝いますから頑張りましょう!!! お客さん ・・・はい。。

  6. こんな光景~次の日~ 新しいバグが見つかりました!! お客さん ごめんなさい直します。 テストやり直しです。今回のバグのパターンが漏れて ました。さらに30パターン追加です。頑張りましょう! お客さん ひぇ!?

  7. http://bit.ly/2ebuOOi

  8. ここが変だよ。このテスト ・ 最初からデータのパターン網羅が考えられていない。 ->パターン漏れによるバグ発生。 ・ テストするパターンの数が多すぎる? ->自動化できる範囲と、実際に動かして確認したい部分の   切り分けがない。 ・

    仕様変更のたびにテストが増え続ける可能性がある。
  9. ここが変だよ。このテスト ~対策~ ・ データのパターン網羅を考える。 例) user_id : メールアドレス(必須) password :

    半角英数字(必須) agreement : ラジオボタン(必須)
  10. ここが変だよ。このテスト ~対策~ user_id password agreement 入力なし 入力なし 入力なし 正しい 正しい

    同意する メールアドレスっぽく ない 正しくない 同意しない 存在しない - - 入力されるデータの種類を考えると、こんな感じ
  11. ここが変だよ。このテスト ~対策~ user_id password agreement 入力なし 入力なし 入力なし 正しい 正しい

    同意する メールアドレスっぽく ない 正しくない 同意しない 存在しない - - 4 3 3 ✖ ✖ これだけのパターンでも網羅するために必要なテスト回数は36回
  12. ここが変だよ。このテスト ~対策~ 実際にはもっとデータの種類も、 フォームの数も多いということは・・・

  13. ここが変だよ。このテスト ~対策~ ・先人の知恵に頼る。 http://csrc.nist.gov/acts/kuhn-reilly-02.pdf

  14. ここが変だよ。このテスト ~対策~ user_id password agreement 入力なし 入力なし 入力なし 正しい 正しい

    同意する メールアドレスっぽく ない 正しくない 同意しない 存在しない - - 因子 水 準
  15. ここが変だよ。このテスト ~対策~ 2因子間網羅率100パーセントを実現する! ・直交表 ・All-Pair(ペアワイズ)法 - Pairwiser ・カバリングアレイ - Microsoft

    pict
  16. ここが変だよ。このテスト ~対策~ デモ

  17. ここが変だよ。このテスト ~注意~ ・ ビジネスルールの考慮(ありえない選択など) ・ ユニットテストのデータパターンとして   活用するのが良い? ・ テストパターンの自動生成というよりは、

      テストパターンの参考にする頼り過ぎない。
  18. 参考資料 - PICTでテストケースの組み合わせ爆発にさよならを http://yoshiko.hatenablog.jp/entry/pict - テストの数を減らそう!プリキュアで学ぶPICT http://qiita.com/greymd/items/ad18aa44d4159067a627#fnref18 - Pairwise Testing

    in the Real World: Practical Extensions to Test-Case Scenarios https://msdn.microsoft.com/en-us/library/cc150619.aspx - Microsoft/pict https://github.com/Microsoft/pict - Pairwiser https://inductive.no/pairwiser/ - 直交表とオールペア法の平行運用によるソフトウェアテスト http://jasst.jp/symposium/jasst14tokyo/pdf/C4-1-1.pdf - テストことはじめ https://speakerdeck.com/hanahiroaze/tesutokotohazime