2011-06-15 59 views
0

最近,我一直在使用Selenium來記錄一些簡單的測試。儘管硒測試最初存儲爲html文件,但該程序允許您以各種語言(在這種情況下,我使用C#)導出測試用例。NUnit運行時加載程序集問題(FileNotFoundException)

我下載了NUnit作爲我的測試框架 - 然後我可以將一個特定的導出C#文件作爲一個項目加載到NUnit中。

我還創建了一個簡單的網絡應用程序,我可以點擊一個按鈕來啓動NUnit並運行一些測試。問題是,我不斷收到此錯誤消息:

System.IO.FileNotFoundException:找不到文件或程序集名稱nunit.core或其某個依賴項。

一旦我退出此彈出窗口,NUnit會根據需要打開,但是,測試不會加載。 Web應用程序背後的源代碼如下所示:

public void ButtonClick1(object sender, System.EventArgs e) 
{ 
    ProcessStartInfo proc1 = new ProcessStartInfo("C:\\selenium-remote-control 
1.0.3\\selenium-dotnet-client-driver-1.0.1\\source\\tools\\nunit\\nunit-gui", "TestProject14.dll"); 

    System.Diagnostics.Process.Start(proc1); 
} 

基本上我只是想創建一個新的過程,啓動NUnit的GUI和運行測試。我不確定它是否找不到.dll或者是否有其他問題。

任何幫助將不勝感激 - 這是我的第一篇文章,所以如果我錯過了一些完全明顯的東西,我提前道歉。謝謝!

回答

0

您需要將進程的WorkingDirectory設置爲NUnit目錄。如果你不這樣做,工作目錄將是應用程序執行的目錄。

我建議建立一個ProcessInfo對象,包含該過程的所有細節並將其傳遞給Process構造函數。

+0

我試過了,並且我收到一條新的錯誤消息,指出該文件不存在。我下載了一個更新版本的nunit,並再次完成了這個過程。 gui打開並嘗試運行測試,但由於某種原因,遠程控制窗口無法啓動。所以我不知道現在的問題是什麼...... – erinpzk 2011-06-20 19:55:51

1

你有

using nunit.framework; 

在你的代碼的頂部?

其次,你是否在你的參考列表中包含了對nunit.core dll的實際引用?如果沒有,請右鍵單擊「參考」並單擊添加參考。找到nunit.core.dll並附加它

+0

是的,我在我的代碼的頂部包括'使用nunit.framework'。我還添加了對nunit.core dll的引用 - 這對我來說似乎很奇怪。如果添加了引用,爲什麼nunit無法找到它?還有其他地方我需要存儲該DLL以及? – erinpzk 2011-06-16 12:40:46

+0

我有一個問題,我在某個地方引用了一個.dll文件夾以外的地方。這是通過實際將dll複製到項目的依賴關係文件夾來解決的。看看是否改變任何東西 – Alan 2011-06-17 18:10:55

+0

我沒有看到我的項目文件夾中任何地方的依賴關係文件夾。 Bin,Obj和Properties是列出的唯一文件夾。我正在使用Visual Studio 2010。我試圖在各種地方存儲.dll(bin顯然是其中之一),但我仍然遇到錯誤。有沒有其他地方可以考慮放置.dll? – erinpzk 2011-06-20 13:02:35

相關問題