我可以在数据驱动测试中使用动态生成的XML文件吗?

本文关键字:XML 文件 动态 数据驱动 测试 我可以 | 更新日期: 2023-09-27 17:54:34

我试图使用数据驱动测试动态生成的XML文件。我使用的是Visual Studio 2010和。net 4.0。

[TestMethod]
[DataSource("Microsoft.VisualStudio.TestTools.DataSource.XML", @"|DataDirectory|'StudentData.xml", "Student", DataAccessMethod.Sequential)]

这个StudentData.xml文件是由代码生成的,我没有部署这个文件。我已经编写了TestInitialize()方法生成StudentData.xml文件的代码,并且该文件被保存在当前工作目录。

每当我要运行测试方法时,它都会抛出错误:

The unit test adapter failed to connect to the data source or to read the data. For more information on troubleshooting this error, see "Troubleshooting Data-Driven Unit Tests" (http://go.microsoft.com/fwlink/?LinkId=62412) in the MSDN Library.
Error details: Object reference not set to an instance of an object.

我认为在创建文件之前,框架试图访问该文件。那么,如何在单元测试中使用这个XML文件呢?另外,我可以在属性中使用变量名吗?

谢谢你的帮助

我可以在数据驱动测试中使用动态生成的XML文件吗?

过去17个小时我没有收到任何回复。因为这对我来说很重要,所以我试着探索其他的可能性。

最后我让它工作。下面是一个简单的解决方案(我发布这个是因为它可能会帮助其他像我一样的初学者,在未来)。

我刚刚将我的XML文件生成代码移动到[ClassInitialize]方法而不是TestInitialize(),它工作得很好。

同样,下面是方法运行的顺序:

1.  Methods marked with the AssemblyInitializeAttribute.
2.  Methods marked with the ClassInitializeAttribute.
3.  Methods marked with the TestInitializeAttribute.
4.  Methods marked with the TestMethodAttribute

点击这里查看更多

谢谢…