2010-02-27 4 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

아마 당신은 단순히 다른 코드를 구성 할 수 있습니다?

당신은 액티브의 검증, 다른 지점 (잘못된 입력) 많은리스트로 설정되어 생각합니다. 그런 다음 각 유효성 검사를 격리하여 테스트 할 수 있습니다.

따라서, 귀하의 경우, 당신은 작업 목록에 워크 플로우를 켤 수 없습니다가 수행 될 ??

스테판

관련 문제