标签: vs-unit-testing-framework

正确的方法来单元测试对象的类型

使用Visual Studio单元测试框架,我正在考虑两个选项:

Assert.AreEqual(myObject.GetType(), typeof(MyObject));
Run Code Online (Sandbox Code Playgroud)

Assert.IsInstanceOfType(myObject, typeof(MyObject));
Run Code Online (Sandbox Code Playgroud)

这两个选项之间有区别吗?一个比另一个更"正确"吗?

这样做的标准方法是什么?

.net c# vs-unit-testing-framework

15
推荐指数
4
解决办法
2万
查看次数

单元测试 - 扩展Visual Studio单元测试类型 - 不工作

我们被要求从NUnit迁移到MSTest,现在必须将所有现有测试转换为新平台.大多数转换得很好但我们有参数化测试的问题.我们发现以下网站显示了如何编写扩展并下载了代码.

http://blogs.msdn.com/b/vstsqualitytools/archive/2009/09/04/extending-the-visual-studio-unit-test-type-part-2.aspx

但是,虽然它编译得很好,但RowTestClass测试都无法运行,并显示以下错误消息:

"无法初始化单元测试扩展'urn:RunAsTestClassAttribute':未为以下属性注册单元测试扩展:Microsoft.VisualStudio.Test.Sample.UnitTestTypeExtension.RunAsSample.RunAsTestClassAttribute."

我们正在使用VS2010(10.0.40219.1 SP1Rel)(Microsoft .NET Framework版本4.0.30319 SP1Rel)

我想知道它是否与以下库有关:

Microsoft.VisualStudio.QualityTools.Common.dll
Runtime Version: v2.0.50727

C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\ReferenceAssemblies\v2.0\Microsoft.VisualStudio.QualityTools.Common.dll

Microsoft.VisualStudio.QualityTools.UnitTestFramework.dll
Runtime Version: v4.0.30319

C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\PublicAssemblies\Microsoft.VisualStudio.QualityTools.UnitTestFramework.dll

Microsoft.VisualStudio.QualityTools.Vsip.dll
v4.0.30319

C:\Windows\Microsoft.Net\assembly\GAC_MSIL\Microsoft.VisualStudio.QualityTools.Vsip\v4.0_10.0.0.0__b03f5f7f11d50a3a\Microsoft.VisualStudio.QualityTools.Vsip.dll
Run Code Online (Sandbox Code Playgroud)

任何帮助使这项工作非常感谢.

c# unit-testing visual-studio-2010 visual-studio vs-unit-testing-framework

12
推荐指数
1
解决办法
2602
查看次数

使用不同的输入设置测试方法

我想在C#中为所有代码路径测试以下方法.

public int foo (int x)
{
    if(x == 1)
        return 1;
    if(x==2)
        return 2;
    else
        return 0;
}
Run Code Online (Sandbox Code Playgroud)

我已经看到这个pex单元测试测试了多个输入.如何创建接受多个输入的单元测试?

[TestMethod()] //some setup here??
    public void fooTest()
    {
         //some assert
    }
Run Code Online (Sandbox Code Playgroud)

我想避免为每个输入创建一个测试方法.我正在使用Visual Studio 2010/2012和.Net 4.0

c# unit-testing visual-studio-2010 vs-unit-testing-framework

12
推荐指数
2
解决办法
3万
查看次数

使用Coded UI测试项目不会触发Jquery AJAX成功

我试图在asp.net MVC4应用程序上运行Coded-UI测试项目.该应用程序包含涉及的各种ajax调用.当我手动测试它,它工作正常,但当我使用编码ui测试项目测试它时,它会中断,因为在ajax调用中,回调函数不会被调用.谁能告诉我这里我缺少什么?提前致谢.

asp.net-mvc jquery nunit jquery-ui vs-unit-testing-framework

12
推荐指数
1
解决办法
3407
查看次数

Visual Studio 2013 - 干净地禁用VSTEST Discovery Engine?

关于VS2013设置的快速问题 - 是否有一种方法可以禁用VSTEST Discovery引擎在构建时/之后启动?

我之前从未将此过程作为VS2013的子过程运行,但是我最近在VS2013中创建了一个单元测试项目用于演示,现在我加载的每个解决方案(无论是否有单元测试项目)每当我构建一个项目时,vstest.discoveryengine.x86.exe就会运行.

有没有办法把它关掉?我已经在测试菜单中关闭了"测试 - >保持测试执行引擎"选项,即使使用taskkill pre和post build事件也不会阻止它运行(它似乎在成功构建后重新生成,在post-之后建立事件).

