zoukankan      html  css  js  c++  java
  • Vs2008单元测试不能找到测试项目的Config 文件

    1.   问题

    A----------a.config

     |

     |______ConfigDir

                |

                |--------b.config

                |

                ---------c.config

     A 项目使用了多个配置文件,而且配置文件分布多个目录,A在运行过程中会把a.config文件以及ConfigDir目录与Config目录下的两个b.Configc.Config文件拷贝到Bin目录。

    B是测试A的单元测试项目时,把a.config文件与 ConfigDir目录及b.config c.config文件文件拷贝到BConfig下。运行B会发现找不到配置文件a,b,c

    2.   分析

    因为B 在默认的情况下它的 AppDomain.CurrentDomain.BaseDirectory目录并不是测试目录下的Bin目录,而是根据测试时[登录用户]_[机器名] [运行时间](如[XX]_[PCXXX][ 2011-03-16 20_04_04]格式)动态生成的一个目录。直接把A项目的配置文件与目录结构拷贝到B是找不到配置文件的。

    B测试项目在

    3.   解决方法

    1)      打开菜单栏选Edit Test Run Configurations

    2)      选择Deployment 去掉Enable deployment,这是最简单的改法。再次运行测试项目会发现测试项目,已近能找到配置文件了 ,此时的 AppDomain.CurrentDomain.BaseDirectory就是测试目录的Bin。当然另一种改法就是选择Enable deployment后,把所有A项目依赖的配置文件与目录结构都添加进去(添加目录使用Add File ,添加目录使用Add Directory),再次运行测试项目,会发现动态生成的测试目录中已经拷贝了配置文件了。

  • 相关阅读:
    java线程小结1
    String和StringBuffer
    java队列的实现
    java栈的实现
    java链表
    this与super关键字总结
    JVM内存杂记1
    面试题18:删除链表节点
    面试题17:打印从 1 到最大的 n 位数
    面试题16:数值的整数次方
  • 原文地址:https://www.cnblogs.com/hbb0b0/p/1988364.html
Copyright © 2011-2022 走看看