下面的测试应该扫描和验证二维码并使用收到的验证令牌。最后两个命令(.type)被跳过。有谁知道为什么?我已经被困在这里一段时间了。
getUrlVars 是一个帮助函数,它返回我用来生成令牌的字符串。我
谢谢
/// <reference types='Cypress' />
import { Decoder } from "@nuintun/qrcode";
const qrcode = new Decoder();
const OTPAuth = require("otpauth");
import Navbar from "../page-objects/components/Navbar";
import UserProfileNav from "../page-objects/components/UserProfileNav";
import BasePage from "../page-objects/pages/BasePage";
import LoginPage from "../page-objects/pages/LoginPage";
import RegistrationPage from "../page-objects/pages/RegistrationPage";
import { createEmail, getUrlVars } from "../utils/utils";
describe("test", () => {
it("ttest", () => {
cy.visit("/");
LoginPage.login("test_1608122224686.kkvbvvks@mailosaur.io", "P@ssword1");
Navbar.navigateToProfile();
UserProfileNav.twoStepVerificationTab();
cy.findAllByAltText("2FA QR kód").then(function ($img) {
qrcode.scan($img.prop("src")).then((result) => {
const totp = new OTPAuth.TOTP({
algorithm: "SHA1",
digits: 6,
period: 30,
secret: getUrlVars(result.data)["secret"],
});
const token = totp.generate();
console.log(token);
cy.findByLabelText("Jednorázový kód").type(token);
});
});
});
});