端到端测试P和赛普拉斯Azure AD

时间:2020-11-10 15:56:12

标签: typescript azure-active-directory puppeteer cypress

在将Puppeter和Cypress结合使用以解决Azure AD登录问题时,登录页面没有出现,因此我尝试使用Puppeteer在Cypress中进行登录。当我运行“ cypress open”时,cy.task超时

这是我的插件/索引文件:

module.exports = (on) => {  
    on('task', {
        
        getToken: getAadToken,
    });
};

async function getAadToken() {
    return new Promise((resolve, reject) => {

        const creds=  puppeteer.launch({ headless: true }).then(async browser => {
            try {
              const page = await browser.newPage();
              await page.goto('url');
        
              // await page.click(
               //  "LOGINBUTTON"
             //  );
               await page.waitFor(2000);
               await page.click("input[class=username]");
               browser.close();
             return resolve(creds)
            } catch (error) {
                console.log(error);
                browser.close(); 
              }
    });

这是step.ts中的用法:

Then('Puppeteer launch', () => {
    cy.task(('getToken')).then((e) => {  
    });
});

0 个答案:

没有答案