「第二回 システムテスト自動化 標準ガイド 読書会」に参加してきた

前回に引き続き参加してきました。

第二回 システムテスト自動化 標準ガイド 読書会
今回は3、4章がテーマ。

3章

http://www.slideshare.net/dnoguchi/3-20150523-48477354

保守性の高いテストスクリプトを書くために、というお話。

  • テストスクリプトとプログラミングは似ている
  • 良いスクリプトと悪いスクリプト
    • 良いスクリプトについて書かれていることは、良いプログラミングと同じ事
    • 「どういうのが良いスクリプトか」の内容については、そりゃそうだよねという感想
  • スクリプトにはきちんとしたドキュメントを残そうという話
    • バージョン管理(Git)やWebDriver/Gebを使えば基本いらないように感じた
  • スクリプトの種類(上から下に向かうにつれて、よりよいスクリプト)
  • スクリプト前処理
    • メンテしやすいようにフォーマットとか定数とか気をつけましょうという話
    • 発表者の方も仰っていたけど当然だよねという話
      • 3章全体がそんな感じではある
      • この本は「基本を書いている」らしいので、そういうレベルのこともあるのかな
      • もしくは当時はこれが当然と思われてはいなかったのか
  • 会場でのディスカッションにて
    • テストスクリプトは完全にDRYにすると読みにくくなる
      • 同感。最近は自分もそう感じるようになっているのでそこまでDRYを心がけていない
    • どのスクリプト手法でもPros/Consがある
      • ただしデータ駆動についてはConsが少なかった

4章

実行結果と期待値の比較について。

  • 「何を」「どのくらいの粒度で」比較するかを検討するのが大事
    • 強く同感
  • 比較の種類
    • 動的比較、実行後比較(静的比較?)
    • 定義及び何のために分けているのかイマイチ不明
    • 質問を投げてみたが、みなさんも定義がもやっとしている様子
      • 実行後比較については刊行当時のツールの制約があるのかもしれないとのこと
  • 単純な比較と複雑な比較
    • 単純な比較: 素直に比較を取る
    • 複雑な比較: 条件付きで比較を取る
      • 例: IDはアカウントによって異なるので差分に含めない
  • テストツールとテストハーネスの関係についての図(P142)
  • 1つの欠陥につき1つのテストケースが失敗するのが理想
  • センシティブかロバスト
    • 基本的なところはセンシティブ、詳細なところはロバストがおすすめ戦略
  • 実行結果と期待値を等価的に扱うためにフィルタを用いる
    • 日付はハイフンに統一するとか
    • 例:HTML全部を比較するようなセンシティブなテストで、IDとか日付とかを固定文字列に置換する
    • 例:画面のエラーメッセージの順番が定まっていないときにsortする
  • 現場の状況(プロジェクトや製品の性質、メンバースキルなど)を理解して方法を選択する
    • これは比較に限らずって感じ

感想

前回に引き続き有意義でした。
今回は懇親会にも参加し、色々とお話が聞けたのも良かったです。

  • 動的比較と実行後比較はやっぱり分かり辛いよね
    • (本編でも議論されていましたが)テスト実行後に出来たファイルを目視確認するとかが実行後比較? -> いやそれは動的じゃない?とか
  • データ駆動とキーワード駆動について
    • 本ではキーワード駆動が最上位という感じだけど、データ駆動とキーワード駆動については一長一短なのでは
    • テスターとプログラマーが分かれているなどの大規模案件だとキーワード駆動の効果は大きそう
    • プログラマーがテストも行うような小規模だとデータ駆動が丁度良いのではないか
  • 画面テストではやはりIEは対象外にするのが平和である
  • テスト以外の話題も(むしろそっちの方が多かったかも)
    • 採用について
    • マネジメントについて
    • モチベーションについて

参加された方々のポジションも様々で、品質/プロダクティビティエンジニア/人事などなど。
プロダクティビティエンジニアという呼び方は知りませんでした。
分野的にはエンジニアリングプロダクティビティと呼ぶのだとか。噛みそう。

あとお店の食べ物が美味しかった。

私はこの日体調が悪く、前半は普通に喋れていたのですが後半は体調が悪化して口数が減ってしまいました。
前述した「ドキュメントはどの粒度で書くべきか」という話もしたかったのですが体力尽きていた。次回は体調を万全にしておきたい。

直近でのテスト関係のイベントをいくつか教えて頂きました。