特長・機能【Silk Test

SCROLL DOWN

特長

1.生産性に優れたテスト開発環境

スキルレベルに依存しない製品体系
Silk Test は、テスト自動化スクリプトを作成するために必要な、記録、編集、デバッグ、確認作業を行うための、様々な機能を備えています。
ビジネスアナリスト、QA エンジニア向けそれぞれのスキルやロール に合わせたテスト自動化スクリプト作成の統合環境として、Silk Test Workbench を提供しています。ビジネスアナリストは、ストーリーボードをベースとする視覚的なアプローチを採用したビジュアルテストによって、テストスクリプトの作成が可能となります。また、QA エンジニアは使い慣れた VB.NET 形式のスクリプトベースのテストスクリプトが作成できます。テストの生産性を高める Silk Test Workbench によって、テスト自動化のための初期コストを大幅に削減することができます。

2.様々な実行環境に対応した、高い汎用性

クロスブラウザテスト機能
テストを自動化する最大のメリットは、同じテストを繰り返し、様々な環境での動作を効率良く確認できることです。Silk Test は、様々なバージョンの Windows OS や複数のブラウザに対応しており、各環境でのテスト自動化を促進します。
Silk Test は、Win32 や .NET、UWP、Java などのデスクトップアプリケーショ ン、および Apache Flexなどのリッチクライアントに対応しており、プロジェクト毎に異なる環境を使用していても、テスト自動化を行うことができます。

3.最先端のクロスブラウザテスト機能

Silk Test は、Internet Explorer、Firefox、Chrome、Safari、Edge 等で記録したテストスクリプトを、変更することなく他のブラウザで再生可能な、クロスブラウザ機能を備えています。また、モバイルデバイスを使用している環境ではモバイルブラウザを使用したクロスブラウザテストを行うこともでき ます。各ブラウザは同期処理も統一されているため、ブラウザ間の同期処理の違いを意識する必要がありません。

4.要件に基づいたテストの実現

ユーザーの要求に基づいたシステムを構築できているかどうか確認するため、機能要件に沿ったテストを実施することが非常に重要です。
Silk Test は、テスト管理ツール Silk Central と連携することにより、テストケースと要件の関連付け、計画的な実行、テスト結果の管理、ポートフォリオ・レポートの作成等が可能です。

5.パワフルなモバイルテスト機能

Silk Test は、モバイル環境にも対応しています。モバイルデバイスにインストールされているネイティブ/ハイブリッドアプリケーションや Chrome、Safari などのブラウザを使用した機能テストおよび回帰テストの自動化が簡単に実行できます。Silk Testを使用することでクロスデバイスのテスト(複数機種における同一アプリケーションの動作テスト)が実現し、テスト工数の削減、品質の安定に大きく貢献します。

  1. 実機のモバイルデバイスが利用可能
    モバイルデバイスのテストは Apple 社や Google 社が提供する IDE や SDK (Software Development Kit) を利用してシミュレータ上でテストをすることが一般的でした。Silk Test は、モバイルデバイスの実機を利用した自動化スクリプトを作成することができます。
  2. パワフルなスクリプトの記録/再生
    USB ケーブルでデバイスと接続するだけで自動化スクリプトを記録/再生することができます。アジャイル開発におけるモバイルデバイスのテストにも効果的です。
  3. JailbreakもしくはRoot奪取不要
    一部のテスト自動化ツールでは、Jailbreak や root を奪取して利用することが必須です。Silk Test は、このような処理を行うことなく安全に利用できます。

注1:Jailbreak
iOS デバイスにアップルに認証されていないアプリケーションを自由にインストールしたり iOS に 独自の機能を加えるためにシステム管理権限を奪う行為をJailbreakと呼びます。

注2:root奪取
Android デバイスでは、Google に認証されていないアプリケーションを自由にインストールしたり Android OS に独自の機能を加えるためにシステム管理権限を奪う行為を root 奪取と呼びます。

機能

1.スクリプト記録・再生

スクリプトの記録

ビジュアルテストの記録

機能テストを実施する際、対象のアプリケーションに対して、マウスおよびキーボードで行う操作を記録することで、スクリプトを自動作成することができます。
スクリプトを一から記述する必要がなく、テストケースの雛型として使用することで、テスト自動化にかかる工数を大幅に減らすことができます。

