所以我正在编写我的应用程序,使用Rails,Cucumber,RSpec进行功能优先的BDD。
我的客户要求在填写字段时计算总数。
我的问题是,这不是一个真正的功能,更多的是规范。这与创建发票的功能有关,但我认为这不符合整个集成测试的合理性。
这只是javascript正在运行。
所以我的想法是告诉我在视图规范中为此编写规范。它是否正确?是否可以在rspec中测试这些javascript案例?
或者我应该进一步分离这个并直接进行javascript测试框架?
答案 0 :(得分:5)
我真的建议您从计划添加到应用程序的每个功能开始集成测试,它们是一个非常宝贵的工具,用于了解您尝试解决的问题以及与客户沟通软件的新增功能。
要在您的网页上测试JavaScript,您可能需要查看Selenium,从内存中可以使用Selenium作为替换Rack::Test
时使用Capybara测试网页。
就Cucumber而言,我建议制作一个新的功能文件来创建发票,并设置一个场景,测试在字段中输入某个字符串时是否计算出正确的总计。类似的东西:
Scenario: Filling out the form
Given I am looking at the invoice form
When I fill in the fields with <value1> and <value2> without submitting
Then I should see <total> on the page
显然我对你的表格知之甚少,不知道哪些字段需要填写,但这是我如何测试它的大致轮廓。我还会在视图规范中进行测试,以确保在表单中有一个计算总值的部分。
之后,我会在Jasmine中编写Javascript的规范并实现代码来计算和显示总数。
答案 1 :(得分:0)
如果您只是想测试JavaScript代码,我建议Jasmine。