web-dev-qa-db-ja.com

Robot Frameworkのデータ駆動型テストにタグをどのように追加しますか?

Robot Frameworkのデータ駆動型テストにタグを追加しようとしています。テンプレート化されたテストのキーワードと次のようなデータのテーブルを作成しました。

# Test case file
*** settings ***
Resource       libraries.txt
Test Template  My Test Template

*** test cases ***       parameter1   parameter2  ER
testa                    value1a      value2a     ERa
testb                    value1b      value2b     ERb

# Template file
*** Keywords ***
My Test Template
  [Arguments]  ${parameter1}  ${parameter2}  ${ER}
  ${result}=  Do Something  ${parameter1}  ${parameter2}
  Should Be Equal As Strings  ${result}  ${ER}

Testaとtestbに(おそらく異なる)タグを追加するにはどうすればよいですか?


それはPEBKACであることがわかりました。 tagステートメントをインデントしていませんでした。それらの二重のスペースは私に(再び)私を入れました。

18

タグを追加する方法はいくつかあります。

テスト固有のものは次のようなものです:

*** Test cases ***
Test A
  [tags] tagA tagB
  Log  This is test A

設定にForce Tagsを配置することで、ファイル内のすべてのテストケースにタグを追加できます。

*** Settings ***
Force Tags  NewTag

詳細については、ユーザーガイドを確認してください: http://robotframework.org/robotframework/latest/RobotFrameworkUserGuide.html#tagging-test-cases

6
Bart Vanherck

タグは次のように追加できます:

*** test cases ***       parameter1   parameter2  ER
testa                    value1a      value2a     ERa
    [Tags]    tag1
testb                    value1b      value2b     ERb
    [Tags]    tag1
10
Dmitriy Zverev

1つの解決策は、タグを引数として受け取るようにキーワードを変更することです。それからあなたはこのようなことをすることができます:

*** Settings ***
| Test Template | My Test Template

*** test cases ***       
| testa | value1a  | value2a | ERa | tag1 | tag2
| testb | value1b  | value2b | ERb | tag2 | tag3

*** Keywords ***
| My Test Template
| | [Arguments] | ${value1} | ${value2} | ${er} | @{tags}
| | log | value1: ${value1}
| | log | value2: ${value2}
| | log | er: ${er}
| | Set tags | @{tags}

Testaを実行すると、タグtag1およびtag2、testbにはタグtag2およびtag3

7
Bryan Oakley