Upgrade to Pro — share decks privately, control downloads, hide ads and more …

あなたが自動テストを行う目的は何ですか? / What is your purpose for performing automated tests?

あなたが自動テストを行う目的は何ですか? / What is your purpose for performing automated tests?

Hiroaki OZONO

HAKATA Test Night #2
https://testnight.connpass.com/event/152296/

53850955f15249a1a9dc49df6113e400?s=128

LINE Developers
PRO

January 24, 2020
Tweet

Transcript

  1. あなたが⾃動テストを⾏う⽬的は 何ですか? Hakata Test Night #2 2020/01/24 Ozono Hiroaki

  2. 30秒で⾃⼰紹介

  3. なぜこんなことを話そうと思ったか

  4. なぜこんなことを話そうと思ったか https://qiita.com/ozhiro/items/5aa95c6360a8930df325

  5. どんな⼈に向けての話なのか - これから自動テストや りたい人 - 今自動テストやって て悩んでいる人 - 部下に自動テストや らせたい偉い人

  6. どんな⼈に向けての話なのか 上司から「⾃動テストやってみてよ」って丸投 げされたあなた、無⾔でこのスライド(Qiita)の リンクぶん投げてあげてください

  7. 注意点 - 自動テスト == E2EのUIテスト。ブラウザやエミュ レーター、実機などをプログラムで操作して行うテ スト として定義しています - こうやって失敗した、という経験のシェアを趣旨とし

    ています - 私の所属する組織は開発組織とQA組織が独 立しています - ちゃんと関係者の許可もらってるよ!
  8. 導⼊編 自動テストを実装し始 める前に考えておいた 方がいいこと

  9. それは… あなたが⾃動テストを⾏う⽬的はなんですか?

  10. 実際に周りで聞いたことがある例 - プログラミングを仕事にしたいから - テスト自動化エンジニアになりたいから - 他ではやってるから - 手動テストのコストを減らしたいから -

    手動テスターの負担を減らしたいから
  11. 実際に周りで聞いたことがある例 - プログラミングを仕事にしたいから - テスト自動化エンジニアになりたいから - 他ではやってるから - 手動テストのコストを減らしたいから -

    手動テスターの負担を減らしたいから キャリア コスト
  12. わたしの場合 当時の上司 キャリア 当時のわたし コスト

  13. 共通すること ⾃動テストをすることで プロジェクト・サービスをどう良くしたいのか という観点がない

  14. ⼿段の⽬的化 - キャリアに関する観 点は手段の目的化 になっている - 動機としては悪くな いと思う - プロジェクトが利益

    を得られるよう、上 司が誘導してあげる べき
  15. ⼿段の⽬的化 - 実装を担当する部 下はプログラムを書 くこと自体が楽しくて 楽しくてしょうがない 状態になるかも - 自動化ハイなんてよ く言われます

  16. ⼿段の⽬的化 - あなたたちの目的は 自動テストを書くこと ですか?サービスを よくすることでしょ う? - 当時のわたしと当時 の上司に1000回くら

    い言ってあげたいで す
  17. コストの削減 ⾃動テストで⼈的コストを削減することは⾄難 のわざです

  18. コストの削減 - 局所的に切り取れ ばいくらでも良く見せ ることは可能 - わたし自身丸4年で 人的コスト減らせ た!という実績はな い

    - むしろ増えてる場合 も多い
  19. コストの削減 - コストは増えても別 にいいんです。自動 テストをやる目的が 別であれば - ただし、コスト削減 が目的になっている と…茨の道を通る可

    能性が
  20. コストの削減 - UIの自動テスト自 体が一般的にコスト が高いと言われてい る - コストが高いもの(自 動テスト)でコストが 高いもの(手動テス

    ト)のコストを削減す る…ハードな匂いが
  21. 結果的にどうなったか 見事に燃え尽きた

  22. どうするべきだったのか - 手動テストでカバーできていない部分を自動テストで カバーして、ユーザー体験をよりよくしたい。 - 本番環境で起きるサービスの障害を自動テストでひと つでも減らし、機会損失を減らしたい。 - 開発のライフサイクルを改善するために自動テストを 活用して、エンジニアがもっと仕事しやすい環境を作り

    たい。 こんな目的持ってたらどうだったでしょうか?
  23. 次は運⽤編…といきたいところですが たぶん時間オーバーしてそうなのでここで終わ ります

  24. 最後に宣伝