木曜日, 1月 17, 2008

自動化、ラッダイト運動

今現在、お仕事ではテスト手順書を書いて、その手順書からSeleniumのテストケースを自動生成するという作業を行っている。(自動生成スクリプトは自作した)
いまやっている機能の場合、テストケース出力には5秒ぐらいかかって、全テスト(500ケースくらい)の実施には30分ほどかかる。

テスト実施は別な人がやることになっているので、本来、私の作業はテストケース出力まで。
とはいえ、せっかくテストケースがあるのに実行しないのはもったいないので、何となくSeleniumを動かしてしまう。すると、当然のごとくバグが見つかるので、修正作業に回す。
この勝手なテストは、正規のワークフローではないので、この時点ではバグを直さなくても文句は言われないのだが、見つかった物を放置するのも気持ち悪いので修正は行われる。修正が終わったら、またテストを流して直っている事を確認する。

隣を見ると、同じくらいの量のテストを3日くらいかけて人力だけでテストしている人たちがいる。
Seleniumの良さはさんざん宣伝したので、知らないわけはないのだが、頑に人力だけに頼る理由はなんだろう。

納得出来る理由としては学習コストがあるが、Selenium IDEという便利なものがあるので、コマンドを丸暗記する必要は無い。多少難しいのはstoreEvalのようにjavascriptを使うものだが、それが必要となるケースはそれほど多くはない。今となってはテストケース自動生成まで出来るようになったので、Seleniumについて何も知らなくても、スタートボタンさえ押してくれればそれでいい。

そこまでしても人力のみに頼ろうとするのは、機械に仕事に取られたくないという気持ちの現れだろうか?
単純に何も考えてないだけというのが一番ありえそうだが。