Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/cocoa/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# MyProject.dll中没有可用的测试,但测试资源管理器会显示它们_C#_Wpf_Nunit - Fatal编程技术网

C# MyProject.dll中没有可用的测试,但测试资源管理器会显示它们

C# MyProject.dll中没有可用的测试,但测试资源管理器会显示它们,c#,wpf,nunit,C#,Wpf,Nunit,我无法在我的项目中运行单元测试,因为大约4天前,我已经尝试了SO中存在的许多解决方案,但没有任何帮助 路径\To\My\TestProject.dll中没有可用的测试。确保 测试发现者和执行者已注册,平台和框架 版本设置正确,请重试 测试资源管理器显示我的测试,但无法运行它们 顺便说一句,这些是WPF C项目 我有测试类,测试方法如下: [TestFixture] [Category("Something")] public class SomeTestClass

我无法在我的项目中运行单元测试,因为大约4天前,我已经尝试了SO中存在的许多解决方案,但没有任何帮助

路径\To\My\TestProject.dll中没有可用的测试。确保 测试发现者和执行者已注册,平台和框架 版本设置正确,请重试

测试资源管理器显示我的测试,但无法运行它们

顺便说一句,这些是WPF C项目

我有测试类,测试方法如下:

    [TestFixture]
    [Category("Something")]
    public class SomeTestClass
    {
        [Test]
        public void SomeMethodThatDoesntWork()
        {
            using (var ms = new MemoryStream())
            {
                System.Diagnostics.Debugger.Launch();
                Option savedOptions = new ....
...
  • 我的解决方案中有3个项目,每个项目的目标框架是.NET 4.5.2,每个项目的平台目标是x64

  • NuGet软件包:NUnit 2.6.4和NUnit3TestAdapter 3.12.0

NUnit 2.6.4因为我有一些属性,比如ExpectedExceptionAttribute,这些属性在较新的NUnit版本中已经被删除

我已经将Test\Test Settings\Default Processor Achitecture设置为x64,还尝试了x86

测试控制台输出:

测试颜色:

你可以试试,我可以解决你的问题

此外,在最新版本的NUnit中,您可以将ExpectedExceptionAttribute属性更改为(或注释中的其他示例),或仅使用以下断言:

Assert.Throws<Exception>(() => 
{
    // Test Code
});
Assert.Throws(()=>
{
//测试代码
});

在大约两天内终于解决了我的问题

有些DLL依赖项是那些Visual Studio无法注意到的,并且没有向我显示任何警告或错误。 帮助我找到DLL的依赖项


那么我又学到了什么?Visual Studio可能有问题,有时也不是很聪明。

解决问题的方法是:

  • 转到并选择->测试选项卡->测试设置->默认处理器体系结构->x64**

运行测试。

您正在使用Resharper吗?如果是,哪个版本?我不使用Resharper。我猜您使用的是另一个版本的VS,请检查您是否在IDE中安装了NUnit VSAdapter。我也遇到过类似的问题,他帮助了我。