2013-08-01 64 views
0

首先:我不想做單元測試,而是要實現API測試。這些測試應在規定的順序來執行:支持測試類和測試方法排序的測試框架

  • 登錄
  • 得到的東西
  • 創造的東西
  • 註銷

我想獲得在Visual Studio這項工作,以及如SonarQube(Gallio是我使用的測試自動化平臺)。

我的問題是,只是爲了找到一個支持我的要求的框架。

我已經測試:

  • MSTest的 - >不支持在所有測試命令,除了實現一個不被任何加利奧測試亞軍插件支持的順序測試模板。
  • XUnit - >可以在測試類中實現測試方法的排序,但不能排序測試類。

是否有任何測試框架支持此要求,併爲Visual Studio提供運行器以及適用於Gallio的插件?

回答

1

MSTest的具有您可以用它來初始化每個測試TestInitialize屬性。在其中你可以把你的登錄。還有一個TestCleanup屬性。在那裏你可以把你的LogOut。 Get和Create必須位於一個方法內,以確保Get始終在Create之前發生。

我不熟悉SonarQube,所以不知道是否會處理這個問題。

+0

這還不夠。由於我想實施API測試,因此需要執行幾個步驟。登錄/註銷只是一個例子。我需要根據這些類中的測試類和測試進行排序。因此TestInitialize和TestCleanup並沒有真正的幫助。但謝謝你的回答。 – LaOsgaar

+0

我最終使用xUnit作爲框架,通過在測試夾具中實現排序的優先級屬性。所有真正必要的事情都是由我的基類的構造函數完成的(這相當於MSTest的TestInitialize)。 使用的xUnit的優點是所有測試(需要安裝的xUnit亞軍)可以在Visual Studio中執行(基於MSTest的這不能做,除了過濾測試,並與非常難看順序測試定義文件的工作)。 – LaOsgaar

0

您指定不支持這一點,因爲他們都是單元測試框架的人。單元測試應該是測試代碼的「單元」,因此獨立於其他測試。您正在尋找的是集成測試或驗收測試。

我還沒有真正完成整合/驗收測試,所以我不能建議你應該使用什麼,但你可以在google出現了一段。我知道了我的頭頂部的只有一個是StoryTeller

+0

是的,我知道我提到的框架是單元測試框架。因此我明白他們爲什麼像他們那樣行事。但是我想將API測試集成到Visual Studio中,並且可以通過SonarQube執行它們,並通過SonarQube分析結果。目前我沒有看到另一種選擇。 – LaOsgaar