我正在尝试使用 Cucumber、capybara、capybara-webkit、selenium-webdriver、rspec 和 jasmine 测试在 Rails 3.2.8 之上运行的 Backbone 应用程序。我使用 eco 作为主干模板的模板引擎。
我的问题是当我使用 @javascript 标签运行场景时,无论是使用 capybara-webkit 还是 selenium,显示的页面都不包含所有模型属性数据。
这是场景:
@javascript
Scenario : first scenario
Given There is Model with "name" as name and "What is it about ?" as associated questions
When I want to fill the questionnaire
Then I should be on the SPA form
And I should see "name"
And I should see "What is it about?"
场景在“我应该看到'它是关于什么的?'”步骤中失败,页面没有显示问题,但它显示了“名称”我在我的主干代码中使用 console.log 和我可以看到模型的所有属性都是正确的。此外,它可以在没有问题的情况下正常工作
模板如下所示:'show.jst.eco'
<p class="text-info"><%= @model.name %></p>
<form id="quidget-form" class="form-vertical">
<% for question in @model.questions: %>
<div class="issue_field">
<label class="string optional control-label"><%= question.question.question_text %></label>
<div class="control-group text">
<textarea class="text answer" name="question-<%= question.question.id %>" id="question_<%= question.question.id %>" data-question="<%= question.question.question_text %>" rows="3">
</textarea>
</div>
</div>
<% end %>
<div class="controls">
<input type="submit" value="Additional Informations" id="quidget-step-one" class="btn btn-success">
显示文本区域,但不显示上面带有问题文本的标签
任何想法 ?我想看到这个通过,所以我可以用更多的步骤测试更复杂的逻辑。
谢谢