XML 嵌套节点的数据驱动单元测试
XML Data Driven Unit Test with nested Nodes
最近几个小时我无法在互联网上找到任何东西。情况是这样的:我想测试我写的一个解析器,为此我有写一个数据驱动的单元测试的愿望。我的 XML 如下所示:
<Test>
<ParseTest>
<Case>
<uri>somestring</uri>
<key>somestring</key>
<value>somestring</value>
</Case>
<Case>
<uri>somestring</uri>
<key>somestring</key>
<value>somestring</value>
</Case>
</ParseTest>
</Test>
Test是我整个class的根节点。 ParseTest 应该是每个方法的根,所以我想访问每个 运行 个案例节点及其子节点
我的测试代码是:
[TestMethod]
[DataSource("Microsoft.VisualStudio.TestTools.DataSource.XML",@"PATH\name.xml","ParseTest",DataAccessMethod.Seqential)]
public void ParseTest()
{
//Arrange
m_testContext.DataRow["uri"].ToString();
//Act
//Assert
}
问题在于,框架找不到正确的子节点。正确找到文件。我 运行 在 VS 中通过“运行 测试”进行测试。
在 this example 之后附加的 ParseTest
是多余的(或者嵌套的 Case
标签是多余的)。据我所知,测试框架将加载名称为 ParseTest
和 运行 的所有标签,每个标签都进行测试(假设您通过 "ParseTest"
作为 table 名称) .不知道您如何从测试中访问数据我猜 XML 应该像
<Test>
<ParseTest>
<uri>somestring</uri>
<key>somestring</key>
<value>somestring</value>
</ParseTest>
<ParseTest>
<uri>somestring</uri>
<key>somestring</key>
<value>somestring</value>
</ParseTest>
</Test>
最近几个小时我无法在互联网上找到任何东西。情况是这样的:我想测试我写的一个解析器,为此我有写一个数据驱动的单元测试的愿望。我的 XML 如下所示:
<Test>
<ParseTest>
<Case>
<uri>somestring</uri>
<key>somestring</key>
<value>somestring</value>
</Case>
<Case>
<uri>somestring</uri>
<key>somestring</key>
<value>somestring</value>
</Case>
</ParseTest>
</Test>
Test是我整个class的根节点。 ParseTest 应该是每个方法的根,所以我想访问每个 运行 个案例节点及其子节点
我的测试代码是:
[TestMethod]
[DataSource("Microsoft.VisualStudio.TestTools.DataSource.XML",@"PATH\name.xml","ParseTest",DataAccessMethod.Seqential)]
public void ParseTest()
{
//Arrange
m_testContext.DataRow["uri"].ToString();
//Act
//Assert
}
问题在于,框架找不到正确的子节点。正确找到文件。我 运行 在 VS 中通过“运行 测试”进行测试。
在 this example 之后附加的 ParseTest
是多余的(或者嵌套的 Case
标签是多余的)。据我所知,测试框架将加载名称为 ParseTest
和 运行 的所有标签,每个标签都进行测试(假设您通过 "ParseTest"
作为 table 名称) .不知道您如何从测试中访问数据我猜 XML 应该像
<Test>
<ParseTest>
<uri>somestring</uri>
<key>somestring</key>
<value>somestring</value>
</ParseTest>
<ParseTest>
<uri>somestring</uri>
<key>somestring</key>
<value>somestring</value>
</ParseTest>
</Test>