.. _test case: .. _test cases: .. _Creating test cases: テストケースの作成 =================== この節では、テストケースの書き方を説明します。 :ref:`テストケースファイル ` と :ref:`テストケースディレクトリ` を使った :ref:`テストスイート ` の作り方は、この節の次の節で説明します。 .. contents:: :depth: 2 :local: .. Test case syntax: テストケースの構文 -------------------- .. Basic syntax: 基本の構文 ~~~~~~~~~~~~ テストケースは、キーワードを組み合わせたテーブル(表)として作成します。 ここでいう「テーブル」とは、「テキストをスペースやタブ、パイプ (``|``) で区切って、行と列の構造にしたもの」です。 区切られた各列を「カラム」と呼び、行の頭から区切りごとに 1 カラム目、2カラム目、...と数えていきます。 :: *** Test Cases *** # ヘッダ テストケース名1 キーワード1 引数1 引数2 ... キーワード2 引数1 ... ... テストケース名2 ... 「キーワード」は、テスト中のひとつひとつの操作の命令で、 :ref:`テストライブラリ ` や :ref:`リソースファイル ` からインポートしたり、テストケースファイル中の :ref:`キーワードテーブル ` で作成したりできます。 テストケーステーブルの最初のカラムにはテストケース名を入れます。 この行から、次のテストケース名の行の前まで、もしくは、テストケーステーブルの末尾に到達するまでが、ひとつのテストケースです。 テストケーステーブルの冒頭には ``*** test cases ***`` のようなヘッダが必要です。ヘッダから最初のテストケースまでの間にテストケース以外の内容を記述すると、エラーになります。 .. note:: スペースやタブで区切る書き方のテストケースの場合、テーブルの「最初のカラム」は行頭、「2番めのカラム」は、行頭から 2 文字以上のスペース、またはタブを入れた後の文字列になります。そのため、テストケース名以外の行は、字下げしているように見えます:: Test Case Name Keyword Arg1 Arg2... このテストを表にすると、以下のようになります:: +----------------+---------+------+----------+ | Test Case Name | | | | +----------------+---------+------+----------+ | | Keyword | Arg1 | Arg2 ... | +----------------+---------+------+----------+ テストケースの2列目は、たいていはキーワード名が入っています。 例外は、2行目で :ref:`キーワードの戻り値を変数に代入 ` しているような場合で、その場合は二つめのカラムに変数名が入り、その後にキーワードが続きます。 どちらの場合も、キーワード名の後には、キーワードの引数などを表すカラムが入ることがあります。 .. _example-tests: .. sourcecode:: robotframework *** Test Cases *** Valid Login Open Login Page Input Username demo Input Password mode Submit Credentials Welcome Page Should Be Open Setting Variables Do Something first argument second argument ${value} = Get Some Value Should Be Equal ${value} Expected value .. Settings in the Test Case table: テストケースに設定を書く ~~~~~~~~~~~~~~~~~~~~~~~~~~ テストケースには、ケースごとの設定(テスト設定)を持たせられます。 テスト設定名は必ず2カラム目に書き、その後に設定の値を続けます。 テスト設定名は、キーワードと区別するために角括弧 (``[ ]``) で囲います。 使える設定名を以下に示します。これらは、このセクションの後でも説明します。 :setting:`[Documentation]` テストケースの :ref:`ドキュメント ` を書くときに使います。 :setting:`[Tags]` テストケースを :ref:`タグ付け ` するときに使います。 :setting:`[Setup]`, :setting:`[Teardown]` テストケースごとに :ref:`セットアップやティアダウン ` を指定するときに使います。 :setting:`[Template]` テストの :ref:`テンプレートキーワード