黄瓜testing通过没有function存在

我已经开始为Cucumber创build一个Meteor应用程序的testing套件( http://joshowens.me/cucumber-js-and-meteor-the-why-and-how-of-it/ )。 一些testing通过时没有任何function。

例如,testing文件login.feature包含Feature: Allow users to loginScenario: A user can login with valid information When I click on sign in link

它在文件loginSteps.js被支持:

 this.When(/^I click on sign in link$/, function (callback) { helper.world.browser. waitForExist('.at-signup', 7000). waitForVisible('.at-signup'). click('.at-signup'). call(callback); }); 

loginbutton实际上有class="btn btn-default navbar-btn" ,但Velocity说testing通过了858ms。 另一个testing通过url(helper.world.cucumber.mirror.rootUrl + "event/1")虽然没有这样的url。

其他testing失败,但是,如:

 getText('.user-menu .dropdown-top-level', function (err, username) { assert.equal(username[0], 'userme'); }). 

错误:

 Then I should be logged in Fail TypeError: Cannot read property '0' of undefined 

有任何想法吗?

尝试在你的getText语句中做一个console.log(err)。 我的猜测是,当你运行它时,你没有find匹配。

尝试这样的事情:

 getText('.user-menu .dropdown-top-level', function (err, username) { if (err) { callback.fail(err.message); } assert.equal(username[0], 'userme'); }).