【问题标题】:cucumber-nagios / webrat submits empty formscucumber-nagios / webrat 提交空表单
【发布时间】:2011-05-12 23:12:21
【问题描述】:

我是 ruby​​ 的新手,开始使用 cucumber-nagios 进行一些 BDD 测试。

我已经按照此处的说明在我的 Mac Pro 上安装了 cucumber-nagios:

http://auxesis.github.com/cucumber-nagios/

我的 Mac 运行的是 Snow Leapord 10.6.6 并安装了 ruby​​ 1.8.7。

我创建了一些简单的功能来实现表单提交的机械化。但是,每当我提交表单时,请尽可能尝试表单字段的值不会随请求一起传递。不返回任何错误(除了为处理预期响应页面的最后一步报告的错误)。

考虑到表格可能过于复杂,我在 w3 网站上使用了一个非常简单的表格作为最简单的测试用例。

http://www.w3schools.com/html/html_forms.asp

要提交的表单是这样的:

用户名:

这些是我的功能步骤:

When I go to "http://www.w3schools.com/html/html_forms.asp"

And I fill in "user" with "Chinese"

And I press "Submit"

Then I should see "user=Chinese"

表格的填写是使用 http_steps.rb 中 cucumber-nagios 提供的标准步骤代码完成的 =>

When /^I fill in "(.*) with "(.*)"$/ do | field, value|
    fill_in(field, :with => value)
end

运行时

cucumber-nagios features/form.feature

除了最后一步之外,所有步骤都通过了,HTML 响应表明我没有在表单中提交任何数据。

我打开了 webrat 日志记录,但这并没有提供任何有用的信息。

正如我所说,我在其他网站和表单上尝试过类似的代码,结果完全相同。

我唯一能想到的是,我错过了整个 cucumber-nagios 设置的一些重要部分。例如,我是否需要像使用 Rails 应用程序一样创建和配置数据库?原谅我的无知。

【问题讨论】:

  • 您是否尝试过仅使用 cucumber 而不是 cucumber-nagios 运行它?
  • 感谢您的回复。确实我有,而且结果完全一样。这个问题可能是由于与 libxml 不兼容造成的吗?

标签: cucumber webrat


【解决方案1】:

我遇到了同样的问题,我们追踪到 webrat 没有正确发布表单。

虽然这不是一个优雅的解决方案,但我们发现告诉 webrat 它处于 Rails 模式可以解决问题。

将以下代码添加到您的 features/support/env.rb 文件中,该文件由 cucumber-nagios 在您创建新项目时生成。

Webrat.configure do |config|
 config.mode = :rails
 config.open_error_files = false
end

我写了一篇名为Checking form Submissions with Cucumber-Nagios 的博客文章,其中更详细地解释了答案。

【讨论】:

  • 顺便说一下,我测试了这个确切的例子(使用 W3Schools),它按预期工作。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2010-11-25
  • 1970-01-01
  • 2010-11-19
  • 2016-07-24
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多