我已经写单元测试的抽象基类,设置我们的测试,仅运行足够的环境。 类暴露了一些运行时环境比特作为其类型变化测试通过测试(该属性类型是在继承,混凝土测试类指定类型的参数)的属性。
这是一切都很好,除了一个同事发现他无法查看任何调试器中的类的属性。 原来,原因是他没有在他的继承类定义的字段,以及CLR优化或其他东西了,所以调试器无法显示属性。 是否有可能阻止这种在基类不知何故,还是我不得不求助于告诉大家,他们需要定义它在测试中的某处使用至少一种场?
编辑:
听起来像一个可能的罪魁祸首应该是优化/调试设置。 这就是说,我建立从Visual Studio在调试模式下的应用程序,我仔细检查了所有项目的调试版本设置,并没有在该解决方案中的项目有优化标志设置。
也许这也将是相关的注意,我使用MSTest的和Visual Studio的测试运行。
编辑2:
通过“无法查看属性”我指的是,当我评价快速监视的财产,并得到一个红色的感叹号和一个文本“无法计算表达式”错误文本。 且怕你觉得我有我的怀疑完全关闭基地,并表示被测试初始化实例字段初始化方法使问题消失...
编辑3:
经过编译输出。 我注意到,编译器调用这些选项:
/debug+
/debug:full
/optimize-
/define:DEBUG,TRACE
我认为这是足以阻止这种情况发生,但你去那里。 :)