Robot-framework-overview
ロボットフレームワーク-概要
- ロボットフレームワーク*は、受け入れテストおよび受け入れテスト駆動開発のためのオープンソースのテスト自動化フレームワークです。 テストケースを作成するためのキーワード駆動型、動作駆動型、データ駆動型のさまざまなテストケーススタイルに従います。 Robot Frameworkは、外部ライブラリ、オープンソースで自動化に使用できるツールのサポートを提供します。 使用される最も一般的なライブラリは、Web開発およびUIテストに使用されるSeleniumライブラリです。
テストケースは、表形式のキーワードスタイルを使用して記述されます。 テストケースの作成には、任意のテキストエディターまたはRobot Integrated Development Environment(RIDE)を使用できます。
ロボットフレームワークは、利用可能なすべてのオペレーティングシステムで正常に動作します。 フレームワークはPythonで構築され、Jython(JVM)およびIronPython(.NET)で実行されます。
ロボットフレームワークの機能
このセクションでは、ロボットが提供するさまざまな機能について説明します。
テストケースの表形式
ロボットフレームワークには、キーワードを使用してテストケースが記述される単純な表形式が付属しています。 新しい開発者は、テストケースを理解して記述しやすくなります。
キーワード
ロボットフレームワークには、ロボットフレームワークで使用可能な組み込みキーワード、Selenium Libraryなどのライブラリから使用可能なキーワード(ブラウザーを開く、ブラウザーを閉じる、ブラウザーを最大化するなど)が付属しています。 また、他のユーザー定義キーワードまたは組み込みキーワードまたはライブラリキーワードの組み合わせであるユーザー定義キーワードを作成することもできます。 これらのキーワードに引数を渡すこともできます。これにより、再利用可能な関数のようなユーザー定義のキーワードが作成されます。
変数
ロボットフレームワークは変数(スカラー、リスト、辞書)をサポートしています。 ロボットフレームワークの変数は使いやすく、複雑なテストケースを作成する際に非常に役立ちます。
図書館
ロボットフレームワークは、SeleniumLibrary、データベースライブラリ、FTPライブラリ、httpライブラリなどの多くの外部ライブラリをサポートしています。 SeleniumLibraryは、ブラウザとのやり取りやWebアプリケーションとUIのテストに役立つため、主に使用されます。 ロボットフレームワークには、文字列、日付、数字などの独自の組み込みライブラリもあります。
リソース
ロボットフレームワークでは、テストケースで使用するキーワードを外部に含むロボットファイルをインポートすることもできます。 リソースは非常に使いやすく、他のテストプロジェクト用にすでに作成されたキーワードを使用する必要がある場合に非常に役立ちます。
データ駆動型テストケース
ロボットフレームワークは、キーワード駆動型のテストケースとデータ駆動型のスタイルをサポートしています。 データ駆動型は、テストスイートのテンプレートとして使用される高レベルのキーワードで動作し、テストケースは、テンプレートで定義された高レベルのキーワードとデータを共有するために使用されます。 これにより、さまざまな入力でUIをテストする作業が非常に簡単になります。
テストケースのタグ付け
ロボットフレームワークでは、テストケースにタグを付けることができるため、タグのテストケースを実行するか、タグの付いたテストケースをスキップできます。 タグ付けは、テストケースのグループのみを実行する場合やスキップする場合に役立ちます。
レポートとログ
ロボットフレームワークは、テストスイートのすべての詳細、レポートおよびログの形式でのテストケースの実行を提供します。 テストケースのすべての実行の詳細は、ログファイルで確認できます。 テストケースが失敗したか合格したか、実行にかかった時間、テストケースを実行するための手順などの詳細が提供されます。
RIDE
Robotフレームワークで利用可能なこのエディターは、テストケースの作成と実行に役立ちます。 エディターのインストールと使用は非常に簡単です。 RIDEは、フレームワーク固有のコード補完、構文の強調表示などを提供することにより、テストケースの作成を簡単にします。 プロジェクト、テストスイート、テストケース、キーワード、変数、ライブラリのインポート、実行、テストケースのタグ付けは、エディターで簡単に実行できます。 ロボットフレームワークは、ロボットのテストケースをサポートするEclipse、Sublime、Textmate、Pycharmのプラグインも提供します。
ロボットフレームワークの利点
ロボットフレームワークはオープンソースなので、試してみたい人は誰でも簡単に試すことができます。
- インストールは非常に簡単で、テストケースの作成と実行に役立ちます。 初心者は簡単に理解でき、ロボットフレームワークの使用を開始するためのテストに関する高度な知識は必要ありません。
- テストケースを記述するためのキーワード駆動型、動作駆動型、およびデータ駆動型のスタイルをサポートしています。
- 外部ライブラリを適切にサポートします。 最もよく使用されるのは、ロボットフレームワークに簡単にインストールして使用できるSelenium Libraryです。
ロボットフレームワークの制限
ロボットには、コードが複雑になる場合に必要なif-elseのネストされたループのサポートがありません。
結論
Robot Frameworkは、受け入れテストと受け入れテスト駆動開発のためのオープンソーステスト自動化フレームワークです。 Robot Frameworkのテストケースは、表形式で記述されたキーワードに基づいているため、明確で読みやすくなり、テストケースの意図に関する正しい情報を伝えます。 たとえば、ブラウザを開く場合、使用されるキーワードは*「ブラウザを開く」*です。