在分钟的(20..30)或(50..60)秒之间启动cypress ui测试会导致错误的Google 2因子令牌生成。它会生成顽强的令牌。
这是我的令牌生成功能:
function getToken () {
const totp = require('totp-generator');
const token = totp('2CQQGPPYFE7JPJAX');
return token;
}
这是我在使用令牌之前如何获得令牌的方法:
let token = getToken()
看起来令牌是在测试开始时生成的(即使调用在测试中间),并且令牌在使用时已过时,因为新的时期已经开始。
这对您有用吗?
使用承诺功能。
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;
}