【发布时间】:2021-02-26 20:12:42
【问题描述】:
当我运行这样的基本测试用例时:
fdescribe('Browser back button', () => {
fit('should return to previous', async () => {
const originalHref = window.location.href;
window.history.pushState({}, 'Test', '/test');
window.history.back(); // This doesn't seem to be working.
expect(window.location.href).toEqual(originalHref);
});
我收到错误消息“预期 'http://localhost:9876/test' 等于 'http://localhost:9876/context.html'”。很明显 pushState() 有效,但 back() 无效。
Karma 在内部 iframe 中运行测试。当我将前三行按顺序粘贴到浏览器的 JavaScript 控制台中时,导航按预期工作。所以在这种情况下,窗口的行为和内部 iframe 的行为之间肯定有一些不同。
这是 Chrome 上的 Karma 5.1。
有什么想法吗?
【问题讨论】:
标签: javascript web iframe karma-runner browser-history