2010-02-27 30 views
1

我們有一個需要測試的工作流程。 所以有這麼多的分支機構(pathes)需要現在我們使用早該情境測試執行復雜分支測試的最簡潔方法是什麼?

這樣的測試 :

context "workflow one" do 
    setup do 
    #do something 
    end 

    context "branch 1 succuess" do 
    should "something" do 
    end 

    context "branch 2 succuess" do 
     should "something" do 
     end 

     context ... 
    end 
    end 

    context "branch 1 fail" do 
    should "something" do 
    end 

    context ... 
    end 
end 

你知道這將是非常混亂。你有很好的解決方案嗎?

回答

0

我通常會將它們分成「每個分支」的基礎。這假定當一個分支「失敗」時,它基本上只是結束了這個過程(並且你不能去其他分支)。 至少這樣你可以分組你的測試。 EG:

context "workflow one" do 
setup do 
    #do something 
end 

    context "Testing branch 1" do 
    context "branch 1 succuess" do 
     should "something" do 
     end 

    context "branch 1 fail" do 
     should "something" do 
     end 
    end 
    end 

    # assumes branch one is successful 
    context "Testing branch 2" do 
    setup do 
     do_branch_one_success 
    end 
    context "branch 2 succuess" do 
     should "something" do 
     end 

    context "branch 2 fail" do 
     should "something" do 
     end 
    end 
    end 
... 

end 
0

也許你可以簡單地構造你的代碼?

如果您考慮ActiveRecord中的驗證,很多不同的分支(無效輸入)會變成列表。然後每個驗證都可以單獨進行測試。

因此,就你而言,你能不能將你的工作流程變成要執行的動作列表?

Stephan

相關問題