2016-01-21 82 views
0

功能測試這裏是我的項目體系結構組件:與服務API層和CRM

  • 前端(Drupal的CRM)
  • 的Symfony 2個服務(API層)
  • CRM(外部服務來存儲用戶)

我想設置功能測試與codeception測試訂閱我的應用程序的一部分。 現在,這裏是爲訂閱的過程:向服務於前端

1 /顯示形式

2 /當表單提交數據是交

3 /服務建立Connexion公司與CRM並返回一個Json響應到前端。

4 /前端重定向並顯示成功消息(或錯誤)。

我需要清理我的數據之前運行我的測試(測試是得到/訂閱,填寫表格,提交和測試響應)。事實上,如果一個用戶存在於CRM中,我需要刪除它,如果我想測試一個成功案例。 在我的情況下,我沒有辦法在運行我的測試之前刪除特定的用戶(API中沒有路由來刪除用戶)。

我該如何做到這一點?我不應該有一個分離的數據庫來測試這種情況。

回答

0

您需要在功能文件中編寫背景以刪除每種場景的數據。我很快訪問了代碼,它是BDD測試框架。

Feature: Test Subscription 
    As a system admin 
    I want to test subscription system of "APPLICATION NAME" 


    Background: 
    Given delete all test data from system 
    And test data is delete successfully 

Scenario: Create User in CRM 
    Given I am logged in as system admin 
    When I try to click to new customer 
    And Enter ... 
    And Enter...... 
    When I click on customer list 
    Then I should see created customer in list 

背景將每個場景後運行,併爲你做的工作。

+0

謝謝,但我的問題不是真的關於在框架中的實現。這對我的環境來說更多的是一個建築問題。我會編輯我的問題。 –

+0

如果您正在嘗試在後端執行某些操作並使用BDD,則會將團隊成員混淆刪除數據。使用背景大家都知道你正在刪除。 –