目前,我们可以通过这种方式使用 pend() 函数给出待定规范的理由 -

xit("pending spec", function(){
    //Skipped spec
}).pend("This is a reason");

上述函数的输出将是 -
Sample Test: pending spec
This is a reason
Executed 1 of 1 specs (1 PENDING)

现在,如何获得禁用套件的相同原因?
xdescribe('Disabled suite' , function(){
    it('example spec', function(){
        //example
    });
}).pend("This is a reason");

上述禁用套件的输出是 -
No reason given

即使我使用 pend() 函数也保持不变。谢谢!

最佳答案

未在套件上实现待处理消息,但您可以覆盖 pend 方法以使其在每个规范上写入消息:

jasmine.Suite.prototype.pend = function(message){
    this.markedPending = true;
    this.children.forEach(spec => spec.pend(message));
};

用法:
xdescribe('Suite', function() {


}).pend("Feature not yet implemented");
Suite.js 的源代码:

https://github.com/jasmine/jasmine/blob/master/src/core/Suite.js#L45

10-08 02:28