gpt4 book ai didi

javascript - Protractor - 单击具有特定文本跨度的 div 中的按钮

转载 作者:行者123 更新时间:2023-11-28 01:27:32 24 4
gpt4 key购买 nike

我在点击 Protractor 中的按钮时遇到问题。简化的代码如下所示:

<div class = "container">   
<div class = "col1">
<span class = "hour">12:00</span>
</div>

<div class="col2">
<button class="btn">Test</button>
</div>
</div>

<div class = "container">
<div class = "col1">
<span class = "hour">13:00</span>
</div>

<div class="col2">
<button class="btn">Test</button>
</div>
</div>

我想单击 div 中的一个按钮,它的跨度为“12:00”。条件必须检查小时。

我可以很容易地检查跨度

by.xpath('//span[contains(text(), "12:15")]')

我主要关心的是选择具有此跨度的父 div 的按钮。这可能吗?谢谢。

最佳答案

我也有类似的情况。但我只需要从 DOM 中提取一个值并将其与预期结果进行比较,它看起来像这样:

records = await targeting_page.records.getText();
recordsNumber = parseFloat(records.replace(/,/g, ''));
recordsRange = recordsNumber >= 100 && recordsNumber < 90000000;
await expect(recordsRange).toEqual(true);

但你的场合差别不大。

那是我在您问题的这一页上在浏览器控制台中写的内容

    async function fin() {
for(var i = 0; i < 100; i++) {
var myElement = document.querySelector("code span:nth-child(27)").textContent //your find your desired element
console.log(b)
typeof b == 'string' ? console.log(true) : console.log(false) //this is optionally

var res = parseFloat(b) //parse when it will be 12:00 you will get the 12 number
console.log(res)
res == 13 ? await b.click() : console.log("The button is not ready yet") //and here compare is there that number you need, if yes then click element(this doesn't work in console,
// if you use async/await in your protractor tests, there are it will work
}
}

fin()

这就是本页直接涉及的内容。在测试中,它看起来像这样(它可以更好,但我起草得非常快):

for(let i=0; i < 100; i++) {
var myE = await myElement.getText(); //where myElement -- your selector
var myNumber = parseFloat(myE.replace(/:/g, '')); // parse and get 12 out of "12:00"
if (myNumber == 12) {
await myElement.click()
} else {
console.log("The button is not ready yet")
}
}

关于javascript - Protractor - 单击具有特定文本跨度的 div 中的按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51156804/

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