2012-02-16 96 views
2

我已經在VS2010中安裝了NUnit 2.5.10和Specflow 1.8.1。如何使用NUnit調試VS2010中的Specflow場景?

右鍵單擊VS中的.feature文件,在上下文菜單中有一個項目「Debug Specflow Scenarios」。但我總是得到「找不到匹配的測試跑步者」。在工具/選項/ Specflow中,NUnit沒有測試運行器選項。

我錯過了什麼嗎?

在此先感謝。 :)

回答

0

我不知道NUnit是否有一個單獨的GUI運行測試,因爲我使用MSTests,但這應該是你如何做到這一點。

  1. 在您的測試項目中設置一個配置文件來告訴Specflow什麼測試框架使用。 https://github.com/techtalk/SpecFlow/wiki/Configuration
  2. 工具>選項> Specflow> Test Runner工具是執行測試的工具。這裏沒有任何東西顯示這個事實,似乎沒有安裝測試運行器。例如,我有幾個MSTest,Resharper,SpecRun,我通常會把它放在Auto上,然後從我想要使用的測試工具中運行測試。我跑了,這些雖然這應該添加任何VS擴展

你可以嘗試使用VS亞軍,測試> Windows>系統測試視圖

VS將只把一個Specflow測試作爲NUnit的爲生成的代碼安裝後面只是一個NUnit測試(當以這種方式配置時)。所以我認爲真正的問題是如何在Visual Studio中調試NUnit測試。快速搜索建議將調試器附加到NUnit測試運行器進程。

0

和瑞恩一樣,我也沒有專門針對Nunit的測試賽跑者。然而,因爲我也運行resharper我得到額外的resharper跑步者,這就是Auto用它來運行它。

實際上你的機器上安裝了nUnit嗎?在這種情況下,您可以測試沒有VS和Specflow-addin的過程是如何成功的。如果沒有,安裝好可能會給你你需要的跑步者。

或者,我使用nCrunch來自動運行我所有的測試。在過去的幾個月中,我已經在多個解決方案上運行nunit/specflow,沒有任何問題。那麼不需要右鍵單擊。 :-)

+0

我也用NCrunch但僅用於單元測試調試測試。使用NCrunch來運行SpecFlow測試聽起來不錯。 NCrunch如何與Specflow測試一起使用?這聽起來不錯,但是在啓動多個瀏覽器實例時遇到問題嗎?我們也有大量的specflow測試需要大約40分鐘(!)來運行,所以我想知道使用NCrunch來運行它們會不會使你的開發箱變得不穩定? – 2014-01-26 00:19:11

+1

當我最初寫這篇文章的時候,我的回答應該是完美的。然而,從那時起,我的日常工作就是研究一個非常不同的代碼庫,用大量的迴歸測試來測試UI。這些需要相當長的時間,必須一次運行一次,並在整個地方彈出窗口。總之,你真的不希望它們在你的機器上自動運行。即使運行ncrunch,所以它只運行受影響的測試仍然很痛苦。所以現在我不得不說,根據您的解決方案,您可能需要選擇忽略哪些測試。 – AlSki 2014-01-26 09:47:55

+0

爲快速回復而歡呼。大量SpecFlow測試快速運行是一個棘手的問題。我們考慮與PhantomJS一起運行並行SpecFlow測試,但在我們的測試中,PhantomJS實際上比使用Firefox並使用Javascript(!)與其交互更慢。我還沒有看到SpecRun是否可以提供幫助,但我預計它會和NCrunch有相同的限制。 – 2014-01-26 22:25:45

0

SpecFlow本身並沒有提供測試運行器,如果你想右鍵單擊.feature並運行它,你必須重新配置SpecFlow來使用MSTest,它應該使用內置的VS亞軍。

如果你想使用NUnit,那麼需要額外的工具。我會推薦Resharper,但它不是免費的。看看這個article更多的選擇來運行VS的NUnit測試。

0

美好的一天。爲了調試我做到以下幾點:

  1. 放在場景行,你有興趣在
  2. 一個破發點請確保您有NUnit的運行
  3. 安裝NUnit的過程
    • 轉到工具
    • 選擇附加過程
    • 在可用進程選擇NUnit的agent.exe
    • 單擊附加
  4. 運行要在NUnit的

希望幫助