首页 > 解决方案 > 如何在非角度页面上识别 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"

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

    //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();

标签: jasmineprotractor

解决方案


异步函数中:

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

我建议你看看CSS 选择器


推荐阅读