システムテスト自動化

Selenium - Automated system testing

OSS(Open Source Software)の機能テストツールである「Selenium」「Jenkins」「JMeter」を活用したテスト自動化ツールの販売や、コンサルティングを行っています。

オープンソースSeleniumを活用したシステムテスト自動化ツール 1か月無料お試しキャンペーン

■ このようなお困り事はございませんか?


Selenium、Jenkins、JMeterを活用した「STAR-Lite」なら、これらの問題を解決できます。

  • GUI機能テストツールの使い方が難しく、慣れるまでに時間が掛かる。
  • テストスクリプト作成のために画面操作を記録するので、プログラムが製造されるまでテストスクリプトを作成できない。
  • 画面操作でテストスクリプトを記録した後に、検証用のロジックを登録するためにプログラミング技術が必要になる。
  • テストスクリプト作成後に仕様変更が発生すると、テストスクリプトの改修ポイントを見つけ改修する作業が難しい。
  • 多数のテスト担当者が、同時に同一業務のテストスクリプト作成作業を行うと、競合状態になり作業が進まない。

 

設計情報からスクリプト作成までの工程を自動化


作業手順

作成されたテストスクリプトを読み、自動テストを実行


TST-Lite

■ STAR-Liteの特徴


  • 技術者がSelenium、Jenkins、JMeterをそのまま活用して機能テストを実行するためには、高いノウハウと経験が必要になりますが、STAR-Liteを使いテスト情報を登録することによって容易にテスト自動化を実現することができます。
  • OSSのSelenium、Jenkins、JMeterを活用するので、STAR-Liteをリーズナブルな料金で提供できます。
  • Selenium、Jenkins、JMeterを活用し使用上の課題が発生した場合には、質問できるお問い合わせ先がなく、基本的にはネット情報を参照しながら自分で解決するしかありませんが、STAR-Liteを活用いただく場合には、フロンテスに質問でき確実にテスト自動化を実現することができます。

■ STAR-LiteとSelenium単独使用との比較


比較項目 STAR-Lite Selenium
テストシナリオの作成 テストシナリオ作成ツールで作成 システム化されていない
設計情報の取込と更新 (画面、シナリオ) テスト情報を自動取込 テスト情報を取り込む機能はない
テスト情報の一元管理と資産化 テストリポジトリにテスト情報が登録され会社資産となる。テスト情報の属人性から解放 テスト情報を作成・管理していない
オブジェクト名の取得方法 オブジェクト取得ツール「OFD」で自動取得 APの画面操作をして取得 操作で取得できないオブジェクトは手作業で作成
テストスクリプトの作成方法 テスト情報から自動生成 APの画面操作をして作成 検証ロジックはプログラミングとなる

※比較項目から一部を抜粋しております。

【説明】
≫ テスト情報:テストに関連する情報で、画面、操作、データ、シナリオ等の総称のです。
≫ オブジェクト名:Seleniumが認識できるために表記されたオブジェクトの名称です。
≫ APの画面操作によって登録:画面操作をすれば自動的にテストシナリオが作成されることは簡単そうに見えるますが、
長いテストシナリオの画面操作を間違いなく操作することは困難で、苦労します。
≫ AP:アプリケーション

♣ その他の内容、詳細はお問い合わせください。 お問い合わせ

■ 料金体系


ご契約期間 1ライセンス目 6ライセンス目以降の 1ライセンス 無制限の サイトライセンスパック
初年度の年額払料金 ¥350,000 – ¥300,000 – ご相談
2年目以降の年額払料金 ¥350,000 – ¥300,000 – ご相談

・ 契約ライセンス数まで同時使用でき、契約ライセンス数を越えた場合には使用制限されます。 ソフトウエアはライセンス数に依存せずに、複数のコンピュータにインストールできます。 ・ 無制限のサイトライセンスパックの場合には、ユーザの特定のサイト内で無制限に使用できることになります。 この場合の料金は、別途ご相談させていただきます。 ・ 初年度の一時払料金の1ライセンス目の料金には、当初導入支援・教育に関する費用が含まれます。 ・ 期間を制限してご使用いただく「タームライセンス」のご提供はありません。 ・ 年額払料金の支払いが途切れた場合には、契約が継続しないために再開時には初年度扱いとなります。


♣ チラシのダウンロードは下記PDFボタンからダウンロードして下さい。
♣ 価格、テスト版ダウンロード、詳細はお問い合わせください。

チラシPDFダウンロード お問い合わせ

 

■ 活用事例


