【发布时间】:2015-01-15 16:51:28
【问题描述】:
我想使用 Resharper 的 (8.0.2) 集成 qunit 测试运行器,但是直接在浏览器中运行测试与使用 R# 运行器在浏览器中运行测试存在一些差异:
-
正如here 所指出的,没有添加一个fixture 元素,这是UI 相关测试所需要的。如答案所述,可以通过在模块设置+拆卸方法中手动添加元素来解决。
这就引出了下一个问题:
-
Resharper 只识别 deperecated
setup和teardown,而不是它们的替代品(beforeEach和afterEach):
弃用注意:beforeEach 和 afterEach 之前被命名为 setup 和 teardown,它们仍然存在并将在 QUnit 2.0.0 中删除。
module("Tests for DOM manipulation", {
beforeEach: function () { // never called in the R# runner
$("body").append('<div id="qunit-fixture" />');
}
});
test('finding qunit-fixture element', function(){
var elementCount = $('#qunit-fixture').length;
ok(elementCount, 1);
});
最后,test() 回调函数不会返回 assert 对象,即:
test('foo', function(assert){
var done = asssert.async(); // assert is undefined in R# qunit runner
setTimeout(function (){
ok(1 === 1);
done();
}, 500);
});
有什么方法可以让 R# 表现得更像“本机 qunit”测试实现?
【问题讨论】: