QUnit - 测试插件方法调用、通用语句等

QUnit - testing plugin method calls, generic statements, etc

需要知道的几件事:

所以我是 JS 单元测试的新手,可能听起来很蹩脚,但我有以下几个问题:

我最近启动了 qUnit 来测试我的 JS 代码,并使用 blanket.js 进行代码覆盖。

Blanket JS 输出显示这样的代码未被覆盖。我想知道 how/what 我可以做些什么来覆盖它们吗?

    Example 1
    function resetForm(form)    {
      form.reset(); // This line shows not covered
    }

    Example 2
    $('a.staticLink').on('click', function(e)   {
      e.preventDefault();// This line shows not covered
    });

类似地,所有通用 bootstrap 函数如 show()、hide() 显示为未涵盖。

即使是只有插件调用的语句也显示为未覆盖

       $(".chosen-select").chosen(); //not covered

非常感谢任何帮助

您需要做的是在您的测试用例中手动触发事件。对于示例 2,如下所示

$('a.staticLink').trigger('click');

并根据单击该按钮后应该发生的情况编写断言。您可能会考虑使用 sinon

stubbing 外部方法