2016年8月に、STAR-Lite V3.2_R3にテスト仕様書作成機能を追加しました。
テスト仕様書作成の工程をシステム化しました。
《 機 能 》
テスト項目、テストケース、テストシナリオの作成をシステム化し、 操作、データ、シナリオの登録作業がほぼ自動化されます。
《 メリット 》
テスト仕様書作成の効率化と情報共有化が進みます。 その結果として、テスト対象システムの品質が向上します。 その他:この機能はオプション機能として提供します。
《 その他 》
この機能はオプション機能として提供します。

2016年7月に、STAR-Lite V3.2_R3をリリースしました。
CSV出力データを検証できるCSVCOMPコマンドを追加しました。
《 機 能 》
CSV出力データを期待値としてDBに保存し、システム改修後の 自動テストの結果を実測値としてDBに保存します。 CSV出力データの期待値と実測値を比較して自動検証できます。
《 メリット 》
CSV出力データの検証が自動化され、テスト検証負担が大幅に 削減できます。

テスト自動化について、こんなことでお困りではありませんか。

  • テスト自動化で本当に効率が上がるのだろうか。
  • テスト自動化の経験がないので、取り組むとなると不安。
  • 何か問題があったときに、迅速な支援がないと困る。
  • テストチーム全体でツールを使うとなると、費用が高くなり予算的に無理。
  • ユーザ要求が曖昧で仕様変更が多く発生する場合にも、本当に使えるか。
  • テストスクリプトの作成をできる限り早期に開始し完了したいが、大方のツールでは画面操作をして 作成するので、アプリケーション開発が遅れたらテストスクリプト作成も全く進まなくなる。
  • テスト結果が正しいか確認するためのプログラミングは、負担が重い。
  • テスト工程の要の作業であるテスト仕様書作成は、システム化し効率化したい。


テスト自動化ツール「STAR製品」の構成図

図解

  • STAR製品として、STAR-Lite とSTAR-ATTを開発/販売しています。
  • STAR-Liteについて
    OSS(Open Source Software)である Selenium、JMeter、Jenkinsに連携して、機能テスト、 負荷テスト、継続的インテグレーションなどのテストを自動実行します。
  • STAR-ATTは、機能テストツ−ル「UFT」「TP」に連携する機能テストツールです。




テスト自動化ツール「STAR製品」の特徴

  • 頻繁に仕様変更する仕様変更に対応可能
    画面、操作、データ、シナリオといったテストに関連する情報をテストリポジトリに一元管理し、 テストスクリプトを自動生成して自動テストを実行できます。
    仕様変更時には、テストリポジトリを更新してテストスクリプトを再度自動生成しますので、 技術力が必要なテストスクリプトの調整作業が不要となります。
  • 検証用コマンドの提供
    処理結果を検証するための全てのコマンドは製品として提供されます。 したがって、検証のためのプログラムングが不要です。
  • テスト仕様書作成の自動化
    テスト項目、テストケース、テストシナリオなどのテスト仕様書を作成しテストリポジトリに取り込む 仕組みが自動化されています。
  • 大量の検証項目に対応可能
    画面、PDF、CSV、DBなどの検証項目が大量になる場合に、期待値自動取得機能が提供され、 自動テスト時に期待値と比較して検証する仕組みが自動化されています。
  • 大規模システムに適用可能
    多くのユーザや技術者は、テストリポジトリに収納されたテスト関連情報を共有して作業を進め ることができ、効率的なテスト作業が実現できます。
  • 安価なテスト自動化ツール
    STAR-Lite は、OSSのSelenium、JMeter、Jenkinsなどに連携するツールであり、低料金で 提供できます。



テスト自動化ツール「STAR」の活用事例


業 種 シ ス テ ム 名 特 徴
警備会社 資金管理システム
テストチームが要件定義フェーズから
参画する効果
作業内容
警備会社が管理するATM(現金自動預払機)に現金を充填または回収する資金管理業務において、 テストチームは要件定義フェーズから参画し、設計・製造フェーズではテスト計画書作成、 テスト仕様書作成、STAR用テストスクリプト作成の作業を並行的に進め、 開発チームからプログラムが上がってくると、機能テストおよびビジネスフローテストの 自動テストを実施し開発チームにテスト結果をフィードバックしました。

効 果
開発チームの設計・製造と並行して、テストチームが設計書を精読してテスト仕様書を作成するため、 設計書に間違い、漏れ、曖昧表現が大方なくなりました。 また、テストチームはテスト仕様書からSTAR用テストスクリプト作成して自動テストを実施しましたので、 開発チーにテスト結果が迅速にフィードバックされプログラムの改修作業が順調に進みました。

保険会社 経費申請・精算システム
複数PCによる迅速なデグレードテストと
並行テストによってシステムの信頼性向上
作業内容
経費申請・精算システムの再構築において、テストチームは設計・製造フェーズから参画し、 機能テスト、デグレードテスト用のSTAR用テストスクリプトを作成し自動テストを実施しました。 また現行システムの取引データやマスターから並行テスト用のSTAR用テストスクリプトを 作成する仕組みを開発し、1ヶ月間毎日STAR用テストスクリプトを作成し 並行テストの自動テストを実施しました。

