Enterprise TEST Forum 2011に行ってきました

諸事情により上げるのに1週間かかってしまいましたが…
「Enterprise TEST Forum 2011〜なぜテストツールが必要なのか、必ずわかる〜」に行ってきたまとめ的なものを。
http://ac.nikkeibp.co.jp/cn/sys0624/


金曜日の13時〜って事だったのでテンション下がり気味に丁度いいと思い、仕事忙しいにも関わらずゴリ押しで行かせてもらいました。
ちょうどテストについて情報欲しかったトコロなので。


【どんなセミナー?】
テスト工程で使うテストツールに焦点を絞って、
「テストツールのメリットって?」
「テストツール入れるとどうなるの?」
「テストツールってどんなのあるの?」
みたいな事をテストツールを提供しているベンダーさんが教えてくれる(営業してくれる)というイベントです。(違


【参加対象】
「経営者,IT部門長,プロダクト・マネージャー,ITアーキテクト,ITエンジニアなど」って書いてあったのですが、当日行ってみたらスーツ姿の30代40代あたりの人達がほとんど。
テキトーな格好してった自分浮きまくり。
20代と思わしき人たちは1割くらいでした。
スーツ姿って事はSIとか業務系とか大手の人たち?Webっぽい人たちあんまり見なかったかも。(私見


【プログラム】
4社のテストツールベンダが50分ずつ話してくれる

最後に大西さんとの対談50分

そこそこ内容が面白かったからか、そんなに長く感じなかったです。


【詳細】
人海戦術のテストはもう時代遅れ〜自動化で工数を10分の1に〜
一番最初の方は以前携わられていたPJにテストツールをいれた時の経験とその成果をお話してくれました。
PJは老朽化した以下サービスのWeb鯖及びDB鯖のリプレイス。
・Webサイト
・バッチ
・コールセンターシステム
なので自分がやっているアプリの開発とはちょっと違うカモ。

  • アプリのUT

テストツール使わず手で行って4ヶ月位かかったらしい
ブラウザ毎の確認とかがあるのでここは自動化出来なかったらしい。
個人的にはここ自動化したいなーと思ったりする。

  • 稼動テスト

機能毎にパターンシナリオ作ってテストした、と言っていたので多分総合テストと同じようなテスト?(違うかも。
ソニー損害保険なので保険の取引数に応じてWebサーバ増やす作りにしていたとのこと。
(多分ここでいっているWebサーバはアプリケーションサーバも兼ねてた、と思う。鯖毎にテスト必要とか言ってたし。)
そうなるとWebサーバ毎にテストをやらなきゃいけないよねー…同じことを全部のサーバーでやりたくない!楽したい!

Seleniumを導入!
Seleniumって何?って思ったら↓の動画が分かりやすい
http://oss.infoscience.co.jp/seleniumhq/movies/intro.mov
導入した結果実行とキャプチャ取り自体はツールに任せたので1日で終了。
しかも予期しなかった副産物として実行する毎に結果が異なる、というバグを発見できました。
→自動で何回も実行してたから見つけ出せたバグだったので助かったらしい。

  • DB負荷テスト

JMater使用。
テストシナリオは実際に動いているアプリで負荷の高いクエリを選んで作ったとのこと。
これも実行1日で終われたらしい。
→実際の利用を模したシナリオつくってテストするって必要があったかもなぁ…とのこと。

  • Web鯖負荷テスト

QALoad使用。
アクセス頻度を25ユーザー/秒と想定してテスト。
これもシナリオつくって自動で回すだけなので実行自体は1日。
結果を自動で表とかにしてくれるのでテストエビデンスの管理が楽でした。
こちらも副産物があって、実行動作とかが見れるのでチューニングポイントが分かるのがよかったとのこと。


他にも36hぶっ続けで動作させてテストするヒードランテストや、800台のクライアントがあるコールセンターシステムのテストの話とか、ツール以外の話も伺えて面白かったです。
本番データでテストするからセキュリティ考えて本番環境を模した閉鎖環境を作ってそこにつなげてテストした、とか。
普通にアプリ作ってるだけだと遭遇しないような状況で「こうやってテストしたよー」みたいな話は普段聞けないのでよかったなーって思います。
プレゼンされた方もおっしゃってたんですが、自動でテストシナリオ作ってくれるツールあったらもっと工数短縮できるのになーってお話されてました。
コードとかから自動で出来ないんですかねー。でもコードから作ったらバグもシナリオに入っちゃうから結局人が面倒見なきゃだめなんだよねーって。たしかに。。。
あと実際にツールを使った感想とかメリットとかが聞けたので、ただツールの紹介されるより使った時のイメージが出来てわかりやすかったのではないかなーと思ったり。
色々勉強になりました。


●テスト自動化導入と成功の鍵
このIBMさんの話が個人的には一番ヒットでした。
テストをする専門の方?とIBMさんで出しているテストツールのテクニカルサポート専門の方?のお二人がテストツール導入にあたってのメリット・デメリットみたいなところを「ツインリード」という方法でプレゼンしてくれました。
正直すごい分かりやすかったー

  • テスト自動化で本当に生産性上がるの?

テストの作業で行われる「繰り返し」を自動化できれば効果は見込めるよね。
「テストの構築→実行→分析→レポート作成」の部分。

  • テスト自動化ツールの導入メリットって何?

1.同じ作業を
2.早く
3.正確に
繰り返せる。


確かにそうなんだけど、これが出来るのは「テスト実行」のトコロだけ。
「テスト設計」「データ作成」

「テスト実行」   ←自動化して効率が上がるのはここだけ。

「結果分析」「再検査」「目的」


他にもテスト管理とか、「人が考える」部分はテストツールじゃ効率化出来ないし、むしろテストツールを使う為の作業が発生する。

  • テスト自動化の落とし穴

1.思ったほど時短にならない
そもそもちゃんとテストケース作らなきゃいけないしね。→ツールによってはサポートしてくれるのもある。
テストスクリプトの管理も必要になるしね。
テスト見込んだ設計をしないと複雑化して、ツールの効果が発揮されないよね。


2.テスト自動化したはいいけど効果出てるのか良くわからん
闇雲になんとなーくテストツール入れても効果がわからないのではメリットに結びつかない。
テスト対象の重要度とか複雑度はちゃんと調べておいて
・重点的にやらなければならないところはどこ?
・軽くできるところはどこ?
等の戦術はちゃんと人が練ってシナリオを作って上げないと駄目です。


3.人が考えなきゃいけないトコロもツールがやってくれると思ったら大間違い!
あくまでもテストツールは「作業」をがーってやってくれるモノ。
なので戦略練ったり、分析したりっていう「思考」が必要なトコロはちゃんと人がやってあげなきゃダメ。
その為にテストを考えられる専門家の育成が出来るとベスト。
ツールはその専門家を助ける為のもの、と考える。


IBMさんのお話はテストツール導入のハマリぽいんとを分かりやすく教えてくださったので大変勉強になりました!
ツインリードの話し方も聞きやすくて、沢山練習されたんだろうなーすごいなーって。
一気にIBM株急上昇でした。


●失敗事例から学ぶデータベーステストの勘所
おらくる社の製品案内デシタ。(ぇ
正直聞き流してました…汗
おらくるDB使ってないとちょっとピンとこないかもしれません…


●ソフトウエアテストは可視化されていますか?〜テストツールによる生産性・品質向上のススメ〜
こちらも前半はテスト技法のお話、後半は製品案内な感じでさらっと…さらっと…汗
まとめると、
・テスト技法色々あるよ
・テストツールも色々あるよ
・だからテスト計画や対象のテストに見合ったツールの選定をしたほうがいいよ。
→そこでうちのマイクロフォーカスを…
な感じでした。


●調査に見るテストツールの利用実態〜現場の悩みと求めるもの〜
最後にテストについての巷のアンケートを元にテスト専門家の人と対談。
「基本から学ぶソフトウェアテスト」とか自分がテストの勉強する時に読みあさったテスト系の本の著者大西さんのお話が伺えて面白かったです。
日経システムズがとったテストツールについてのアンケート結果を元に色々出た話が↓のような感じ。
・テストツールの利用率が日本は他国に比べて著しく低い!
単価が安いインドや中国でツールを使ってテストの自動化が進んでいる
→日本は「単価が高く品質が悪い」
→仕事なくなっちゃうよ!キケン!!


・とはいえ、少しずつでもちゃんとテストを考えるようになってきている
負担になっている作業にテストケースやテストデータの作成が上がってきているので、その分テストを考えるようになってきていると思う。もしくはなってくると思う。
これがもっと負担を減らせないか?という考えにつながると思う。

もっとテスト簡単に出来る設計に出来ないか?→キレイな設計
どうやったらテストを減らせるのか?→テスト技法の勉強


・テストツール何があるかよくわからないよねぇ…
テストツールのベンダーはもっと情報開示してってほしい!
またそういう場を設けていきたい。


・テストツールの縦割り、なんとかならないの?
テストツールの縦割り=単体テストはこのツール、結合はこのツール、総合は…ってテストツール大杉!
今ベンダーの方でもここが課題。
なので他自動化ツール等との互換性を高めたりしている。


以上、5hの長めセミナーでした。
お疲れ様でした。


【所感】
・「テストツール」は「単純作業」の工数を短縮するものであって、「思考する作業」を短縮するものではない。
・「テストツール」ってどういう「役割」のものか、が明確になったのは大きかったなぁ。
・「テスト」についての基本的な話が聞けて勉強になりました。流れとか、管理の仕方とか、やり方とか。
・視野が広がった感じがします。今までは「開発」視点からしか見てなかった「テスト」ってモノが「管理」視点からの話を聞けたり、色々なテストのやり方を聞けたり。
JSTQBテスト技術者資格というものを初めて知りました。資格はいいんですが、Advancedレベルのテストアナリスト・テクニカルテストアナリストの内容が気になるところ。
IBM好きになりました。お土産のクリップも可愛かった!
・会場から東京タワー目の前に見えてキレイでした。
・アシスタントのおねーちゃんが可愛かったです。
・ナレーター?のおねーさんがキレイでした。