Capybara + RSpec:它可以用于任何网络应用程序吗?

时间:2011-06-19 12:20:03

标签: ruby selenium capybara black-box-testing

我在http://railscasts.com/episodes/257-request-specs-and-capybara看到了railscast,它描述了如何在Rails应用程序中使用带有RSpec的Capybara。

是否可以使用Capybara / Selenium来测试您无法访问代码的Web应用程序,或者它不是Ruby / Rack应用程序。另一方面,是否可以使用Capybara / Selenium对Web应用进行黑盒测试?如果是这样,怎么样?

我问,因为所有代码示例都暗示存在Ruby或Rails代码库。

3 个答案:

答案 0 :(得分:0)

我认为没有任何理由不可能。假设您的Web应用程序可以通过HTTP访问,那么您应该没问题(显然这很可能是真的)。​​

所有RSpec请求规范基本上都是黑盒测试。这就是Request Specs的要点 - 您希望模拟真实用户并锻炼整个应用程序堆栈 - 从HTML视图开始直至数据库访问。黄瓜特征也是如此。

编写规范可能不太舒服,因为您不能依赖Web应用程序来遵守Rails约定。

无论如何......我希望这有帮助。

答案 1 :(得分:0)

事实上,最常见的初步测试是自动化www.google.com。事实证明这是一次糟糕的第一次尝试(现代谷歌非常AJAXy和微妙),但这是每个人首先想到的。快速跟随GMail,甚至更多。 : - )

答案 2 :(得分:0)

是。 你只需要使用"访问"函数直接转到您要测试的URL。

visit 'http://www.gmail.com'

然后,您可以使用capybara函数找到任何HTML元素

find("input#Email").set("superman")
all("input#Email")[0].set("superman")