人類よ!これがテスト自動化だ!プロの自動化エヴァンジェリストの技術を一緒に学ぼう! 参加報告

JaSST東北で一緒に活動している伊藤さん(ぷっちゃん)がエバンジェリストとして登場するということで途中から参加しました。 いいことが沢山あったので、メモを書き残しておきます。
何か間違ってたら指摘お願いします~

mabl-japan.connpass.com

Q. 自動化で工数削減できますか?

  • 工数削減をメインにすると変な方向に進む。
  • どこをターゲットにするか明確にできれば削減自体はできる。
  • 自動化によってテスト実行を削減できたぶん、メンテに人がかかることがある。
  • テスト実行工数は夜間実施や並列実施で時間が減る。
  • 無駄がいっぱいあるようだと見た目の工数削減はできる。

Q. 自動化で品質が上がりますか?

  • テストで品質が上がりますか?と同じ質問。
  • 現状認識するところが自動テスト。その後で開発が頑張ることで品質が上がっていく。

Q. E2Eの場合、WebDriverとテストSaaSではどちらが強いでしょうか?

  • 最近はSaaS(mabl, Autify, Magic Podなど)が強いと感じている。
  • SaaSの場合、環境構築やメンテで躓かないのが良い。

Q. テストピラミッドから考えて、単体テストが充実している場合はAPIテストを飛ばすのもありでしょうか?

  • 正直ケースバイケース
  • テストピラミッドはたたき台と思っているので、自分達で納得感を持ったピラミッドを作ることが重要。

Q. SaaSが普及した場合は、テスト設計するより、SUTを操作しながら探索する方法が優位になるでしょうか?

  • 優位になるかは必ずしもそうではないと思う。
  • テスト設計をすることで、チームの品質に対する共通認識が得られる。
  • 探索的テストがやりっぱになっている場合は安心感が得られない可能性はある。

Q. mablのオンプレ版のリリース予定はありますか?

  • いまのところなし。[藤原さん]

Q. ツールは手段でしかないと思いますが、ツールを使うことが先行してしまう場合もありませんか?

  • 個人レベルでは手段先行もありかと思う。例えば全く使ったことがない人とかには効果的だと思う。

Q. アジャイル開発と自動テストの関係性についてどう思いますか?

(会場内のアジャイルテスター比率は2/150)

  • 名乗っていないだけではないか?
  • マルチロールで大変なイメージ。
  • 自動化エンジニアもアジャイルテスターの一つではないか。[藤原さん]
  • 海外で一番人気なのはコンサルさんとそれを利用する会社のセッション。[藤原さん]
  • 前職で手動でも早くテストを実施して、開発と一体化していたのはアジャイルテスターだと思った。[藤原さん]

Q. テスト自動化が上手くいくのはどういうケースでしょうか?

  • 時間をしっかりかける。
  • リーダーシップを取る人が少なくとも一人は必要。
  • 運用にのせたらメンテをする。
  • プロジェクトの最初から自動化の算段を立てる。

Q. QAが自動化するのとエンジニアが自動化するのとどちらがいいでしょうか?

  • ユニットはエンジニア、E2EはQAがいいかも。
  • 理想の形が組織ごとにある。
  • 人数比も影響ありそう。

Q. 自動化の比率はどれくらいが適切なのでしょうか?完全自動化はありますか?

  • 操作しやすい比率なので気を付けないと恣意的になる可能性がある。
  • 体感の参考値は既存テストケースの3~4割が自動化すると一段落する感じ。

Q. テスト全体の中のスコープやテスト目標をどう決めていますか?

  • リーン開発の現場より、テストのリスク、手動テストのコスト、自動化のコストを考え、優先順位をつけてどこまでやるかを考える。

Q. 手がけるテスト自動化と手動テストや他の自動テストとの相乗効果を生み出すためには?

  • (技術的なレベルでは)CIパイプラインを構築する。
  • 人のレベルでは、ユニット → E2Eの流れを考えて重複を避け、前のレベルでできていないところをカバーする。

Q. 大きなソフトウェアに対し、自動テストがすでに構築されているとき、変更にはどうやって対応しますか?絞るのも自動でやっていますか?

  • どこかの会社で自動で絞るのもやっているのを見た *1
  • 手動で影響範囲を出すか機能的に重要なところか。
  • 実行を効率化して、変更ごとにすべてのテストをやるという方向もある。

Q. 自動化の上手くいっている評価基準は?

  • 自分達で決めるのが一番大事
  • 自動化の上位目標が守られているかどうかで確認する

Q. 自動化テストチームと手動テストチームを繋げるのもエバンジェリストの仕事ですか?

  • あまり意識したことはないけど、仕事の過程でつながったことはあると思う

Q. 新規開発のときは動くものが後ろになるため、E2Eの自動化が難しいと思います。

  • SaaSを使って、書き捨てでもいいから対応してしまうというのは一つの手だと思う。
  • 1回目は手動、2回目は自動。[藤原さん]
  • 自動化をする過程のときに、探索的な手動テストをやってしまう。

Q. 自動化エバンジェリストになるために必要なスキルは?

  • 色々な対象の自動化を知るのが第一歩。事例としてもっておくだけでも良い。
  • エバンジェリストは実装技術でトップである必要はない。

感想

タイトルからハンズオンみたいなイメージかと思って参加しまいたが全然違いました(笑 でもとっても勉強になりました。どうもありがとうございました!

*1:たぶんGoogleの話。JaSST’18東京でJohn Micco氏が回帰テストの自動選択の話していました。 http://jasst.jp/symposium/jasst18tokyo/pdf/A1.pdf