在MBunit测试中使用app.config

时间:2010-08-04 12:21:28

标签: c# mbunit gallio

我设置单元测试的方式是用户可以运行可执行文件并选择要使用的数据集。此信息存储在app.config中,但是当我在使用Gallio Icarus运行单元测试时尝试访问app.config时,它不起作用。

编辑: 我将字段绑定到Application属性,但是当我调用Properties.Settings.Default.Save();时,它似乎没有做任何事情。 app.exe.config不会更改,并且更改不会保留。

2 个答案:

答案 0 :(得分:3)

嘲笑你如何阅读应用程序配置。

在你的应用中写一个界面&从app.config文件获取数据的类。 在测试中,在虚拟对象上实现接口,每次都会传回已知的输出。

您正在测试的类需要获取一个参数(在ctor或其他上),该参数是实现该接口的对象。

在您的真实代码中,这将是从app.config读取的真实对象。

在测试中它将是虚拟对象。

答案 1 :(得分:2)

app.config是与程序在启动时读取的MyProgramme.exe.config文件对应的文件。这可以通过System.Configuration命名空间和程序集中的Configuration对象访问。

Properties.Settings.Default对应于您致电user.config时程序将生成的文件Properties.Settings.Default.Save()

因此,在测试中包含app.config文件不会影响Properties.Settings.Default

有关详细信息,请参阅Using Settings