视觉工作室中的“单元”测试在一起运行时失败但在单独运行时成功

时间:2015-09-24 13:43:53

标签: c# unit-testing visual-studio-2012 telerik telerik-open-access

我已经针对我的数据库编写了一堆存储库方法,我使用Telerik Data / Open Access ORM访问该方法。我使用“Microsoft.VisualStudio.TestTools.UnitTesting”工具编写了大约30多个测试。这些不是最严格意义上的“单元”测试,但他们运用每个单独的存储库方法(请不要攻击我对“单元”测试的定义......我知道它是什么,我不是那样做) 。

无论如何,一切进展顺利,直到今天早上。像往常一样,我运行所有测试只是为了确保在我睡觉时没有侏儒改变我的代码。我很惊讶地看到他们中的大多数人都失败了......但更令他们惊讶的是他们失败的原因是以下错误......

.Net SqlClient数据提供程序::无效的列名称'voa_class'

如果您熟悉Telerik OpenAccess ORM,那么您可能熟悉此错误,如果没有,它会处理垂直继承模型中存在(或缺少)鉴别器列。 “ voa_class ”是ORM在数据模型的流畅描述中未明确定义的列时查找的列。

此错误令人困惑,因为......

  • 这在
  • 之前有效
  • DID传递的一些测试也使用了垂直继承的相同类,理论上它们也应该失败。
  • 鉴别器字段的两端都是在映射/描述类中明确定义的(使用仅代码方法)
  • 而且最疯狂的是......当我单独运行测试而不是同时运行所有测试时...他们通过!!

我可以提供代码,如果有必要的话。但是,我觉得这不是特定的代码问题,因为它之前工作并且测试在单独运行时成功运行。我希望有人可能已经看到并解决了类似的问题并且可以分享该解决方案。

谢谢!

0 个答案:

没有答案