0
  • 通过以下步骤运行 Cucumber 时能够调出页面:

    Given(/^i go to the login page$/) do
    visit "http://localhost:3000"
    end
    
    When(/^i enter a valid email and password$/) do
    fill_in('email', :with => 'customer@test.com')
    
  • 但是我不断收到以下错误:

     When i enter a valid email and password # 
    features/step_definitions/loggingin_valid.rb:5
    Unable to find field "email" (Capybara::ElementNotFound)
    ./features/step_definitions/loggingin_valid.rb:6:in `/^i enter a valid email and
    password$/'
    features/loggingin_valid.feature:5:in `When i enter a valid email and password'**
    

灰烬js:

6        form.form-inline submit="login"
7         h2 Log In
8          Ember.TextField valueBinding="email"
9          Ember.TextField type="password" valueBinding="password" 
11         input type="submit" value="Log In"  
13          linkTo "register" |Register Now

网页:

<form class="form-inline" data-ember-action="1">
<h2>Log In</h2>
<input id="ember440" class="ember-view ember-text-field" type="text">
<input id="ember441" class="ember-view ember-text-field" type="password">
<input type="submit" value="Log In">
<a id="ember444" class="ember-view" href="#/register">Register Now</a>
</form>

只是无法弄清楚我如何在电子邮件和密码字段中输入文本。它们是动态的,所以我不能使用 ID。认为可能有一种使用“类型”的方法,但也没有成功。任何指导将不胜感激。

4

1 回答 1

0

您可以为元素添加 ID。如果您不这样做,Ember 只会自动生成它们。

Ember.TextField valueBinding="email" id="email"
Ember.TextField type="password" valueBinding="password" id="password"
于 2013-09-21T05:43:03.030 回答