我正在写一个使用SaS的Web应用程序。每个客户都有自己的db和app目录,因此我有一个rake任务,它创建所有运行其网站所需的最低数据(种子数据):默认权限和角色,superadmin用户,已填充的“us_states”表,一些本地软件仓库和终端(这是一个物流应用程序)。黄瓜测试中的种子数据
我没有对任何黄瓜情景和我刚开始建立了一些。我是一个黄瓜初学者。
我首先将这个种子数据任务放在一个给定的行中,但是这对于所有场景来说都是一个给定的情况,对于查看这些场景的非程序员来说没有多大意义(对于人类来说,它是这样的一个给定,它不需要有意识地表达)所以我把它移到了hooks.rb中。
我的第一个场景是这样的:
1 Feature: Place an order
2 In order to keep orders in the database
3 As a admin
4 I want to place orders
5
6 Scenario: Using common legs
7 Given I have 1 customers
8 And I'm on the homepage
9 And I follow "Place an Order"
10 When I select the customer
11 And I select the SSLine
12 And I click "Use Common Legs"
13 Then I should see "PICKUP AT"
14 And I should see "DELIVER TO" or "LOAD AT"
15 And I should see EMPTY RETURN
我hooks.rb看起来是这样的:
1 Before do
2 MinimumData.new('costi', '1234').populate #username and password
3 end
问题:
- 我不想运行此MinimumData。在每个场景之前填充任务,因为需要8秒。我应该在全球范围内运行一次吗?怎么样?
- 我是否必须使用After.do清理数据库?我真的不想这样做,因为我将仅在Model.delete_all语句中复制After.do中的逻辑。我注意到,我第一次运行后,测试数据库仍然有所有数据。我可以使用rake db:test:purge清除并重新初始化它。这是一个很好的做法吗?
“之前做”应该是软件写“之前做”,开始以大写字母 – 0x4a6f4672 2012-08-10 15:17:04