在对话框中手动输入身份验证凭据

时间:2019-06-28 09:45:16

标签: cypress

我需要赛普拉斯对在我的应用程序中完成的XHR请求进行身份验证。身份验证不是 基本,而是摘要,这使得寻求帮助变得更加困难。

似乎还存在一个用于验证请求的错误,例如:

cy.request({
  url: 'http://postman-echo.com/digest-auth',
  auth: { user: 'postman', pass: 'password', sendImmediately: false },
})

https://github.com/cypress-io/cypress/issues/2128

我想知道是否存在一个临时解决方法,涉及使赛普拉斯在对话框中手动输入凭据?

我已经考虑收听诸如window:alertwindow:confirm之类的事件,但是这些似乎无法捕获auth对话框。

TL:DR:如何让赛普拉斯在对话框中手动输入凭据?

2 个答案:

答案 0 :(得分:1)

cy.visit当前仅支持发送Basic HTTP身份验证,但是我已经打开了摘要身份验证的功能请求:https://github.com/cypress-io/cypress/issues/4669

同时,解决方法是在本地测试环境中禁用HTTP身份验证。

答案 1 :(得分:0)

您可能需要这样的东西

    cy.visit('http://yoururl/')
    cy.get('input#username').type('username')
    cy.get('input#password').type('password')
    cy.get('button#signin').click()