【问题标题】:Select list for QUnit modules in test runner bar?在测试运行器栏中选择 QUnit 模块列表?
【发布时间】:2012-12-25 05:52:25
【问题描述】:

我记得曾经在 QUnit 的测试运行器工具栏中看到过 QUnit 测试模块选择列表的屏幕截图。我的印象是,在选择列表中选择一个模块会导致该模块的测试运行。

问题:QUnit 是否真的存在这样的功能 OOB?我知道可以通过 URL 设置过滤器,但我想要一个更“可发现”的选项。

谢谢!

【问题讨论】:

    标签: qunit


    【解决方案1】:

    仅当您在测试套件中定义了多个module 时,才会显示选择列表。

    此外,请确保您的测试套件在 QUnit 初始化之前已准备就绪。即,当页面完成加载(onload 事件)时,QUnit 会自行初始化。如果您碰巧在此之后定义了您的测试套件,那么您必须调用(未记录的)QUnit.load() 方法来通知 QUnit 您的测试套件已经定义。

    演示: http://jsfiddle.net/brianpeiris/98fc8/show/

    【讨论】:

    • 我正在动态加载 QUnit 和我的测试。在动态加载 QUnit 后调用 QUnit.load 会显示模块选择器。
    • 最终我们发现调用 QUnit.load 会导致 setup 和 teardown 乱序运行(例如 setup/setup/test/test/teardown/teardown)。这是因为我们也在异步加载 QUnit。我们将引导逻辑更改为如下所示,现在我们得到了正确的设置/测试/拆卸调用模式:1) 异步加载 QUnit。 2) 将自动启动设置为 false。 3) 调用 QUnit.load 4) 异步加载测试资产(即包含测试的 js 文件) 5) 调用 QUnit.start
    • 感谢您的更新。我想这个方法没有记录是有原因的!
    • 这里是 GitHub 上的相关错误报告,建议使用 QUnit.load():github.com/jquery/qunit/issues/396
    猜你喜欢
    • 2012-10-13
    • 2012-10-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-06-18
    • 2014-06-27
    • 2015-04-24
    • 2013-11-27
    相关资源
    最近更新 更多