Cypresss 无法在浏览器启动时加载 UTF-16 网站

问题描述 投票:0回答:1

我在头块中使用元标记字符集作为 UTF-16 创建了网站

<meta charset="utf-16">
因此,如果我在 Chrome 上手动检查我的网站,数据加载正常,但是当尝试通过 cy.visit() 打开网站并启动浏览器时,我们会得到乱码值

Cypress Browse Image

当我检查 Cypress 时,我可以看到 Cypress 使用的是字符集 UTF-8

Cypress Inspect Image

仅 Cypress 没有安装额外的插件,使用的 Cypress 版本是 13.7.0。我已经从10.10.0更新到这个版本了

utf-8 character-encoding cypress utf-16
1个回答
0
投票

您正在查看 Cypress 测试运行程序(主浏览器窗口),而不是正在测试的应用程序。

应用程序加载到

<iframe>
中,并且该文档具有
<meta charset="utf-16">
。要找到它,请右键单击/检查页面上的某些文本元素,这会将您带到开发工具的元素选项卡。

从那里查找 HTML 树以找到最近的

<head>
(不是您在图片中显示的那个)。

如果您的网页确实有

utf-16
,您将在该头部看到相同的内容。

要进行测试,请使用应该通过的代码(在我的示例中确实如此)

cy.visit(my-url)
cy.get('head meta[charset]')
  .should('have.attr', 'charset', 'utf-16')
© www.soinside.com 2019 - 2024. All rights reserved.