2017-06-23 12 views
2

Robotを使用してログイン資格情報のリストを取得し、リストを繰り返してページにログインし、そのユーザーにページが表示されることを証明します。Robot Frameworkを使用して同じファイル内の複数のユーザーログインをテストする

私が見つけたことから、テンプレートを使用する必要がありますが、同じロボットファイルで使用したいすべての値を持っているときに、どのように実装するのかは非常にはっきりしていません。

私は、彼らが持っている。この例に基づいてhttps://github.com/robotframework/QuickStartGuide/blob/master/QuickStart.rsthttp://robotframework.org/robotframework/latest/RobotFrameworkUserGuide.html#data-driven-style

を使用してきた:

Templated test case 
    [Template] Example keyword 
    first argument second argument 

彼らは明示的データは、テストを実行するように設定された場合の例を示していません。ここで

は、私がこれまで持っているものです。

*** Settings *** 
Documentation Test Access Levels of the new Page 
Library Selenium2Library 
Test Template Security Login Test 

*** Test Cases *** 

All Users Login Test 
    Security Login Test Login Test 
    User1 Pass1 
    User2 Pass2 
    User3 Pass3  

*** Keywords *** 
Enter User Name 
    input text working_username_field need_to_put_username_here 
Enter Password 
    input text working_password_field need_corresponding_password_here 
Click Login 
    click element working_login_button 
Enter Store Number 
    input text working_store_field working_store_number 
Click Search 
    click element working_search_button 
Login Test 
     open browser working_url Chrome 
     enter user name 
     enter password 
     click login 
     enter store number 
     click search 
     go to working_sub_url 

私にはわからない何それは上の各通過しますので、私はその後、私のキーワードにそれらのパラメータを置く方法です。

私はこれにファイルを使用することができますが、それはやや複雑に思えるので、まずこの方法を理解したいと思います。

ご協力いただきありがとうございます!

答えて

2

スイートレベルのテンプレートを使用する場合、各テストケースは通常は1行です。最初の列はテストケース名で、追加の列はテンプレートキーワードの引数です。例えば

*** Settings *** 
Test Template Security Login Test 

*** Test Cases *** 
# test case name # username     # password  
Normal user  [email protected]  test123 
Admin user  [email protected] abc123 
Banned user  [email protected] knockknock 

*** Keywords *** 
Security Login Test 
    [Arguments] ${username} ${password} 

    Enter username ${username} 
    Enter Password ${password} 

    The rest of your code here... 

Enter username 
    [Arguments] ${username} 
    log entering username '${username} 

Enter password 
    [Arguments] ${password} 
    log entering password '${password}' 

The rest of your code here... 
    log another keyword 
+0

本当にありがとうございました!それは 'セキュリティのログインテスト [引数] $ {username} $ {パスワード} '私が得なかった部分です。あなたのテストケースのセクションでは、テンプレートを呼び出さないことに気付きました。これは、テンプレートの設定がSecurity Login Testというキーワードであるためですか? –

+0

@ScottMacDonald:はい。テンプレートは設定内にあるため、テストでテンプレートを直接呼び出す必要はありません。 –

+0

ユーザー名を入力すると1つの引数が必要で、0が返ってくるというメッセージが表示されます。現在のバージョンは次のとおりです。http://www.chopapp.com/#90u0l0ln –

関連する問題