Silk Test Workbench には、2種類のテストスクリプト作成機能が用意されています。
ビジネスアナリストには非手続き言語形式のビジュアルテスト、QA エンジニア向けには、VB.NET を採用した .NET スクリプトが用意されています。
テスト自動化組織のスキルやロールに合わせたスクリプト記録・再生を行い、Silk Test のテスト自動化機能を活用することができます。

スクリプトの編集

.NETスクリプトの記録

記録したスクリプトはテスト要件に合わせて編集を行います。ここで CSV ファイル読み込みを行ってループ処理を行ったり、スクリプトのモジュール化を行ってサブルーチンをコールするようにしてスクリプトの共有化を行います。また、ビジュアルテストから .NET スクリプトを呼び出すこともできます。

スクリプトの再生

作成したスクリプトを実行することにより、アプリケーションに対するテストを、自動的に実行させることができます。
テストの自動実行は、普段使われていないリソースや時間の有効活用を実現します。

2.テスト結果の検証

テストスクリプトに検証ポイントを設定し、テスト実行時の画面が想定と異なる場合に、チェックさせることができます。

検証機能

検証機能
テスト実行時に画面上の文字やプロパティ情報が、期待通りかどうかをチェックさせます。スクリプトの記録時にウィザードを使用して、画面から検証情報を取り込むことが可能です。

イメージ検証機能

イメージ検証機能
テスト実行時にイメージとして認識させた資産を利用して同じ画面かどうかをチェックさせます。スクリプトの記録時にウィザードを使用して、画面からイメージ検証資産を作成することが可能です。

3.テスト結果の確認

テスト結果
Silk Test Workbench でテストを実行すると、リポジトリにテスト結果が格納されます。保存されたテスト結果は履歴管理され、必要な時に読みだして参照することが可能です。
スクリプト記録時の画面と、スクリプト実行時の画面が記録されるので、問題が発生した場合の原因調査に役立ちます。
検証ポイントが設定されている場合、テスト結果には、相違点も記録されます。
テスト結果は、必要に応じてレポートとして印刷することもできます。

4.データドリブンテスト

データドリブンテスト
Silk Test Workbench のアクティブデータを使用することで、テストデータを外部ファイルとして用意し、実行を複数回数繰り返すテストスクリプトを作成することができます。
アクティブデータは、Microsoft Excel や CSV などの形式のテストデータから作成することができます。
アクティブデータを Silk Test Workbench のスクリプトに関連付け、ループ構造にしたステップから、一行ずつテストデータとして読み込んで実行します。
テストデータを外部ファイルとして扱うことで、テストケースの管理が容易になります。また、データベースからエクスポートした、大量のテストデータを使って繰り返しテストを実行することも可能になります。

5.レスポンシブ Web デザイン

レスポンシブ Web デザイン
レスポンシブ Web デザイン

近年、さまざまな種類のデバイスに対応して、ブラウザアプリケーションの表示と操作におけるユーザーエクスペリエンスを向上させたいという要求が発生しました。
レスポンシブ Web デザイン(RWD)は、アプリケーションのレイアウトを画面サイズによって変化させることによって、この要求を実現します。
Silk Test は、解像度を意識して記録する機能を持っているので、テスト実行時すべてのレスポンシブWebデザインの画面サイズに対してテストスクリプトを動作させることができます。

PC
PC
タブレット
タブレット
スマートフォン
スマートフォン

6.キーワード駆動テスト

キーワード駆動テストは、テスト開発からテスト設計を分離するソフトウェアテスト手法です。
Silk Test はキーワード駆動テストをサポートしており、Silk Test のキーワードの形式での共有資産として構成されるメンテナンス可能な自動化フレームワークを自動化エンジニアが開発することによって、自動化エンジニアとビジネスアナリスト間で密接な共同作業を行うことができます。

キーワード駆動テストのメリットは以下の通りです。

  • テスト対象のアプリケーションにアクセスすることなく、初期段階からテストを開発でき、後からキーワードを実装できます。

  • プログラムの知識がなくてもテストを開発できます。

  • キーワード駆動テストは、長期的に見るとメンテナンスコストを低減できます。これらのキーワードを使用するすべてのキーワード駆動テストは自動的に更新されます。

  • 技術者でなくてもテストケースが読みやすく、理解しやすくなります。
    また、変更も簡単です。

  • 既存のキーワードを再利用して新しいテストを作成できます。これにより、より広範囲なテストカバレッジ゙を実現しやすくなります。

