2013-02-03 65 views

回答

0

水豚用于通过实际渲染页面来测试Web应用程序的整体功能。当你使用一个可以执行Javascript的引擎时(默认的Rack :: Test引擎不会),你可以用它来检查你的页面在执行相关的Javascript后是否确实被正确渲染。有几种方法可以通过调用page.execute_script("typeof yourFunctionName == 'function'")(并且只有选择引擎支持此功能)来测试函数的存在并检查它的值,但知道Capybara并不是用来构建Javascript测试框架的。你应该使用Jasmine。

+0

但如何测试不同控制器的不同动作js funxtions?这是否像在capybsra访问? – simo

+0

水豚没有任何控制器或行动的概念。它只是一个可以访问网页并呈现它们的工具。 (如果它也可以执行javascript,如果它支持)。想像您的浏览器中的水豚,您的浏览器不关心Rails后端中的控制器/操作,它只是知道HTTP请求和HTTP响应,并根据响应呈现网页。 –

+0

我可以在动作级别使用茉莉花吗?如何将其用于特定的控制器和操作? – simo