【问题标题】:Making the YUI TestLogger show only tests that fail?让 YUI TestLogger 只显示失败的测试?
【发布时间】:2009-07-25 13:50:55
【问题描述】:

我一直在使用 YUI 测试框架通过 JavaScript 进行 TDD,但默认的 TestLogger 会显示各种消息,而不仅仅是 FAIL 消息。这使得扫描日志以查找失败是一项乏味的练习,或者您必须在过滤器复选框上玩whack-a-mole。有什么方法可以使记录器窗口上的切换开关在页面刷新之间保持不变?还是让 Logger 只显示失败的测试?

您可以在this example 中看到,当您有多个测试时,PASS 和 INFO 占主导地位,并且很容易错过 FAIL 消息。

YUI Test Logger screenshot http://img24.imageshack.us/img24/935/yuitest.png

我查看了API for the TestLogger,它暗示有一些选择。遗憾的是,根本没有描述这些选项。我只将 YUI 用于此功能,所以我不是 API 专家,所以有人可以帮帮我吗?

【问题讨论】:

    标签: javascript unit-testing yui


    【解决方案1】:

    要在 YUI 2.7 和更早版本中过滤类别,Logger 必须在请求隐藏之前收到来自该类别的消息。这意味着你可以做到

    YAHOO.log('','pass','TestRunner');
    var logger = new YAHOO.widget.LogReader(el,conf);
    logger.hideCategory('pass');
    

    FWIW,预过滤在 YUI 3 中可用Console + ConsoleFilters plugin

    我建议您在 yuilibrary.com 上添加功能请求: http://yuilibrary.com/projects/yui2/newticket

    【讨论】:

    【解决方案2】:

    我对YUI3的解决方案http://gist.github.com/309910

    【讨论】:

      【解决方案3】:

      在我看来,TestLogger 类(参见source)扩展了Logger 类。因此,这些选项应该是适用于 Logger 类的选项。我认为您想要的是将类别选项设置为仅显示 fail 消息。

      var logger = new YAHOO.tool.TestLogger( element, { categories: ['fail'] } );
      

      【讨论】:

      • 看起来不错,但遗憾的是这似乎没有任何区别。
      猜你喜欢
      • 1970-01-01
      • 2011-10-04
      • 1970-01-01
      • 2018-07-04
      • 2021-12-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多