しくじり先生ーアジャイルテスト自動化立ち上げ迷走記 #D3QA / Failure teaches success in automated testing development

61cd8af33de206c39c875e3321e9c225?s=47 ぱいん
October 29, 2019

しくじり先生ーアジャイルテスト自動化立ち上げ迷走記 #D3QA / Failure teaches success in automated testing development

61cd8af33de206c39c875e3321e9c225?s=128

ぱいん

October 29, 2019
Tweet

Transcript

  1. ~アジャイルテスト自動化 立ち上げ迷走記~ 2019/10/29 @D-Cubeソフトウェアテスト・QA勉強会 ぱいん

  2. 自己紹介 • ぱいん • テスト会社 • テストエンジニア/QAエンジニア • ドメイン •

    組込機器 • Webアプリ開発(通信、行政) • テスト自動化ツール開発 • 現在のメインのお仕事: • システムテスト自動化のテックリード • 社外活動 • SeleniumConf Tokyo実行委員 • JaSST Review(ソフトウェアレビューシンポジウム)実行委員 など • 趣味 • Twitter, Togetter • Bリーグ観戦(川崎ブレイブサンダース) ぱいん
  3. 背景 • アジャイルプロジェクト • 受託案件 • 開発メンバ:数十名規模 • スプリントサイクル:2週間

  4. 当時のスペック • ぱいん • 当時のメインのお仕事: • 平テストエンジニア(上司と2名) • それまでは手動テスト実行経験のみ •

    社外活動 • 特になし • 趣味 • Twitter
  5. None
  6. なんちゃって QAフロントローディング 1. テストケース作成時の不明点から、 開発側へ仕様不明点を明確化を促進 • QAは業務資料をひたすら読み込んで、業務シナリオを整理 • 開発メンバからの信頼を得て、QAが要件レビューを行うなど 2.

    開発との距離が近く改善は盛り込まれる • 自動化に必要なIDは実装時に埋めてもらう • 開発用バッチを見ながらテストデータ作成ツールを作る
  7. アジャイルQA楽しい!

  8. 社外コミュニティとの出会い、成長 1. Seleniumのコミュニティに出会う 2. Stack Overflowを読み漁る日々 ⇒昨日、出来なかったことが今日できるようになる 作ったコードが自分の代わりにテストしてくれる

  9. テスト自動化楽しい

  10. QAチームに課せられたミッション •PO「デグレを検知するために画面遷移の E2E自動テストを作ってほしい。Selenium で。」 •ぱいん「わかりましたっ!(キリッ」 •PO「現在はモックだ」 •ぱいん「わかりましたっ!(キリッ?」

  11. ぱいんの数字① 1から15

  12. ぱいんの数字① 自動化エンジニアの数 1から15

  13. None
  14. テストコードのメンテ辛い① • オフショアからのQ&A対応で時間が溶ける日々

  15. テストコードのメンテ辛い② • 画面遷移が目まぐるしく変わる • 実装優先で画面遷移図が追従しない Click

  16. テストコードのメンテ辛い② • 画面遷移が目まぐるしく変わる • 実装優先で画面遷移図が追従しない Click 注意 相手が嫌がる言動 はやめましょう 了解

    Click
  17. テストコードの増加が止められない • テストコードメンテの間にも、新機能は増えていく • テストケース新規作成メンバは、黙々とテストコードを増やし ていく

  18. • テストコードメンテの間にも、新機能は増えていく • テストケース新規作成メンバは、黙々とテストコードを増やし ていく メンテ 新規 時間 テストコードの増加が止められない Q&A

  19. しくじり(失敗)まとめ 1. テストコードのメンテが辛い 2. テストコードの増加が止められない • 終わらないQ&A対応 • 画面遷移への無限追従

  20. 学び その先へ

  21. 学び • 一気に自動化をスケールさせようとしない • 上司の方針を鵜呑みにしない • テスト自動化をする目的、必要性 • 開始するタイミングは開発フェーズとして合っているか •

    QAエンジニアがやるのが適任なのか
  22. その先へ • 2名体制で、シナリオテストの自動化を行う • シナリオ数をゆっくり増やす:1⇒3⇒5 • メンテの工数、作成工数、LOCを計測 • デプロイパイプラインに組み込んでビルドブレイクを検知 •

    手動で約1hかかるテストが、約15mで終了 • IE複数Ver, Chrome最新で実行
  23. None
  24. おまけ1)おススメの本、その他 • 書籍「初めての自動テスト」 • 書籍「ソフトウェアテスト293の鉄則」 • 第5章 “テスト自動化” 40個 •

    スライド「これからシステムテスト自動化を 始める組織のための勉強会」 • ぱいんのテスト自動化お悩み相談 (随時、パインアメ1袋~)
  25. テスト自動化の8原則 (テスト自動化研究会製) https://sites.google.com/site/testautomationresearch/test_automation_principle • 1. 手動テストはなくならない • 2. 手動でおこなって効果のないテストを自動化しても無駄であ る

    • 3. 自動テストは書いたことしかテストしない • 4. テスト自動化の効用はコスト削減だけではない • 5. 自動テストシステムの開発は継続的におこなうものである • 6. 自動化検討はプロジェクト初期から • 7. 自動テストで新種のバグが見つかることは稀である • 8. テスト結果分析という新たなタスクが生まれる 25