可以更改批准测试的文件名

use*_*872 4 .net unit-testing approval-tests

我想在循环中运行批准测试,以便我可以测试100-1000s的XML文件.我让序列化器输出到一个字符串,然后在Verify()调用中使用它.

但是,我希望能够将verify方法设置为每个测试使用不同的文件名.类和方法名称很好,但是我想用附加名称标记它来描述数据库中正在测试的记录的ID.

这有可能,如果是这样的话怎么样?例如

MyTests.Test_X.ID101.approved.txt

MyTests.Test_X.ID101.received.txt

lle*_*lco 6

你在寻找什么是

 using (ApprovalResults.ForScenario("ID101"))
 {
    Approvals.Verify(data101);
 }     
 using (ApprovalResults.ForScenario("ID102"))
 {
    Approvals.Verify(data102);
 }
Run Code Online (Sandbox Code Playgroud)

(可能在循环中)
无论您添加到ForScenario中的任何内容都将完全按照您的要求添加.

另请注意,另一种策略是将所有xml连接到一个主长文件中.每个都有它的优点所以根据你的情况选择合适的

快乐测试!