使用量角器

时间:2016-01-11 07:51:17

标签: unit-testing jasmine protractor

有没有办法(使用Protractor + Jasmine时)来装饰Jasmine's global interface?我想在报告者/输出中获得我们SRS的标识符。

我们已经为使用Karma进行的单元测试做了这个:

var jit = env.it;
env.it = function(srs_id, desc, func) {
    // Do something with the srs_id
    return jit(desc, func);
};

// Same for "fit" and "xit"

当我在onPrepare执行此操作时,测试将会运行,但重点测试不会起作用:(而不是仅运行使用fit调用的测试,所有测试都将运行。

通过使用3个参数进行测试(it / fit)和/或不修饰方法,可以实现不同的行为。 E.g。

it('additional parameter', 'should test something', () => {
  expect(true).toBeTruthy();
});
  • Karma 将按预期执行所有操作。执行带有3个参数的it时,将引发错误(queueableFn.fn.call is not a function)。如果仅使用fdescribe / fit,则仅运行这些测试。
  • 量角器在遇到带有3个参数的方法时也会抛出错误(Constraints encountered a declaration exception)。它还会打印出正确的规格说明,例如: 'should test something'fdescribe / fit被忽略,所有规格都已执行。

版本: node@5.3.0,karma@0.13.15,protractor@3.0.0

我的猜测是Protractor本身装饰了Jasmine提供的API。在onPrepare正确的位置装饰Jasmine?如果有的话,有没有办法来装饰Jasmine方法呢?

0 个答案:

没有答案