【问题标题】:test cases are executing before completing the beforeAll.?测试用例在完成 beforeAll 之前执行。?
【发布时间】:2021-11-15 16:19:43
【问题描述】:

我正在尝试在完成 beforeAll 挂钩后运行测试用例。

但它没有按预期工作,测试用例在完成 beforeAll Hooks 之前运行。如何解决这个问题?

 describe('Testing : Protein superposition LOGIN', async () => {
    beforeAll(async function () {
        jasmine.DEFAULT_TIMEOUT_INTERVAL = 3500000;
        await browser.get(loginData.URL);
        await browser.refresh();
        await browser.waitForAngularEnabled(true);
        await page.funcLogin(loginData.VALID.USERNAME, loginData.VALID.PASSWORD);
        await browser.waitForAngularEnabled(false);
        expect(await userLoginStatus.isPresent()).toBe(true);
        console.log('LOGIN Status : Ok');

    });

    it('Check Login', async function () {

        try {
            var temp = await alerts.getPageHeaderName();
            console.log("Temp Detail", temp);
            // ...
            // ....
        } catch (e) {

            throw new Error(e);
        }

    })
});

【问题讨论】:

    标签: selenium jasmine protractor


    【解决方案1】:

    我想我之前遇到过类似的问题,我使用了Jasmine提供的done函数。

    // remove async on the describe callback because it is doing nothing I think
    describe('Testing : Protein superposition LOGIN', /* async */ () => {
       // add done argument inside of the function parameter 
       beforeAll(async function (done) {
            jasmine.DEFAULT_TIMEOUT_INTERVAL = 3500000;
            await browser.get(loginData.URL);
            await browser.refresh();
            await browser.waitForAngularEnabled(true);
            await page.funcLogin(loginData.VALID.USERNAME, loginData.VALID.PASSWORD);
            await browser.waitForAngularEnabled(false);
            expect(await userLoginStatus.isPresent()).toBe(true);
            console.log('LOGIN Status : Ok');
            // call done to let jasmine know I am done with this block now
            done();
        });
    
        it('Check Login', async function () {
    
            try {
                var temp = await alerts.getPageHeaderName();
                console.log("Temp Detail", temp);
                // ...
                // ....
            } catch (e) {
    
                throw new Error(e);
            }
    
        })
    });
    

    详细了解完成回调here

    【讨论】:

      猜你喜欢
      • 2020-11-02
      • 1970-01-01
      • 2018-06-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-06-08
      • 2016-08-07
      相关资源
      最近更新 更多