我正在寫一個使用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