業種 【システム名】/ 特徴
警備会社 【資金管理システム】 テストチームが要件定義フェーズから参画する効果(1)作業内容 警備会社が管理するATM(現金自動預払機)に現金を充填または回収する資金管理業務において、 テストチームは要件定義フェーズから参画し、設計・製造フェーズではテスト計画書作成、 テスト仕様書作成、STAR用テストスクリプト作成の作業を並行的に進め、 開発チームからプログラムが上がってくると、機能テストおよびビジネスフローテストの 自動テストを実施し開発チームにテスト結果をフィードバックしました。(2)効果 開発チームの設計・製造と並行して、テストチームが設計書を精読してテスト仕様書を作成するため、 設計書に間違い、漏れ、曖昧表現が大方なくなりました。 また、テストチームはテスト仕様書からSTAR用テストスクリプト作成して自動テストを実施しましたので、 開発チーにテスト結果が迅速にフィードバックされプログラムの改修作業が順調に進みました。
保険会社 【経費申請・精算システム】 複数PCによる迅速なデグレードテストと並行テストによってシステムの信頼性向上(1)作業内容 経費申請・精算システムの再構築において、テストチームは設計・製造フェーズから参画し、 機能テスト、デグレードテスト用のSTAR用テストスクリプトを作成し自動テストを実施しました。 また現行システムの取引データやマスターから並行テスト用のSTAR用テストスクリプトを 作成する仕組みを開発し、1ヶ月間毎日STAR用テストスクリプトを作成し 並行テストの自動テストを実施しました。(2)効果 システムテストフェーズにおけるデグレード防止のために、改修したプログラムを登録する前に、 複数台のPCを活用した迅速なデグレードテストを自動テストで実施することによって、 デグレードのないシステムをシステムテスト環境にアップでき、ユーザにシステムがデグレードせず 着実に改善される様子を確認いただけ、開発システムに対して信頼を持っていただけました。 また、1ヶ月間毎日 自動化された並行テストが実施され、現行システムと 相違しない結果になることを確認いただけましたので、予定通り稼働開始いただきました。
製薬会社 【生産・販売管理システム】 テストチームと開発チームが離れた作業場所で、共有サーバとSVNを活用した自動テスト(1)作業内容 テストチームは要件定義フェーズから参画し、設計・製造フェーズにおいてテスト計画書作成、 テスト仕様書作成、STAR用テストスクリプト作成の作業を行いました。 開発チームからテストチームに共有サーバに開発プログラムをアップした連絡(SVN活用)があれば、 テストチームは即自動テストを実行してテスト結果を共有サーバにアップしました。(2)効果 開発チームとテストチームは離れた場所で作業を実施していましたが、共有サーバを経由してテスト依頼、 テスト結果フォードバックが迅速に実施できました。 複雑で多様な業務を処理するシステムでしたが、開発とテストのサイクルが早くなり システムの完成スピードを上げることができました。
保険会社 【新契約・査定システム】 ワークフローシステムをデシジョンテーブルで分析して自動テスト(1)作業内容 テストチームとして参画した時期は、開発チームは設計作業が終了し製造作業が進んでいる時期でした。 設計資料を参照しながらビジネスフローテストのテスト仕様書を作成し、 その後に、テスト仕様書の内容をテストリポジトリに登録、STAR用テストスクリプトの生成、 自動テストの実施の順で作業を進めました。 新契約の種類によって多様な査定方法と処理の流れがあるワークフローシステムであり、 テスト仕様書を作成する段階で、緻密なデシジョンテーブルや処理フローを作成して 業務を分析した後にテスト仕様書を作成しました。(2)効果 システムテスト段階において数多くのテストシナリオが流されることになりましたが、 STARによる自動テストによって多様な査定方法と処理の流れが迅速にテストされことによって、 システムの機能チェックとプログラムの改修の円滑なサイクルが実現され、 当初不安視されていた開発スケジュールを遵守することができました。
保険会社 【代理店システム】 ホストシステムのテストを、電文作成システムを活用して自動テスト(1)作業内容 テスト対象システムは、多くのホスト機活用のシステムと同様に、 業務処理はオープン系ハブシステムで処理され、マスター系処理はホストシステムで処理されていました。 テストチームは本件ではマスター系処理を担当する開発チームのテスト作業を支援しました。  テストチームのプロジェクト参画時にはハブシステムは他チームが開発中のためハブシステムから 取引データを入力できませんので、電文作成システムでホスト機に電文を送付して 処理結果を受信する仕組みのシステムにてホスト機処理のテストをSTAR用テストスクリプトを 作成して実施しました。(2)効果 ハブシステムが完成していない時期に、ホスト機処理のテストを自動テストで実施することができましたので、 ハブシステムが完成しハブシステムとホストシステムの連携するビジネスフローテストが 開始された際にはホスト機処理においてほとんど不具合がなく、 ハブシステムのテストが円滑に実施できたとの情報をいただきました。
販売会社 【人事評価システム】 テスト対象を手操作テストと自動テストに分類してテスト作業の効率化(1)作業内容 販売会社において検討されてきた人事評価方法改定の決定時期が遅れ、 これに対応するシステムの開発の期間が短くなったため、テストチームは システム全体のテスト作業を短期間で迅速に実施することを依頼されました。 テスト対象システムは大勢の職員を対象とした多様な職種、 雇用形態をもつシステムであり、自己申告、一次・二次評価、考課の手順で処理されるシステムでした。 テスト仕様書を作成し、STAR用テストスクリプト作成して自動テストする対象と 手操作でテストする対象を分類して効率的なテスト作業を実施しました。(2)効果 繰り返しテストする必要がないテスト対象は手操作でテストすることとし、 業務が複雑で繰り返しテストが必要となるテスト対象は自動テストすることとして テスト作業を進めました。テスト作業中に仕様変更が少なく、 開発されてきたシステムの完成度も比較的高く、 また自動テストにより複雑な処理が効率的にテストが進みましたので、 当初は期間的に厳しいと予測されシステムの一部の完成時期を遅らせることも計画されていましたが、 短期間でテスト作業を完了することができました。
物流会社 【物流システム】 仕様変更対応はテストリポジトリ更新で手間がかからない(1)作業内容 受注、仕入、納品、請求、管理業務(在庫、売掛、買掛、顧客、商品、仕入先など)の一連の 物流業務を含むシステムにおいて、テストチームは設計フェーズから参画し、テスト計画書作成、 テストシナリオ作成、テストリポジトリ登録の作業を行い、プログラム製造の完了を待っている状態になり、 完成次第迅速に自動テストを実行しました。 製造フェーズにおいて仕様変更が多数発生しましたが、 テストチームは当初登録したテストリポジトリを更新することで対応できました。(2)効果 テストチームは当初の設計資料にしたがってテストリポジトリにテスト情報を登録していましたので、 仕様変更後の設計資料(画面情報など)を再取込することによってテストリポジトリ内の テスト情報を更新することができ、更新されたテスト情報からSTARテストスクリプトを生成しました。 仕様変更があってもSTARテストスクリプトを直接改修する必要がなく、 多くの工数を掛けずに生成されたSTARテストスクリプトを使って自動テストを実行することができました。

