1

是否可以在 Pa11y 控制台中手动输入一次密码?

我正在使用 Node 控制台运行我的 pa11y.js 代码。我遇到了如何手动输入我在移动设备上收到的 OTP 的问题。

我的工作流程和代码片段如下:

登录页面

然后是我选择 OTP 的选择页面。我可以使用 Pa11y 测试到此页面

需要在此页面输入我的 OTP

pa11y.js 如下:

常量 pa11y = 要求('pa11y');

运行测试();

异步函数 runTests() {
    尝试 {

        常量登录选项 = {
            行动:[
                '将字段#username 设置为 test@test.com',
                '将字段#password 设置为 Password1234',
                'click element #submit', // 填写登录表单并提交
                'wait for path to be /protect-summary', // OTP/其他选项选择页面
                'check field #radio', //选择 OTP 选项
                'click element #submit', //提交第二个表单
                '等待路径为 /otp', //等待 OTP 页面
                'wait for path to be /account-page' //输入OTP后想访问这个页面
            ],
            等待:10000,
            铬启动配置:{
                headless: false // 尝试在打开的浏览器上快速输入接收到的 OTP
            },
            日志: {
                调试:console.log,
                错误:console.error,
                信息:console.log
            }
        }

        常量结果 = 等待 Promise.all({
            pa11y('http://localhost:3000/', loginOptions);
        });

        控制台.log(结果);

    } 捕捉(错误){
        控制台.error(error.message);
    }
}
4

0 回答 0