2014-11-05 61 views
2

使用BizTalk,我喜歡使用可調用業務流程(無管道)作爲其他業務流程的服務,從而爲架構提供更多的靈活性。但是對它們進行單元測試是相當迂迴的。現在,我使用一個獨立的應用程序,並在單元測試之前將其部署到BizTalk,並使用包裝流程(僅調用編排來測試)。單元測試可調用業務流程

有人有更好的方式來單元測試可調用的業務流程嗎?最好的是,我會有一個單元測試,我不需要任何額外的工件來部署。

在此先感謝。

回答

0

很難回答一個開放的問題NO,但我的答案是,這是不可能的。

業務流程實際上與BizTalk業務流程引擎緊密耦合。如果要單元測試編排,則需要模擬該編排引擎。這不是一件容易的事。那裏有很多你需要考慮的細節,比如脫水,序列化,範圍,來自你的編排的消息傳遞如何工作等等。

我會說你正在採取正確的步驟你的編排部分,而不是直接綁定在物理端口上。這使得測試變得可能/更容易。較少的連接也意味着更少的錯誤點。

我會盡量限制你所做的編排工作量。只有在沒有更好的(或至少更多可測試的)選擇時才使用編排。

如果您可以通過簡單地部署,丟棄消息和查看結果來快速測試自己的編排,而不需要花費太多精力,那麼您已經比完整的BizTalk開發人員套件做了更多的測試。如果你讓這個過程變得簡單,並且可以自動執行(部署,放置文件,檢查預期的輸出),那麼你至少可以更容易地發現迴歸。

目標是使測試變得如此簡單/便宜和可靠,以便測試比不測試更容易。這樣你會阻止經理說skip the tests, they take too long。你會希望他們問:can you test it first?