Coffeescript 使用zombie.js测试模态对话框
我在模式对话框中有一些输入字段,如下所示(这是jade): 我希望能够在测试中填写这些表格。我尝试按下打开模式的链接,并使用zombie.js浏览器对象填充字段,咖啡中的代码如下:Coffeescript 使用zombie.js测试模态对话框,coffeescript,pug,zombie.js,Coffeescript,Pug,Zombie.js,我在模式对话框中有一些输入字段,如下所示(这是jade): 我希望能够在测试中填写这些表格。我尝试按下打开模式的链接,并使用zombie.js浏览器对象填充字段,咖啡中的代码如下: browser.clickLink 'a#open-planner', () -> browser .fill('event-planner-email', someEmail)
browser.clickLink 'a#open-planner', () ->
browser
.fill('event-planner-email', someEmail)
.fill('event-planner-name', someName)
.pressButton 'Create', () ->
do done
但我得到一个错误,说:“没有与‘活动策划人电子邮件’匹配的输入”。如果有人知道如何做到这一点,我们将不胜感激。谢谢 当您的回拨启动时,可能还没有看到模式。如果出现显示模态的转换,则必须等待该转换完成 也许可以尝试在您的
点击链接的回拨中添加设置超时:
browser.clickLink 'a#open-planner', ->
fillForm = ->
browser
.fill('event-planner-email', someEmail)
.fill('event-planner-name', someName)
.pressButton 'Create', ->
do done
setTimeout fillForm, 1000
从
你需要在模式加载后运行你的僵尸代码,所以你应该使用“显示”事件
我不知道如何在咖啡中表达这一点谢谢大家,我只是没有为输入元素使用正确的css选择器,所以
.fill('event-planner-email', someEmail)
应该是
.fill('input#event-planner-email', someEmail)
因为在上面的jade代码片段中,“event planner email”是输入元素的id。我想删除我的问题,这样我就不会再暴露我的愚蠢了,但显然为时已晚
.fill('event-planner-email', someEmail)
.fill('input#event-planner-email', someEmail)