ソフトウェアの開発サイクルにテスト自動化を導入するには

Autify, Inc.

ソフトウェアの開発サイクルにテスト自動化を導入したい場合、課題がいくつもあります。チームメンバー全員がスクリプト言語に精通しているとは限りませんし、ツールの使い方をよく知らない人もいるでしょう。品質管理マネージャーの場合、もっとたくさんのスタッフを割り当てればこの問題を解決できるとは限りません。QAチームの仕事の妨げになったり、長期的により多くの費用がかかってしまう可能性もあります。

迅速なアジャイル開発サイクルに対応しながら、これらの課題を克服するにはどうすれば良いのでしょうか? この記事では、テスト自動化ソフトウェアAutifyを利用して問題を解決した事例についてご紹介します。

「膨大な数のソフトウェアテストを自動化するツールとしてAutifyを導入しました。」

今回、日本を代表するベンチャー企業のDeNAがインタビューに応じてくれました。DeNAは日本に拠点を置くモバイルポータルおよびeコマースサイトを提供している企業で、日本最人気の携帯電話プラットフォームの1つ、モバゲー.jpを所有している会社でもあります。今回、QAテストリードの芹沢憲二さんと柏倉直樹さんをインタビューしました。

DeNAでは、テスティングに重点を置いているソフトウェアエンジニア集団がSoftware Engineers in Test(SWET)というテスト専門チームを形成しています。ソフトウェアエンジニアがテスターの役割を担うことの利点は、エラーを指摘するだけでなく見つけたバグをコーディングできることです。自動テストを実行するためにはコードスクリプトを作成する必要がありますが、DeNAではメンバー全員がSeleniumなどのソフトウェアを扱えるわけではありません。このことは他社のソフトウェアテスト部門と同じでしょう。もともと率先してSeleniumを使っていたエンジニアもいましたが、部門全体で使用が必須だったわけではありませんでした。

残念ながら、手作業でテストする必要があったのです。

手動テストの課題

「手動テストを毎日行う必要があり、圧倒されてしまいました。DeNAのQAチームはバグのスクリーンショットを手作業で撮り、Excelにカタログ化して管理していました。テスティングではなく、スクリーンショットを作成するという手間がかかる作業に時間をかけていたのです。」(芹沢さん)

「そんな時、Autifyを導入したことでこのような作業をする必要がなくなりました。また、チームの作業の負担を減らすのではなく、テストの範囲を広げられるようになりました。」(柏倉さん)

Autifyだと、フトウェアがスクリーンショットの記録を残すことができ、手作業で行う必要がなくなったのです。

テスト自動化を導入するには?

テスト自動化を導入する方法

最初は小さな部分から始めるとよいでしょう。そこから自動化する作業を増やしていけばよいのです。DeNAを含め、たくさんのご利用者様がそのように導入を進めています。

DeNAとのインタビューでは小さな作業の自動化からどのように進めていったのか詳しく話してくださりました。「表示やページ遷移の確認など、短いテストケースのテストシナリオを作成することから始めました。」そこからテスト項目を少しずつ自動化していったのです。これは反復的な作業に最適です。「繰り返し行うテストの優先度を上げ、それを徐々にシナリオにしていきました。今では定期的に実行しています。」(芹沢さん)

Autifyによるテスト自動化について話し合うために、チームリーダーとメンバーで定期的に会議を行っているそうです。戦略計画段階から、次のように進めていく予定だったと言います。

  • 小さな作業から始める
  • テストワークフローでAutifyの機能を効果的に使う方法を考える
  • データ駆動型テスト機能を使ってテストシナリオを設計する
  • チームメンバーからのインプットを生かして使用範囲の拡大を加速化する

テスト自動化ソフトウェアを導入するメリット

テスト自動化ソフトウェアを導入することには、たくさんの利点があります。

  • テストに費やす時間や人数が増える
  • 工数を増やせる
  • ソフトウェア開発における総所有コストを増やせる

「テスト自動化ツールを導入した結果、単純作業を自動化して他のタスクに費やす時間を増やせました。リピートする多数のテストを自動化できたことが最大のメリットだと思います。DeNAほど大規模だと、手動で行うのははっきり言って無理ですね。手作業だとメンバーが何人いても追いつきません。」(芹沢さん)

「Autifyは本当にシンプルで、とても使いやすいと思います。コーディングのスキルがなくても簡単で、この点だけでもチームメンバー全員が導入しやすいポイントだったと思います。」(柏倉さん)

生産性も向上できたそうです。「まだ実験段階ですが、リリースサイクルが速い製品で1か月間ほど試したところ、工数を約10%削減できました。」(柏倉さん)

まとめ

これまでにたくさんのQAテスターの皆様をインタビューしてきましたが、「手動で同じことをリピートしなければならないのが嫌」という人が多いようです。また、初めて自動テストツールを導入する方も多い傾向があります。部門全体で自動化されるまで、課題を個別に対応していく必要があるのが現状です。しかし、億劫な手動テストをAIベースの自動化ツールに任せられたらどうでしょうか。「試してみたい!」と思いますか?

これまでにAutifyを導入したQAチームは、最初は小さな作業から自動化して、徐々に自動化範囲を拡大するという導入方法を取っているケースが多いようです。こうすることでより多くのテストを実行できるようになり、反復的なテストにも対応できるようになっています。ご興味のある方、お気軽にAutifyを無料でお試しください!

Autifyではこの他にも品質保証やテスト、アジャイル開発に役立つ資料を無料で公開していますので、ぜひこちらからご覧ください。