黄瓜测试和验证码:如何处理?

时间:2009-12-21 18:08:38

标签: ruby cucumber captcha

我们正在考虑使用Cucumber来测试Web应用程序(不是在rails中,大多数都是asp.net)。

应用程序正在生产中,我们的主要目标是测试服务是否一切正常,不时人们会运行它。

我们有两个问题:

1)这对黄瓜很好用吗?社区人员是否鼓励使用黄瓜特征定义?

2)我们的应用程序中有一些验证码。这个常见问题是否有广泛采用的解决方案?

3 个答案:

答案 0 :(得分:1)

黄瓜看起来相对较新。我是一个Java人,并使用过Selenium,HtmlUnit,JWebUnit等.Selenium运行.net,ruby,java和其他一些脚本语言。

Selenium已经存在了一段时间(2004年,而Cucumber相对较新,2007年)。

Selenium有一个IDE,因此您可以轻松地在Firefox中记录测试,保存它们,然后在集成测试中运行它们。

我偏向于Selenium,但它做得很好并允许您在多个浏览器(firefox,safari,IE)中测试您的应用程序。它还支持跨多个服务器分发测试(如果您的环境很大,它支持它)。

理想情况下,您可以让开发人员或基础架构人员编写测试。然后,如果您有CI服务器,您可以自动运行您已记录/写入的测试,然后不断检查您的应用程序是否仍然可以作为一个整体。这对于在错误发生时立即发现错误非常有用,因此如果开发人员进行了更改并打破了他的范围之外的某些内容,那么它就会很新鲜。

就CAPTCHA而言,那里有各种各样的图书馆。遗憾的是,我更熟悉Java等价物,而不是.Net。不要自己编写,应该有一个可以使用的库。

沃尔特

答案 1 :(得分:1)

ad 1.在我看来,黄瓜很棒,我们也能说服我们的客户真正理解并验证我们用黄瓜写的测试。我们使用黄瓜+ watir进行网络测试

ad 2.就验证码而言,您是指如何忽略验证码进行测试?我们没有为我们自己的IP地址显示验证码,如果请求来自您的开发或测试环境,您也可以始终接受验证码的特定值

答案 2 :(得分:0)

我可以推荐黄瓜。我训练了一个开发人员和经理团队在我的上一个项目(PHP应用程序)上使用它。在大多数情况下,它运作良好。

我认为你的两个问题是相互排斥的。 Captcha旨在防止某些事情自动化,因此您将不得不解决您使用的自动化测试运行器的问题。你可以模拟一些东西,或者在你的测试环境中弄清楚如何禁用它。我会选择后者。我认为在您的测试套件中覆盖验证码并不重要。