jme*_*ase 6 unit-testing visual-studio-2010
在现有解决方案中,我添加了一个新的测试项目.在我的Test Project .cs文件中,我有一个用[TestClass]属性修饰的类和一个用[TestMethod]属性修饰的方法.我已经验证在Configuration Manager中检查了构建复选框是否为测试项目(因为我的谷歌搜索已经显示其他人遇到此问题).我已将Test Project设置为解决方案的启动项目.当我尝试开始测试时,我得到"无法启动测试项目,因为项目不包含任何测试".我真的很擅长单元测试.我错过了什么?
[TestClass]
public class UnitTest1
{
[TestMethod]
public void TestMethod1()
{
Whole bunch of stuff
Assert.Inconclusive("Done");
}
}
Run Code Online (Sandbox Code Playgroud)
更新:所以我打开了VS的新实例,转到File => New => Project => Test Project.没有触摸或编辑任何东西.直接到cs文件,这里是它的全部内容:
using Microsoft.VisualStudio.TestTools.UnitTesting;
namespace TestProject2
{
public class Inspection
{
public bool SubmitInsp()
{
return true;
}
}
[TestClass]
public class UnitTest1
{
[TestMethod]
public void TestMethod1()
{
Inspection insp = new Inspection();
bool result = insp.SubmitInsp();
Assert.IsTrue(result);
}
}
}
Run Code Online (Sandbox Code Playgroud)
当我尝试启动它时,关于项目不包含任何测试的相同错误.在构建输出"无法加载文件或程序集'〜\ my documents\visual studio 2010\Projects\TestProject2\bin\Debug\TestProject2.dll'或其中一个依赖项中也发现了这一点.不支持操作.(例外情况来自HRESULT:0x80131515)"
我不知道单位测试比这简单得多.有没有搞错???
我能够通过修改此处的devenv.exe配置文件来实现此功能:
C:\Program Files\Microsoft Visual Studio 10.0\Common7\IDE\devenv.exe.config.
将以下行添加到该<runtime>部分,然后重新启动Visual Studio:
<loadFromRemoteSources enabled = "true" />
Run Code Online (Sandbox Code Playgroud)
(这是帮助我的链接)
当一个工作测试项目中的测试突然不再被识别时,我遇到了同样的问题.
将项目文件与另一个工作测试项目中的项目进行比较,向我显示主<PropertyGroup>节点中缺少<ProjectTypeGuids>节点.
在<PropertyGroup>节点中添加此行解决了我的问题:
C#:
<ProjectTypeGuids>{3AC096D0-A1C2-E12C-1390-A8335801FDAB};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
Run Code Online (Sandbox Code Playgroud)
VB:
<ProjectTypeGuids>{3AC096D0-A1C2-E12C-1390-A8335801FDAB};{F184B08F-C81C-45F6-A57F-5ABD9991F28F}</ProjectTypeGuids>
Run Code Online (Sandbox Code Playgroud)
保存到网络文件夹或计算机本地任何位置的测试项目都存在此问题。创建另一个测试项目并将其保存到我的闪存驱动器,工作得很好。我不知道是因为我的机器是 64 位还是因为它是虚拟机还是什么,但我想我只需要测试外部存储设备上的所有内容。
| 归档时间: |
|
| 查看次数: |
5043 次 |
| 最近记录: |