爲了SpecFlow測試增加了一系列的WPF應用程序我目前正試圖以SpecFlow一個非常簡單的WPF測試應用程序在VS.NET 2012使用SpecFlow測試WPF應用程序
我結合遵循steps outlined in SpecFlow's getting-started,區別在於我有一個包含兩個項目(WPF與SpecFlow一起)的解決方案。
我有一個單一的場景和步驟的步驟定義。 不幸的是,在測試資源管理器中沒有列出測試並選擇「運行SpecFlow方案」(按照getting started中的步驟6)沒有任何反應。發現在VS.NET 2012上需要NUnit測試適配器後,我可以運行測試。不幸的是,我現在在難倒打開窗口下的測試:
namespace SpecOverflow
{
[Binding]
public class StepDefinitions
{
static private BackgroundWorker _bw = new BackgroundWorker();
private MainWindow win;
[BeforeScenario]
public void CreateWindow()
{
// Need to run this in a separate thread because we get "The calling thread must be STA, because many UI components require this." errors otherwise
_bw.DoWork += (_,__) => { win = new MainWindow(); };
_bw.RunWorkerAsync();
while (_bw.IsBusy)
;
}
...
}
}
然而,這似乎並沒有創建一個窗口(我得到了使用它的第一生成步驟一個NullReferenceException)。我應該補充說,我已經有了超過0 VS.NET的經驗,但只有幾乎(可能 在兩年內少於100小時,大多數C#經驗,我已經與莫諾)。我試圖做這個項目,因爲我現在有一些時間,一位同事問我。