2017-02-20 66 views
1

我試圖執行一個樣品PNunit測試發現,但它與下面的錯誤測試無法在裝配

The test xxx couldn't be found in the assembly xxx.dll 

我都跟着Pnunit文檔失敗了,但它沒有幫助。

Project Refs

下面是測試案例

using NUnit.Framework; 

namespace TestLibraries 
{ 
    [TestFixture] 
    public class PuniTest 
    { 
     [Test] 
     public void EqualTo19() 
     { 
      Assert.AreEqual(19, (15 + 4)); 
     } 
    } 
} 

和test.conf文件

<TestGroup> 
    <Variables> 
    <Variable name="$agent_host" value="localhost" /> 
    </Variables> 

    <ParallelTests> 
     <ParallelTest> 
     <Name>Testing</Name> 
     <Tests> 
      <TestConf> 
      <Name>Testing</Name> 
      <Assembly>pnunit35.dll</Assembly> 
      <TestToRun>TestLibraries.PuniTest.EqualTo19</TestToRun> 
      <Machine>$agent_host:8080</Machine> 
      </TestConf> 
     </Tests> 
     </ParallelTest> 
    </ParallelTests> 

</TestGroup> 

我編寫的代碼,複製 「pnunit35.dll」 和「測試.conf「文件改爲」NUnit.Runners.Net4.2.6.4 \ tools「運行測試的文件夾

並運行以下命令(在批處理文件)啓動代理並運行NUnit的測試運行文件夾

start pnunit-agent 8080 . 
pnunit-launcher test.conf 

腳本在運行批處理腳本,測試與以下錯誤

The test TestLibraries.PuniTest.EqualTo19 couldn't be found in the assembly pnunit35.dll 
失敗

可能身體有些請看這個?在此先感謝

+0

感謝您的快速響應,名稱是'EqualTo19',而不是'EqualTo20' – Guy

+0

。對不起,這是一個錯字。其他測試出現錯誤消息。實際的消息是「The Test TestLibraries.PuniTest。在程序集pnunit35.dll中找不到EqualTo19「 –

回答

0

有你在Visual Studio中缺少NUnit Test Adapter的機會。

+0

Hi @ dawid-dworak,剛剛嘗試添加Nunit測試適配器,我仍然看到相同的問題 –

+0

NUnit測試適配器根本沒有與此場景的任何關聯。 – Charlie

0

您可能會遇到處理器架構不匹配的情況。如果您的項目是64位,請轉至測試 - >測試設置 - >默認處理器架構 - > x64。

0

謝謝大家,

我終於找到了問題的根源,它是pNunit版本,它與NUnit的-3.6.0和Nunit.Runner-4.2.6.4我是用在我的項目不兼容。

當我搜索這個問題時,發現pNunit-2.6.4與最新的Nunit-3.6.0不兼容。所以,我將Nunit和NUnit.Runners改爲2.6.4。然後測試工作沒有任何問題。

更新: 使用.NET Framework 3.5的

UPDATE2: [.Net框架4.5] 如果你是在.Net框架4及以上的工作,開始PNunit代理中兼容模式。在文本編輯器

編輯「pnunit-agent.exe.config」文件,並添加以下代碼在「配置」

<startup> 
    <supportedRuntime version="v4.0.30319" /> 
</startup> 

關閉pnunit代理並重新運行,這將解決這一問題