【问题标题】:How do I identify an element in Protractor on a non angular page?如何在非角度页面上识别量角器中的元素?
【发布时间】:2020-02-11 20:48:01
【问题描述】:

我是 Protractor 的新手。我正在使用 Jasmine 和 Visual Studio Code。 我的非角度页面上有以下内容要针对 2 个不同的按钮进行测试:

<span id="2-1-9294160_2_1_" class="PlaceBet Bet" onclick="addSingleBetToSlip(event);" bet-event-id="2-1-9294160" bet-event-number="1117" bet-event-startdatetime="2020/02/11 10:48:00" bet-event-starttime="10:48" bet-event-typename="DashingDerby" bet-marketclassname="Place" bet-selectionid="1" bet-odds="2.16" bet-display-description="1. Chilli Bean">2.16</span>

<span id="2-1-9294693_1_4_" class="WinBet Bet" onclick="addSingleBetToSlip(event);" bet-event-id="2-1-9294693" bet-event-number="1129" bet-event-startdatetime="2020/02/11 11:36:00" bet-event-starttime="11:36" bet-event-typename="DashingDerby" bet-marketclassname="Win" bet-selectionid="4" bet-odds="3.79" bet-display-description="4. Gladiator">3.79</span>

我可以使用的唯一独特元素是:

bet-event-typename="DashingDerby"
bet-marketclassname="Win" 
bet-selectionid="4"

如何在 Protractor 中找到/单击这些元素?我已经尝试了以下所有方法,但它给出了错误消息:

    //element(by.bet-selectionid('4'), by.bet-marketclassname('Place')).click();
    //browser.driver.findElement(by.bet-selectionid('4')).click();
    //element.span(by.bet-selectionid('4')).click();
    //element(by.css('.bet-selectionid > span'('4'))).click();
    //element(by.xpath("//span[.bet-selectionid('4')")).click();
    //element(by.tagName('.bet-selectionid('4')')).click();
    element(by.css("#bet-selectionid('4')")).click();

【问题讨论】:

  • 这不是“非角度页面”问题。

标签: jasmine protractor


【解决方案1】:

async函数中:

let element = element(by.css('[bet-selectionid="4"]'));
await element.click();

建议你看看CSS selectors

【讨论】:

    【解决方案2】:

    非常感谢。在你指引我正确的方向之后,我得到了正确的结果:

    browser.wait(function() { 
    return element(by.css('[bet-event-typename="DashingDerby"][bet-marketclassname="Place"][bet-selectionid="9"]')).isPresent(); 
    }, 5000); 
    
    element(by.css('[bet-event-typename="DashingDerby"][bet-marketclassname="Place"][bet-selectionid="9"]')).click();
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-06-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多