Jasmine array.length期待

Meg*_*ubs 5 javascript jasmine

我刚刚接触了jasmine js测试框架,今天得到了一些奇怪的结果.

请参阅以下代码(search是一个预先形成api请求并返回promise的函数):

it('should be able to search', function() {
    search('string').done(function(result) {
        expect(result.length).toBeGreaterThan(1); //true
        console.log(result.lenght); // undefined
    });
});
Run Code Online (Sandbox Code Playgroud)

问题在于,由于我必须修复的一些错误,来自promise的结果是未定义的,但测试标记为Success.我发现这有误导性,如果我不深入调查,我会相信测试是成功的,但显然不是.这是预期的行为吗?

Mat*_*ius 13

你在console.log中有拼写错误(result.lenght)请试试这个.

it('should be able to search', function() {
search('string').done(function(result) {
    expect(result.length).toBeGreaterThan(1); //true
    console.log(result.length); // undefined
});
});
Run Code Online (Sandbox Code Playgroud)