gpt4 book ai didi

request - 在 Cypress 中提交 POST 表单并导航到结果页面

转载 作者:行者123 更新时间:2023-12-04 02:47:58 25 4
gpt4 key购买 nike

当我使用 cy.request() 命令时, Cypress 加载响应正文时遇到问题。

在我们的应用程序中,当填写并提交表单时,它会进行 POST,并且响应正文是新页面。

当我试图在 Cypress 中以编程方式填写表格时。所以我设置了一个 cy.request() 命令,用表单字段填充正文,这与手动填写时发生的情况相同。当我运行该命令时,我可以查看控制台并看到正在返回正确的正文,但未加载新的文档页面。所以我只能坐在旧的空白表单页面上。

cy.request({
url: "company-webpage-form-url.com",
method: "POST",
form: true,
body: {
first_name: "first_name",
last_name: "last_name",
company_name: "company_name",
address1: "address1",
address2: "address2",
city: "city",
state: "NY",
zip: "13903",
country: "US",
phone_number: "607-555-5555",
phone_ext: "555",
fax_number: "fax_number",
fax_ext: "fax_ext",
email: "developer@company.com",
email_2: "developer@company.com",
user_data: "Continue"
}
});

所有数据都是正确的,我得到了正确的响应体,但我只能在控制台中看到它。我不知道如何加载它,就像我提交表单时一样。我现在得到的只是 200 条响应,然后测试结束。

我已经尝试立即访问下一个 URL,但我收到一个错误,指出该 URL 的页面不存在。我尝试在 POST 后单击提交按钮,但这只会导致提交空表单,从而导致验证错误。

我不知道如何让 cypress 加载响应正文,该正文采用文档(新页面)的形式。有人有任何提示吗?

编辑:我应该补充一点 - 我希望从 POST 填写表格的原因是因为我需要填写表格来测试某些选项是否有效。我有一个单一的测试来确保表单字段和提交按要求工作,但是对于需要在此表单的另一侧检查的 30 多个选项,我想遵循 Cypress 的最佳实践,即不是每次都手动填写表单单次(他们展示了一个在网站上登录的例子)。

最佳答案

如果你想模拟一个表单 POST 导航到一个新页面,你可以使用 cy.visit() 去做这个!只需更改您的 requestvisit它应该工作:

cy.visit({
url: "company-webpage-form-url.com",
method: "POST",
body: {
first_name: "first_name",
last_name: "last_name",
company_name: "company_name",
address1: "address1",
address2: "address2",
city: "city",
state: "NY",
zip: "13903",
country: "US",
phone_number: "607-555-5555",
phone_ext: "555",
fax_number: "fax_number",
fax_ext: "fax_ext",
email: "developer@company.com",
email_2: "developer@company.com",
user_data: "Continue"
}
});

关于request - 在 Cypress 中提交 POST 表单并导航到结果页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56497146/

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