効 果
システムテストフェーズにおけるデグレード防止のために、改修したプログラムを登録する前に、 複数台のPCを活用した迅速なデグレードテストを自動テストで実施することによって、 デグレードのないシステムをシステムテスト環境にアップでき、ユーザにシステムがデグレードせず 着実に改善される様子を確認いただけ、開発システムに対して信頼を持っていただけました。 また、1ヶ月間毎日 自動化された並行テストが実施され、現行システムと 相違しない結果になることを確認いただけましたので、予定通り稼働開始いただきました。

製薬会社 生産・販売管理システム
テストチームと開発チームが離れた作業場所で、
共有サーバとSVNを活用した自動テスト
作業内容
テストチームは要件定義フェーズから参画し、設計・製造フェーズにおいてテスト計画書作成、 テスト仕様書作成、STAR用テストスクリプト作成の作業を行いました。 開発チームからテストチームに共有サーバに開発プログラムをアップした連絡(SVN活用)があれば、 テストチームは即自動テストを実行してテスト結果を共有サーバにアップしました。

効 果
開発チームとテストチームは離れた場所で作業を実施していましたが、共有サーバを経由してテスト依頼、 テスト結果フォードバックが迅速に実施できました。 複雑で多様な業務を処理するシステムでしたが、開発とテストのサイクルが早くなり システムの完成スピードを上げることができました。

保険会社 新契約・査定システム
ワークフローシステムを
デシジョンテーブルで分析して自動テスト
作業内容
テストチームとして参画した時期は、開発チームは設計作業が終了し製造作業が進んでいる時期でした。 設計資料を参照しながらビジネスフローテストのテスト仕様書を作成し、 その後に、テスト仕様書の内容をテストリポジトリに登録、STAR用テストスクリプトの生成、 自動テストの実施の順で作業を進めました。 新契約の種類によって多様な査定方法と処理の流れがあるワークフローシステムであり、 テスト仕様書を作成する段階で、緻密なデシジョンテーブルや処理フローを作成して 業務を分析した後にテスト仕様書を作成しました。

効 果
システムテスト段階において数多くのテストシナリオが流されることになりましたが、 STARによる自動テストによって多様な査定方法と処理の流れが迅速にテストされことによって、 システムの機能チェックとプログラムの改修の円滑なサイクルが実現され、 当初不安視されていた開発スケジュールを遵守することができました。

保険会社 代理店システム
ホストシステムのテストを、
電文作成システムを活用して自動テスト
作業内容
テスト対象システムは、多くのホスト機活用のシステムと同様に、 業務処理はオープン系ハブシステムで処理され、マスター系処理はホストシステムで処理されていました。 テストチームは本件ではマスター系処理を担当する開発チームのテスト作業を支援しました。  テストチームのプロジェクト参画時にはハブシステムは他チームが開発中のためハブシステムから 取引データを入力できませんので、電文作成システムでホスト機に電文を送付して 処理結果を受信する仕組みのシステムにてホスト機処理のテストをSTAR用テストスクリプトを 作成して実施しました。

効 果
ハブシステムが完成していない時期に、ホスト機処理のテストを自動テストで実施することができましたので、 ハブシステムが完成しハブシステムとホストシステムの連携するビジネスフローテストが 開始された際にはホスト機処理においてほとんど不具合がなく、 ハブシステムのテストが円滑に実施できたとの情報をいただきました。

販売会社 人事評価システム
テスト対象を手操作テストと自動テストに
分類してテスト作業の効率化
作業内容
販売会社において検討されてきた人事評価方法改定の決定時期が遅れ、 これに対応するシステムの開発の期間が短くなったため、テストチームは システム全体のテスト作業を短期間で迅速に実施することを依頼されました。 テスト対象システムは大勢の職員を対象とした多様な職種、 雇用形態をもつシステムであり、自己申告、一次・二次評価、考課の手順で処理されるシステムでした。 テスト仕様書を作成し、STAR用テストスクリプト作成して自動テストする対象と 手操作でテストする対象を分類して効率的なテスト作業を実施しました。

効 果
繰り返しテストする必要がないテスト対象は手操作でテストすることとし、 業務が複雑で繰り返しテストが必要となるテスト対象は自動テストすることとして テスト作業を進めました。テスト作業中に仕様変更が少なく、 開発されてきたシステムの完成度も比較的高く、 また自動テストにより複雑な処理が効率的にテストが進みましたので、 当初は期間的に厳しいと予測されシステムの一部の完成時期を遅らせることも計画されていましたが、 短期間でテスト作業を完了することができました。

物流会社 物流システム
仕様変更対応はテストリポジトリ更新で
手間がかからない
作業内容
受注、仕入、納品、請求、管理業務(在庫、売掛、買掛、顧客、商品、仕入先など)の一連の 物流業務を含むシステムにおいて、テストチームは設計フェーズから参画し、テスト計画書作成、 テストシナリオ作成、テストリポジトリ登録の作業を行い、プログラム製造の完了を待っている状態になり、 完成次第迅速に自動テストを実行しました。 製造フェーズにおいて仕様変更が多数発生しましたが、 テストチームは当初登録したテストリポジトリを更新することで対応できました。

効 果
テストチームは当初の設計資料にしたがってテストリポジトリにテスト情報を登録していましたので、 仕様変更後の設計資料(画面情報など)を再取込することによってテストリポジトリ内の テスト情報を更新することができ、更新されたテスト情報からSTARテストスクリプトを生成しました。 仕様変更があってもSTARテストスクリプトを直接改修する必要がなく、 多くの工数を掛けずに生成されたSTARテストスクリプトを使って自動テストを実行することができました。