【问题标题】:How to specify approved.txt files location for running approvals tests on TeamCity如何为在 TeamCity 上运行批准测试指定approved.txt 文件位置
【发布时间】:2015-04-16 23:40:40
【问题描述】:

我正在尝试从 TeamCity 下的 nUnit 运行我的批准测试

    [assembly: FrontLoadedReporter(typeof(TeamCityReporter))]        

    [Test]
    [UseReporter(typeof(WinMergeReporter))]
    public void Test()
    {
    }

很遗憾测试失败,因为批准正在尝试从 C 盘获取批准的文件。

测试失败。 ApprovalTests.Core.Exceptions.ApprovalMissingException:审批失败:未找到审批文件“C:\...approved.txt”。

我是否可以为我的批准文件指定正确的位置?

【问题讨论】:

    标签: c# nunit teamcity approval-tests


    【解决方案1】:

    TeamCityReporter 似乎隐藏了这个问题的真正原因。

    这是使用列出的解决方案进行本地运行和认证测试的结果。

    System.Exception : 无法检测到测试框架

    任一:1) 优化器内联测试方法

    解决方案:a) 添加 [MethodImpl(MethodImplOptions.NoInlining)] b) 设置 Build->Optimize Code to False & Build->Advanced->DebugInfo to Full

    或 2) 未设置批准以使用您的测试框架。它目前 支持 [NUnit, MsTest, MbUnit, xUnit.net, xUnit.extensions, Machine.Specifications (MSpec)]

    解决方案:添加一个用途 ApprovalTests.Namers.StackTraceParsers.StackTraceParser.AddParser() 添加实现的方法 ApprovalTests.Namers.StackTraceParsers.IStackTraceParser 支持 为您的测试框架。要了解如何实施,请参阅 http://blog.approvaltests.com/2012/01/creating-namers.html

    很难捕捉到,因为通常本地运行在 Debug 下完成,而在 Release 下进行部署和测试。不过,我希望问题和答案对其他人有所帮助。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-07-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-02-06
      • 1970-01-01
      相关资源
      最近更新 更多