使用茉莉花弹珠进行单元测试

问题描述

我正在尝试使用 jasmine-marbles 进行简单的测试,但出现错误

这是我的测试代码

describe('MarbleTestingComponent',() => {
  it('should test marble Syntax',() => {
    const provided = search('e');
    const expected = cold('(e|)',{e: 'e'});
    console.log(expected,provided);
    expect(provided).toBeObservable(expected);
  })   

});

这是我得到的错误

Error: 
            Expected: (e|),Received: (?|),Expected:
            [{"frame":0,"notification":{"kind":"N","value":"e","hasValue":true}},{"frame":0,"notification":{"kind":"C","hasValue":false}}]
            
            Received:
            [{"frame":0,"value":"e"}},"notification":{"kind":"C"}}],

如果我使用 jest 框架,上面的代码可以工作,但我想让它与 Angular 设置附带的认测试框架一起工作

对此错误进行排序的任何帮助表示赞赏 谢谢

解决方法

尝试检查 jasmine-marbles 版本。

我在使用 "jasmine-marbles": "^0.9.0" 和 "rxjs": "^6.6.7" 时遇到了同样的问题。

降级为“jasmine-marbles”:“^0.8.0”解决了问题。

在此处查看支持的版本:https://github.com/synapse-wireless-labs/jasmine-marbles#readme