我正在尝试制作一个单元测试,该单元测试的数据源来自多个 Excel 文件,每个 Excel 文件都包含同一单元测试的测试用例。我想将所有Excel文件放在一个文件夹中,并让单元测试程序迭代所有Excel文件。
我找到了几种方法,比如将所有测试用例存储在一个XML文件中,但是这种方法太繁琐了,因为我必须从excel文件中提取所有测试用例并将其放入同一个XML文件中。我希望能找到一种有效的方法来做到这一点。有什么建议吗?
最佳答案
借助 Visual Studio (MsTest) 的标准测试框架,您可以在测试中使用 [DataSource]
属性绑定(bind)到数据源。默认情况下,这包括使用 Excel 的 OleDB 驱动程序对 Excel 的支持。
但是,这假设您的所有测试用例都位于同一个 Excel 文件中(因为您将使用打开文件和选项卡的简单连接字符串)。如果您想从多个文件中获取案例,则需要通过实现命名空间 from System.Data
the technology behind this hasn't changed much since 2003 来实现您自己的数据提供程序。 .
如果您能够将 Excel 文件合并到一个文件中,并且测试用例各占一行,you'd be able to use the standard DataSource
attribute将数据输入到您的测试中。
MsTest 始终假设您的数据采用表格格式。
关于c# - 如何在C#中使用多个excel文件作为单元测试的数据源?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29343246/