我总是可以手动删除或重命名文件,但我想知道是否有人知道VS2013中的设置或选项将其关闭而不是实际上重新命名/删除文件的麻烦,这可能会导致VS2013更新中断. ..

在此先感谢您的回复!

vs-unit-testing-framework visual-studio-2013 vstest

12
推荐指数
1
解决办法
2551
查看次数

MSTest无法找到装配体

我在使用MSTest

我使用命令mstest /testsettings:local.Testsetting /testcontainer:folder\obj\Debug\test.dll

这是输出,

运行具有以下问题:警告:测试运行部署问题:程序集或模块'Microsoft.Practices.未找到由测试容器'test.dll'直接或间接引用的Prism.警告:测试运行部署问题:未找到测试容器"test.dll"直接或间接引用的程序集或模块"Project.Common.dll".警告:测试运行部署问题:未找到测试容器"test.dll"直接或间接引用的程序集或模块"Project.Infrastructure.dll".警告:测试运行部署问题:程序集或模块'Microsoft.Practices.未找到由测试容器'test.dll'直接或间接引用的Prism.

我能做什么让MSTest运行良好.

c# unit-testing mstest vs-unit-testing-framework

11
推荐指数
1
解决办法
1万
查看次数

阻止Visual Studio 2010启动ASP.net开发服务器

我的解决方案中有3个项目.

每当我尝试在任何项目中调试单元测试时,VS2010就会启动3(每个项目1个)ASP.net开发服务器.

我遇到的问题是VS2010需要很长时间才能启动这些开发服务器,因此我在尝试调试单元测试时花了很多时间等待.

我不确定为什么VS2010这样做......有正当理由吗?有没有办法阻止这些开发服务器在调试单元测试时启动?

asp.net visual-studio-2010 visual-studio vs-unit-testing-framework aspnet-development-server

11
推荐指数
1
解决办法
3040
查看次数

Resharper 8.1 Test Runner减慢Visual Studio文本编辑速度

我有一个相当小的C#解决方案,里面有大约5个项目.我正在使用Visual Studio 2012和Update 4,以及Resharper 8.1(build 8.1.23.546).这是一款带有SSD和16GB RAM的I7,拥有大量磁盘空间.这台机器的性能非常出色.

我已经将R#设置为我的单元测试运行器,并且我注意到,只要我运行任何单元测试(一个或多个,通过或失败,没有区别),Visual Studio文本编辑器几乎无法使用.键入编辑器窗口会遭受如此极端的延迟(击键之间最多1秒),这会完全打破开发流程.有时候我实际上不得不停止打字让键盘赶上来让我可以在Intellisense中查找一些内容.

问题一直存在,直到我关闭然后重新打开VS,此时一切都很好.直到我再次进行单元测试.然后又回来了.

我运行进程监视器,看看是否有任何东西(它没有),我已经尝试了各种各样的东西,如清理各种缓存,临时asp.net文件,重置设置,一切都没有效果,实际上基本上几乎所有在Google搜索结果中显示的选项都非常慢

然而,消除过程确实最终缩小了一切与Resharper,特别是测试运行员的问题.

然后我尝试了R#性能优化技巧,如此处所述- 加速Resharper的终极指南,唯一有效的(多次重启后)是禁用单元测试运行器.

我已经禁用了R#测试运行器,并恢复到内置的VS(我讨厌),问题立即消失了.一旦我重新启用R#测试运行器,问题就会出现.

有没有其他人遇到过这个问题,并找到了解决方案?

干杯:)

resharper vs-unit-testing-framework visual-studio-2012 visual-studio-test-runner resharper-8.1

10
推荐指数
1
解决办法
1214
查看次数

如何更改测试资源管理器窗口以在下方而不是旁边显示测试源信息?

我的单元测试源信息并排显示,而不是在测试下方:

并排

如何移动它以使测试显示位于测试下方,而不是旁边?

更新

有趣的是,当我实际调试单元测试时,测试资源管理器正确显示:

上下

vs-unit-testing-framework visual-studio-2013

10
推荐指数
2
解决办法
1971
查看次数

调试单元测试时Visual Studio不调试?

我有一堆单元测试我正在测试,我把断点放在unitest代码上,当我运行CTL+R,T而不是停在断点上它只是执行代码,我试图调试unittest代码因为它失败...任何救命?

我正在使用VS 2010专业版

unit-testing visual-studio-2010 vs-unit-testing-framework

9
推荐指数
2
解决办法
9557
查看次数