Cypress为Google Authenticator生成过时的代码

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

在分钟的(20..30)或(50..60)秒之间启动cypress ui测试会导致错误的Google 2因子令牌生成。它会生成顽强的令牌。

这是我的令牌生成功能:

function getToken () {
  const totp = require('totp-generator');
  const token = totp('2CQQGPPYFE7JPJAX');
  return token;
}

这是我在使用令牌之前如何获得令牌的方法:

let token = getToken()

看起来令牌是在测试开始时生成的(即使调用在测试中间),并且令牌在使用时已过时,因为新的时期已经开始。

google-authentication cypress two-factor-authentication google-authenticator
1个回答
0
投票

这对您有用吗?

使用承诺功能。

describe('check the tokens', function() 
{
// on 25 seconds 
it('Test first token ',()=> {
    cy.wait(25000).then(()=>{
        let token = getToken();
        console.log('first token: ' + token);
    })
})
// on 55 seconds 
it('Test second token', ()=>{
    cy.wait(30000).then(()=>{
        let token = getToken();
        console.log('second token: '+ token);
    });
})
})

function getToken () {
    const totp = require('totp-generator');
    const token = totp('2CQQGPPYFE7JPJAX');
    return token;
  }

enter image description here

© www.soinside.com 2019 - 2024. All rights reserved.