gpt4 book ai didi

javascript - 将 Mocha 与 synchronizedjs 结合使用

转载 作者:行者123 更新时间:2023-12-03 09:36:37 26 4
gpt4 key购买 nike

我正在尝试在我的测试用例中使用synchronizedjs,但现在所有测试都通过了。

test.it("Clicking previous week button, causes loading previous week",()=>{
sync.fiber(()=>{
var currentMondayText = sync.await(driver.findElements(webdriver.By.className("date"))).getText();
assert.equal(true,false);
});
});

有人可以告诉我我做错了什么吗?

最佳答案

任何带有回调的测试都会破坏 Mocha 通常依赖的简单函数返回处理。要解决此问题,您可以在测试函数中请求 done 参数,并在测试完成时调用该参数:

test.it("Clicking previous week button, causes loading previous week", (done) => {
sync.fiber(() => {
var currentMondayText = sync.await(driver.findElements(webdriver.By.className("date"))).getText();
assert.equal(true,false);
done();
});
});

当您的测试函数采用此参数时,Mocha 在调用它之前不会完成测试。

如果您的测试使用与 Promise 标准匹配的 thenable,您也可以从测试中返回它,Mocha 会注意到并等待它解析:

test.it('returns a promise', () => {
return foo.promise().then(result => {
expect(result).to.be.true;
});
});

关于javascript - 将 Mocha 与 synchronizedjs 结合使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31316569/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com