所以我有一个非常基本的测试,我想在使用Jasmine的测试中检查Promise响应的类型。我正在运行一个节点项目,并设置了所有这些细节
describe('fail assertion', function() {
it('should be a failure', function(done) {
myvideopromise.then(function(resp) {
expect(true).toBe(false);
done();
}).catch(done);
});
});
describe('list videos', function() {
it('should return a list of videos', function(done) {
myvideopromise.then(function(videos) {
expect(Array.isArray(videos)).toBe(true);
done();
}).catch(done);
});
});
但是当我运行它时,我会在下面看到这一点。
Started
F.
Failures:
1) video suite fail assertion should be a failure
Message:
Expected true to be false.
“F”为红色,“。”是绿色的。所以看起来它正确地运行了测试断言,但是对于成功它似乎并没有显示成功消息。我需要传递旗帜还是什么东西?我正在使用
来调用它jasmine JASMINE_CONFIG_PATH=test/jasmine_config.json
我的 jasmine_config.json 文件看起来像
{
"spec_dir": "test/other/",
"spec_files": [
"video_tests.js"
]
}
答案 0 :(得分:0)
describe('fail assertion', function () {
it('should be a failure', function (done) {
myvideopromise.then(function (resp) {
expect(true).toBe(true);
done();
}).catch(e => {
done(e);
});
});
});
describe('list videos', function () {
it('should return a list of videos', function (done) {
myvideopromise.then(function (videos) {
expect(Array.isArray(videos)).toBe(true);
done();
}).catch(e => {
done(e);// it's a failure case
});
});
});