在C#类库和一组测试中。一切进展顺利,直到我添加了一组新的测试 - 它们在我的机器上正确运行,但在TFS Build服务器上失败。构建日志中的堆栈跟踪没有意义 - 一个类的构造函数似乎映射到其中一个方法。
如果我的班级看起来像这样:
1. public class ClassToBeTested
2. {
3.
4. /// <summary>
5. /// Default constructor.
6. /// </summary>
7. public ClassToBeTested()
8. {
9.
10. }
11.
12. /// <summary>
13. /// Default constructor.
14. /// </summary>
15. public MethodToTest()
16. {
17. /* do stuff that throws exception */
18. }
19.
20. }
在我的单元测试课中,我有这个:
1. [TestMethod()]
2. public void UpdateTest()
3. {
4. ClassToBeTested Target = new ClassToBeTested();
5. ClassToBeTested.MethodToTest();
6. }
然后我的堆栈跟踪表明:
测试方法unittestclass.UpdateTest抛出异常/无论什么/
ClassToBeTested.MethodToTest():第17行
unittestclass.UpdateTest():第4行
这怎么可能?
答案 0 :(得分:1)
我认为抛出异常的方法中的代码可能与它有关。特别是如果那里的东西有一个静态构造函数: 也许这可能会有所启发:
http://msmvps.com/blogs/jon_skeet/archive/2010/01/26/type-initialization-changes-in-net-4-0.aspx
但是需要更多帮助......可能缺少代码方法详细信息和/或异常类型。
还要检查调试计算机上的构建配置是否与构建服务器相同..或者尝试在发布/发布配置中进行测试