VS2008单元测试项目错误

时间:2009-12-02 14:53:51

标签: visual-studio visual-studio-2008 unit-testing

我正在使用VS 2008 Developer Edition,并且发现了测试项目的一些错误。

我收到一个没有意义的错误 - 我有一个名为'Foo'的类,我需要测试并自动创建空白测试类。

Foo在其构造函数中需要3个参数 - IBar,IBaz,IBang。

当我写一个测试用例时,我会将Dim foo称为New Foo(bar,baz,bang),我有时会得到一个错误,上面写着''IBang类型无法隐式转换为IBang'。这个错误没有任何意义。

更奇怪 - 如果我切换到Foo_Accessor()的实例,错误就会消失。我已经使用了引用,然后我最终可以修复上面的错误 - 但是后来我的Foo_Accessor()类得到了同样的错误!

我清理,重建,有时错误会消失 - 但后来我得到错误'Foo_Accessor'没有定义。现在我去Foo类并再次'创建访问者' - 再次,它仍然给出了相同的错误。所以在这一点上我被卡住了,我的解决方案将无法编译,我唯一做的就是通过visual studio添加一个新的测试用例!

有没有人见过这些问题,可以随时帮忙吗?

另外 - 我已经尝试了所有的东西,包括来自MS的指令,例如 - 重命名类型,以不同的方式重新引用项目/卸载项目等等。仍然我结束了'ifoo不能转换为ifoo'bug或Foo_Accessor未定义bug ...我即将崩溃并给出该死的属性我必须检查ReadOnly访问器......!

1 个答案:

答案 0 :(得分:1)

很难肯定地说,但听起来您的参考设置不正确就会出现问题。这里可能发生的是,您的项目之间的引用之一被设置为DLL引用与项目引用。这可能会使类型系统混淆为认为来自项目的Bang和来自DLL的Bang实际上是不同的类型。

我会删除项目之间的所有引用。然后再将所有这些添加回来,小心从添加引用对话框的项目选项卡中选择项目与浏览项目。这应该可以解决您的问题。

这是一个多语言项目还是只是一个语言项目?我发现这种类型的问题更可能发生在多语言项目中,但它确实发生在一种语言中。