gpt4 book ai didi

Protractor 失败 : element not interactable

转载 作者:行者123 更新时间:2023-12-04 18:55:52 25 4
gpt4 key购买 nike

我正在为 Angular 7.x 应用程序运行 E2E 测试。测试在我的本地机器上直接运行。但是当我将它推送到 repo (GitLab) 时,管道失败并抛出以下错误:

USER PROFILE - Check and change PROFILE - Failed: element not interactable (Session info: chrome=71.0.3578.80) (Driver info: chromedriver=2.45.615279 (12b89733300bd268cff3b78fc76cb8f3a7cc44e5),platform=Linux 4.14.74-coreos x86_64)



测试用例:
it('USER PROFILE - Check and change PROFILE', () => {

page.navigateTo();

browser.sleep(1000);
expect(page.getProfileEditTagName()).toMatch('app-edit-profile');

expect(element(by.className('logged-as')).getText()).toBe( testEmail );


browser.actions().mouseMove( element.all( by.id('editIcon-salutation') ).get(0)).click().perform().then(function () {
browser.sleep(4000);

element( by.className('mat-select-arrow') ).click().then(function () {

browser.actions().mouseMove( element.all(by.className('option-value mat-option')).get(0)).click().perform();
browser.sleep(1000);
browser.actions().mouseMove( element.all( by.id('saveButton-salutation') ).get(0)).click().perform();
browser.sleep(1000);

});
});

});
navigateTo()只是 中的一个方法profile.po.ts :
navigateTo() {
browser.get('/profileComponentUrl');
}

令我困惑的是,我什至无法定位错误或错误的地方是它在本地运行良好。但是一旦我推送到 repo,它就会在那个测试用例中完全失败。请问有什么提示吗?

最佳答案

元素不可交互的原因可能是 - 对隐藏或被遮挡的元素执行操作。

你可以试试 -
1. 在 by.className('mat-select-arrow') ).click() 之后添加 sleep,我可以看到您没有在那里添加任何等待。
2. 尝试检查您是否在具有相同屏幕分辨率的本地和 Jenkins 机器上运行测试。 (这可能是元素被遮挡的原因)

关于 Protractor 失败 : element not interactable,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53724933/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com