当社は、株式会社 フロンテスのオフィシャルパートナーです。 ※株式会社フロンテス(http://frontes.jp/) フロンテス社は、高い次元での企業理念を設定し、お客様、会社員、社会に貢献しています。システムの全体最適を重視したコンサルティングサービス、ソフトウエアの品質向上とコストダウンを実現する自動テスト関連製品の開発・販売、システムテスト作業の受託、システム構築支援などを通じ、お客様のシステムに関するご要望にお応えしています。

<Seleniumとは>

Seleniumはオープンソースで開発された、Webベースアプリケーションのテスト自動化の高速開発をサポートした堅牢なツール群です。
Seleniumは、Webアプリケーションのテストニーズに特化したテスト機能を豊富に備えています。
テスト操作の柔軟性は高く、UI要素を特定したり、テストの期待値と実際のアプリケーションの動作を比較したりするための多数のオプションを利用できます。
1つのテストを多数のブラウザプラットフォームで実行できる点は、Seleniumの優れた特徴のひとつです。

<Jenkinsとは>

Jenkinsは、継続的なソフトウェアプロジェクトのビルドやテスト、外部で起動するジョブの実行などを監視するCI(継続的インテグレーション)ツールの中で、最も高いシェアを占めているオープンソースソフトウェアです。
自動化された継続的なビルドは生産性を向上させ、実行監視したキャプチャーの出力保存により、問題が発生した個所を容易に把握することができるようになります。
また、JenkinsはJavaで作成されているため、Javaの実行環境であればどんなOSでも動かすことができ、非常に高い汎用性をもっています。
導入も非常に簡単で、わかり易いGUIで簡単に設定、使用することができる上、プラグインの数も豊富で様々な機能を拡張することもできます。

<JMeterとは>

JMeterは、クライアント・サーバシステムのパフォーマンス測定および負荷テストを行うJavaで作成されたオープンソースの汎用テストツールです。
オープンソースかつ多数の機能を備えていることから、WebアプリケーションおよびWebサーバの性能測定にも広く利用されており、計測されたパフォーマンスのデータは、グラフィカルに表示したり、テーブル形式で表示したり、電子メールとして送信する事もでき、テストシナリオとして記録することも可能です。
アプリケーションにおいて、そのパフォーマンスだけでなく、どの程度の負荷まで耐えられるのかも、重要な要素となります。
JMeterは、複数のスレッドを同時に起動して多重度による負荷をかけることも可能なので、このような重要な要素を計測し、より信頼性の高いアプリケーションの開発・改良を実現することができます。