キーワード駆動テストは、下記の Silk Test クライアントでサポートされています。

  • Silk Test Workbench

  • Silk4J

  • Silk4NET

7.バッチ実行

作成したテストスクリプトはバッチコマンドによる実行が可能です。夜間、ビルドしたアプリケーションをそのまま機能テスト、回帰テストを行うような作りこみを行うことで完全に無人化されたアジャイルなアプリケーションテスト環境が実現できます。

8.カスタムコントロール

サードパーティ製カスタムコントロールや自作の GUI コントロールは実装方法が特殊なものが多く、「認識しない」「値が取得できない」などの問題が多く報告されています。テスト自動化のエンジニアは、キーボード操作を利用するスクリプトを追記したり手動テストで対応する必要がありました。Silk Test はテキスト認識、イメージ認識、インジェクションコードの挿入を利用してカスタムコントロールの操作を実現しています。

テキスト認識によるカスタムコントロールの操作

テキスト認識によるカスタムコントロールの操作
未サポートの GUI オブジェクトを文字列で認識を行い、GUI 操作が可能になります。

イメージ認識によるカスタムコントロールの操作

イメージ認識によるカスタムコントロールの操作
未サポートの GUI オブジェクトをイメージ資産を作成して認識を行い、GUI 操作が可能になります。

インジェクションコードによるカスタムコントロールのサポート

.NET フォームや WPF において自作コントロールやサードパーティ製のカスタムコントロールを使用していた場合、インジェクション用コードを記述して AUT(テスト対象アプリ)の操作が可能になります。

9.既存のIDEに統合可能な、テスト開発環境

開発者の方は普段使い慣れている統合開発環境 (IDE) をそのまま利用することで、テストスクリプトの開発生産性があがります。Silk Testは、IDE を テスト開発環境として使用できます。

 

Silk4Net

開発環境として Microsoft Visual Studio (Expressを除く) を使用している場合、Silk Test の機能を Visual Studio のプラグインとして使用することができます。GUI の操作手順が、C# もしくは VB .NET のソースコードとして記録され、Visual Studio のユニットテストケースとして、実行および結果の管理を行うことができます。専用の実行結果ビューワーが用意されていてビジュアルな結果も参照できます。

※)テスト対象は、.NET アプリケーションだけではなく、Silk Test が対応しているすべてのアプリケーションです。

Silk4J

開発環境として Eclipse を使用している場合、Silk Test の機能を Eclipse のプラグインとして使用できます。GUI の操作手順が、Java のソースコードとして記録され、ユニットテスト JUnit のテストケースとして、実行および結果の管理を行うことができます。専用の実行結果ビューワーが用意されていてビジュアルな結果も参照できます。

※)テスト対象は、Java アプリケーションだけではなく、Silk Test が対応しているすべてのアプリケーションです。

−Silk4J Seleniumラッパー機能

WebDriver 機能の追加 Silk Test と WebDriver 記録の切り替え

Silk4JでSeleniumのWebDriverを使用できます。
これにより、以下のメリットがあります。

    • アプリケーションの操作の記録方式をSilk Test 用、WebDriver 用から選択、テストスクリプトを作成できます。

  • WebDriver のスクリプトをSilk4J で再生することにより、Silk Testのスクリーンショットが含まれた実行結果を取得できます。

−自動テストの Docker 化

自動テストの Docker 化

Silk4J ではDocker でChrome/Firefoxを使用したWebアプリケーションのテストを自動実行できます。これにより、Jenkins、Bamboo、Team City などの CI サーバーから機能テストを自動的にトリガーすることができ、継続的インテグレーション(CI) および 継続的デプロイ(CD) プロセスに機能テストを組み込むことができます。

Docker化された環境でテストを実行できるため、新しいテスト環境の構築を迅速に、また環境の再配布が容易に行えます。

−サービスの仮想化

一般的なWeb アプリケーションのフロントエンドは、バックエンドサービスに強く依存しています。バックエンドサービスにアクセスできない場合や、開発中の場合は、フロントエンドのテストを続けることが難しいことが多く、場合によっては完全にテストできなくなります。
Silk4JではService Virtualizationを使用して、サービスコンポーネントのスタブを容易に作成できます。 作成したサービスをスタブでシミュレートできるので、バックエンドサービスが利用可能になるまで待つ必要がなく、早期にテストを実施できます。

※Service Virtualizationは、マイクロフォーカスエンタープライズ社のサービス仮想化ソリューションです。

Service Virtualization>