Ich habe viele Tests mit verschiedenen Login-Daten auf Gurken/Capybara/site_prism, die ziemlich chaotisch sind. Ich möchte sie so weit wie möglich vereinen. Diese Lösung schien schön https://blog.jayway.com/2012/04/03/cucumber-data-driven-testing-tips/Speicher und Daten in Hashes mit Gurke Extrahieren/Capybara
aber zu sein, wenn das Beispiel folgende ich in diesem Lauf für die erste Zeile der Schrittdefinition
Your block takes 1 argument, but the Regexp matched 2 arguments.
Offenbar ich falsch verstehen, wie Hashes behandelt werden sollten; Könnte jemand bitte helfen? Mein Code mit weniger Testdaten unter Gurke
Given I login as "ad" with the following data:
|role|usern |userpass |
|ad |adcccount |adpassword |
|ml |mlaccount |mlpassword |
Schritt Definition
Given /^I login as "(ad|ml)" with the following data:/ do |user|
temp_hash = {}
if (user == "ad")
temp_hash = $ad
elsif (user == "ml")
temp_hash = $ml
end
usern = temp_hash["usern"]
userpass = temp_hash["userpass"]
@app = App.new
@app.login.load
@app.login.username.set usern
@app.login.password.set userpass
@app.login.btn_login.click
end