このブログについて

ソフトウェア開発におけるエラーの予防やプロジェクト管理、品質管理を支援するParasoft製品のTIPSなどを、国内総販売代理店テクマトリックスのサポートスタッフが紹介しています。

2015年1月21日水曜日

第2回:Webアプリのテスト自動化は、なぜ失敗するのか?

今回は、2つ目の課題の『画面数や、ブラウザのサポート数に比例して、テストシナリオの数や長さが大きくなる』の対策について紹介します。
前回のおさらいは、 『第1回:Webアプリのテスト自動化は、なぜ失敗するのか?』 を参照してください。

---------------------------------------------------------------------------------------------------------------
 ◆◇ 画面数や、ブラウザのサポート数に比例して、テストシナリオの数や長さが大きくなる ◇◆
---------------------------------------------------------------------------------------------------------------

◆ 課題
たとえば、下図のような業務処理A~Cの操作では共通する画面遷移があります。

共通する画面遷移:
「トップ画面」 ⇒ 「ログイン画面」 ⇒ 「メニュー①画面」 ⇒ 「メニュー②画面」

テストシナリオを作成した場合、業務ごとに共通する画面遷移のシナリオが作成されます。
このようなケースでは、共通する画面でのシナリオの修正に対し、業務ごとに同じ対応を行う必要があります。

また複数ブラウザのテストが必要となった時、各業務のテストシナリオ数×ブラウザ分のテストシナリオを作成することになり、テストシナリオの増加に比例しメンテナンスに掛かる時間も大きくなります。

◆ 原因
各業務の操作やアプリケーション全体の画面遷移を考慮したテスト設計を行わず、安易にテストシナリオを作り始めると冗長的なメンテナンス性の低いテストシナリオが出来上がります。
このようなテストシナリオを自動化してもメンテナンスの時間が大きくなるだけでなく、シナリオの修正ミスを引き起こす原因にもなります。


◆ 対策
テストツールでテストシナリオを作成する前に、シナリオ(画面遷移)を分析し、共通化できる箇所を検討します。

たとえば、下図のように共通の画面遷移のテストシナリオを1つにまとめることができます。
これにより共通の画面の修正は1度で済むため、メンテナンスに掛かる時間と修正範囲を最小限に抑えることが可能となります。














◆ SOAtestで課題を解決!
SOAtestは、WebアプリケーションおよびWebサービス(Web API)の機能テスト・回帰テストや負荷テストを行うためのテストツールです。SOAtestには、今回、紹介した対策がツールの機能として提供されており、課題を簡単に解決することができます。

※ 共通の画面を共有化し、テストシナリオを作成!
テストシナリオを作成する時に、他のテストシナリオを参照することができます。
参照元のテストシナリオ部分を修正することで、参照先の全てのテストシナリオに修正内容が反映されます。



※ テストシナリオ実行時に、複数ブラウザを選択可能!
テストシナリオを実行する際に、ブラウザを選択し、実行することができます。
ブラウザは、Internet ExplorerMozilla FirefoxGoogle Chromeに対応しています。
1つのテストシナリオを複数ブラウザで実行可能です。




次回予告
-----------------------
次回は、3つ目の課題である『テストシナリオがコード(Javaなど)で管理される場合、運用できる人が限定される』の対策について紹介します。


体験版ダウンロード
------------------------------------------
http://www.techmatrix.co.jp/quality/download/index.html#soatest







2015年1月13日火曜日

増加する REST API のテスト工数を70%削減したテスト方法

サービスの早期提供に欠かせない技術として、昨今 REST を利用した Web API の開発がますます増加しています。
タイムリーにサービス提供を行うためには、この Web API (RESTやJSONなど)の送受信が正しく行われているかを効率的にテストすることが重要です。

しかし、多くの企業が Web API の検証に自社で開発したテストプログラムを用いており頻繁に繰り返される API のエンハンスごとのテスト工数と保守コストが課題となっています。

 増加する REST API のテスト工数を70%削減したテスト方法とは・・・


Web API・アプリケーション機能テストツール「SOAtest」は“GUI による簡単な設定”で高いメンテナンス性を備えたテストの自動実行とテスト結果の自動検証が可能です。
あるお客様においては、OSSベースで実施していたテスト工数に比べ約70%もの工数削減を実現されました。

この機会にその事例をご確認いただき、製品をお試しください!




◆「SOAtest」 Web API・アプリケーション機能テストツール ◆
SOAtestは、Web API のテストの実行とテスト結果の検証を自動化し、テストの効率化を実現するとともに、繰り返し実行に耐える信頼性の高いテストを提供します。REST/JSON をはじめとした様々なプロトコルに対応し、GUIによる視覚的な設定が可能で、誰もがテストを実行することが可能になります。

また、バッチモードでの実行も可能で夜間自動実行やJenkinsなどのCI環境に組込んだ継続的なテストも実現できます。


2015年1月8日木曜日

[C++test][dotTEST]大阪ハンズオンセミナー開催中!

Parasoft社製テストツールを使用して、効果的なテストノウハウとテストツールの有効性を知っていただける無償のハンズオンセミナーを東京会場のほか、大阪会場でも開催を予定しております。

東京は遠方でなかなか参加できなかった皆様、この機会に是非大阪開催のハンズオンセミナーにご参加ください。


【大阪開催】C++test 単体テスト「実践」セミナー
■概要
ツールで行うテスト効率化!単体テスト「実践」セミナーは、C++testの機能の中でも特に単体テスト機能にフォーカスしたセミナーです。
単体テストがメインとなる実践的な演習をご用意しております。 詳細はこちら

■開催日
2015年1月16日(金)13:30~17:30 (開場 13:20)
2015年2月4日(水)13:30~17:30 (開場 13:20)
2015年3月4日(水)13:30~17:30 (開場 13:20)

■会場
テクマトリックス(株)大阪支店 セミナールーム アクセス方法

C++testハンズオンセミナー大阪 参加お申し込みはこちら



※C++testとは
C/C++プログラムの単体テスト、静的解析、フロー解析、実行時メモリエラー検出を自動化する総合的なテストツールです。
ソフトウェア開発におけるテスト工数の大幅削減を実現します。

------------------------------------------------------

【大阪開催】dotTEST 静的解析、単体テスト体験セミナー
■概要
dotTESTの操作性を体感でき、かつテストツールの有効性を知っていただけるハンズオン形式のセミナーです。
サンプルコードを用いて、dotTEST の基本機能である静的解析と単体テストの操作方法と効率的な使用方法をご説明します。 詳細はこちら

■開催日
2015年1月15日(木)13:30~17:30 (開場 13:20)
2015年2月3日(火)13:30~17:30 (開場 13:20)
2015年3月3日(火)13:30~17:30 (開場 13:20)

■会場
テクマトリックス(株)大阪支店 セミナールーム アクセス方法

dotTESTハンズオンセミナー大阪 参加お申し込みはこちら


※dotTESTとは
C#/VB.NETで開発されたアプリケーションの単体テストに必要なテストドライバ、テストスタブ、テストケースを生成し、単体テストの自動実行と、実行時例外やエラーを検出します。またソースコード上の脆弱性を効率的に検出し、セキュアなアプリケーション開発を実現します。

------------------------------------------------------

システムエンジニアリング事業部が主催するその他のセミナーはこちら