gpt4 book ai didi

javascript - 实习生功能测试失败后如何清理?

转载 作者:行者123 更新时间:2023-11-30 09:28:24 26 4
gpt4 key购买 nike

我有一些使用 Intern (3) 运行的功能测试,测试的最后一步是做一些清理,包括清除远程浏览器上的 localStorage,并通过立即存储窗口句柄切换回原始窗口并在测试结束之前切换回它(因此任何后续测试都不会失败,因为如果先前的测试在另一个测试结束时它们试图在关闭的窗口上运行)。但是,如果某些 chaijs 断言在 .then() 中失败,最后的清理代码将被跳过。有没有更好的方法来清理即使某些断言失败时仍会运行的功能测试?

this.leadfoot.remote
.get(require.toUrl(url))
.execute(function() { return document.querySelector('#welcome').textContent})
.then(welcome => {
assert.equal(welcome, 'hello world', 'properly greeted');
})
.execute(function() {
localStorage.clear();
});

如果断言失败,它永远不会在最后清除 localStorage,如果运行的下一个测试期望 localStorage 为空,它也会失败。功能测试后是否有更好的清理方法?

最佳答案

使用 afterEach 方法。

afterEach() {
return this.remote
.execute(function () {
localStorage.clear();
});
},

'my test'() {
return this.remote
.get(...)
.execute(...)
.then(welcome => {
assert.equal(welcome, ...);
});
}

关于javascript - 实习生功能测试失败后如何清理?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47895363/

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