Stack:WebDriverError:元素不可交互-量角器e2e

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

我在测试要单击的按钮时收到此错误,但我不知道该怎么办。

消息:WebDriverError:元素不可交互

使用e2e进行测试时,我似乎无法单击该按钮。或者我得到这个按钮是不可交互的,或者我得到它找不到按钮,或者我超时了。

我的代码:

   const inputEmail = element(by.css('input[type=\'email\']'));
const inputPassword = element(by.css('input[type=\'password\']'));
const loginButton = element(by.xpath('//button[.=\'LOGIN\']'));
const googleSignInButton = element(by.xpath('//button[.=\'GOOGLE SIGN-IN\']'));

browser.ignoreSynchronization = true


const elm = element(by.css('ion-header button'));


 //const menuButton = element(by.className('bar-buttons bar-buttons-md bar-button bar-button-md bar-button-default bar-button-default-md bar-button-menutoggle bar-button-menutoggle-md'));
const menuButton = element(by.xpath('/html/body/ion-app/ng-component/ion-nav/page-home-tutor/ion-header/ion-header/ion-navbar/button[2]'));
// const navigateTo = navigateToPage() => {
 // return browser.get()
//}

const login = () => {

};

describe('Navigation test', function () {



  it('Logging in to the Tutor page', async function () {



    browser.get('http://localhost:8100/#/login');




    inputEmail.sendKeys('');

    inputPassword.sendKeys('');

    loginButton.click();

    browser.sleep(6000);

    //const EC = protractor.ExpectedConditions;

    //browser.wait(EC.elementToBeClickable(elm), 15000);

    await browser.executeScript('arguments[0].click()', elm);

    //menuButton.click();
    browser.sleep(6000);
    // element(by.css('ion-header button')).click();
    elm.click();

    //element(by.xpath('/html/body/ion-app/ng-component/ion-nav/page-home-tutor/ion-header/ion-header/ion-navbar/button[1]')).click();
    // element(by.css('body > ion-app > ng-component > ion-nav > page-home-tutor > ion-header > ion-header > ion-navbar > button.bar-buttons.bar-buttons-md.bar-button.bar-button-md.bar-button-default.bar-button-default-md.bar-button-menutoggle.bar-button-menutoggle-md > span > ion-icon')).click();
    //element(by.css('session-item button')).getText('BEGIN').click();
    //browser.sleep(6000);
    //body > ion-app > ng-component > ion-nav > page-home-tutor > ion-header > ion-header > ion-navbar > button.back-button.bar-button.bar-button-md.back-button-md.bar-button-default.bar-button-default-md


    expect(element(by.css('page-home-tutor p')).getText()).toEqual('COMPLETED SESSIONS');
   // ((expect(page.getParagraphText()).toEqual('Welcome to app!');
  });



});

这些注释是我测试过的代码,以查看是否有效,但无济于事。

我要测试的按钮:

Button

button code

我应该做什么,或者我应该添加或采取什么措施才能使其正常工作?

javascript html angular ionic-framework protractor
1个回答
0
投票

尝试一下:-

let elem = element(by.css('.bar-button-menutoggle'));
browser.sleep(6000);
elem.click();
© www.soinside.com 2019 - 2024. All rights reserved.