关于单元测试中的部署目录

近来做UnitTest,昨天遇到了一个问题,十分火大,搞了我两个小时有了。主要是测试的方法里调用了另一个dll的方法,而这个被调用的方法用了AppDomain.CurrentDomain.BaseDirectory这个东西,当run test时,会动态随时间创建一个测试的部署文件夹,在TestResult目录下, 而这个部署文件夹里又有in和out两个文件夹,而当前这个AppDomain.CurrentDomain.BaseDirectory正是指out目录,这里用到AppDomain.CurrentDomain.BaseDirectory,是为了读取xml文件,此刻就会发现找不到xml文件的错误,而这个部署文件夹又是随时间动态创建的,这可怎么办?

翻天覆地,找到了DeploymentItemAttribute,这个东西还是有点用处的,看了看MSDN,里面有个sample,照着上面讲的做了,但还是没发现什么……关键是上面少了一个说明,就是xml文件在copy到自己的测试项目目录下,然后在solution explorer里找到这个xml,再看这个xml的property explorer,上面有个“复制到输出目录”的选项,把它选上“始终复制”这项,再用DeploymentItem部署一下,如xml文件名为"context.xml",则写成DeploymentItem["context.xml"],当再次run test时,测试目录下的context.xml就会自动复制到out目录下,这时要读取xml就没问题了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值