なぜNECは、10万件以上のテスト項目があるプロジェクトで、UIテスト自動化ツールを導入できたのか:5年前の失敗を乗り越え再挑戦(2/2 ページ)
NECの浦口宗也氏は、2015年10月に開催されたテスト自動化ツールの紹介セミナーに登壇。同社のUIテスト自動化ツール導入に関する取り組みを講演した。
オブジェクト認識機能の優秀さには「震えた」
前述した「UIオブジェクトを自動化ツールが認識してくれるか」と密に関係することだが、Ranorexは、Java、.NET、Web、Flashを始め幅広い種類のテクノロジのオブジェクト認識機能を強みとする。「創業以来、多様な環境で安定してオブジェクト認識を行えるようにすることに努力してきた。残念ながらオブジェクト認識機能がうまく動いている状態では、この機能の良さは実感されにくい。オブジェクト認識機能に問題があれば、すぐに分かるのだが」(Ranorex社 パートナーマネジメント、Mark Peinhopf氏)。
浦口氏らも、Ranorexのオブジェクト認識の機能を高く評価している。理由の一つは、認識できるオブジェクトの対象が広く、前述のグレープシティのグリッドコンポーネントを認識できたこと。そしてもう一つは、テスト自動化を運用する現場でのオブジェクトの保守管理、文書化についてもよく考えられていたことだ。
浦口氏らが実施したテスト自動化ツールの評価により、Ranorexでは画面構成要素(オブジェクト)のリポジトリをツールが作成してくれることが分かった。スクリプトと分離してオブジェクトの保守管理ができる。さらに、Excelとリポジトリ内のUIオブジェクト情報をひも付けられる機能が備わっている。浦口氏は、ExcelでUIオブジェクトのリポジトリを管理できる機能を「これはすごい」と高く評価する。UIオブジェクトとその変更管理が、現場で使い慣れたExcelを使って容易に実行でき、画面更改時にも効率良く保守できる。同社の現場で運用のニーズに実に良く合致する機能を備えていたのだ。
テスト自動化ツールの評価では、人間のキーボード/マウス操作からテストスクリプトを自動生成するやり方を採用している。ただし現実のプロジェクトでは、多くの局面では手組でテストコードを書いた。このようなやり方に備えて、「最後は力業」で対応できる「包容力」が重要だと、浦口氏は指摘する。ユーザー操作をキャプチャしてテストスクリプトを作成できる機能と、プログラマーがテストコードを書く際の柔軟性の両方の機能が重要だとする。
前述したように、Ranorexはグレープシティが販売するグリッドコンポーネントを認識してくれた。浦口氏にとって特に印象的だったのは、グリッドのプロパティを検出できたことだ。グリッド(ワークシート)の各セルのプロパティ属性に含まれる「行、列」の値をテストツールが検出してくれる。浦口氏らが評価した複数のテストツールの中で、Ranorexだけがこの機能を備えていた。このプロパティの認識を手掛かりに、対象セルに対する値投入や編集操作を自動化することも可能だ。
「これを見たときには震えた」と浦口氏は語る。例えば「グリッドの2行目の3列目に値Xを入れる」といったテストスクリプトを書くことも可能となる。これは、グリッドコンポーネントを主要画面で駆使していた同プロジェクトにとって、テスト自動化の範囲を大きく広げてくれる機能だった。
実プロジェクトへの適用では、データ登録の省力化も課題に
今回の導入プロジェクトでは、以前は4%にとどまっていた自動化の範囲が20%以上に拡大。また、従来は39人日を要していた性能テストのためのデータ登録の工数を、スクリプト作成に2日、データ登録に2日と大幅に削減できた。
このようにテスト自動化だけではなく、データ登録の自動化も工数削減に大きく寄与している。同プロジェクトでは性能テストの項目数が非常に多く、人手でデータを作成していたのでは39人日と多くの工数を必要としていた。この省力化を狙い、テスト自動化ツールによるデータ登録の自動化を進めることで、「2日間」、その正味としては29時間でデータ登録を完了させることに成功した。
さらに定性的な効果も大きかった。テスト自動化導入の「段取り」が今回の導入プロジェクトをきっかけに整理されてきたこと、またグレープシティが販売するコンポーネントのような、サードパーティツールを活用したGUI画面の自動化の道筋が付き、提案可能になったことなどである。最後に、プロジェクトチーム内に「自動化は役に立つ」との実感が復活してきたことを、浦口氏は導入の効果として挙げた。
テスト自動化の効果は大きい。ただし、その効果を発揮するには、プロジェクトの性質や自動化ツールの特性をよく見極めて導入する必要がある。このハードルを乗り越えた浦口氏の講演からは、今後の展開への自信を感じることができた。
Copyright © ITmedia, Inc. All Rights Reserved.
関連記事
- ゴールドマン・サックスが実践する「品質向上」の取り組みと役立つツール
2015年10月23日に開催された@IT主催セミナーより、後編ではゴールドマン・サックス・ジャパン・ホールディングスの伊藤博志氏による特別講演の他、品質向上に役立つ考え方やツールを紹介した各講演を紹介する。 - ゴールドマン・サックスが実践する「品質向上」の取り組みと役立つツール
2015年10月23日に開催された@IT主催セミナーより、後編ではゴールドマン・サックス・ジャパン・ホールディングスの伊藤博志氏による特別講演の他、品質向上に役立つ考え方やツールを紹介した各講演を紹介する。 - 1000万行のコードと向き合う3つのステップ――富士ゼロックスはリファクタリングにどう取り組んでいるのか
大企業では実施が難しいと思われるソフトウエアのリファクタリング。富士ゼロックスでは、どのように取り組んでいるのか。リファクタリングの実施を決断した理由、課題とその対応方針、成果、今後の展望などについて聞いた。