gpt4 book ai didi

java - 无法断言我刚刚填写的字段

转载 作者:行者123 更新时间:2023-12-01 09:53:39 26 4
gpt4 key购买 nike

我正在测试一个小部件,我必须在其中输入 from(van) 和 To(naar) 字段才能获取行进路线。 “收件人”和“发件人”字段是 JavaScript 并在输入 3 个字符后自动完成。选择位置后,我想断言所选位置确实位于“收件人”或“发件人”字段中。但是,如果我尝试使用 assertEquals 脚本断言这一点,它会告诉我该字段中没有数据。这是一些页面代码和我用来测试它的代码。

enter image description here

这是 html From 输入字段:

<input id="van" class="textfield" type="text" data-reactid=".0.1.1.0.1.0.0.1.0" value="" tabindex="0" required="" placeholder="Place" autocomplete="off" aria-label="Van"></input>

这是我在输入字段中输入文本并选择第二个可用选项的方法:

driver.findElement(By.id("van")).clear();

driver.findElement(By.id("van")).sendKeys(Ams);

它现在向我显示了一些包含阿姆斯特丹的选项,我选择了第二个选项:

driver.findElement(By.xpath("//div[@class='autocomplete-dropdown']/ul/li2")).click();

如果我看屏幕,它现在会显示以下内容

enter image description here

我现在想断言“发件人”字段包含我刚刚选择的内容(阿姆斯特丹、北荷兰省)。我通过以下方式做到这一点:

assertEquals("Amsterdam, Noord-Holland", driver.findElement(By.id("van")).getText());

但这会导致:

org.junit.ComparisonFailure: expected:<[Amsterdam, Noord-Holland]> but was:<[]>

如果我检查它显示的元素:

<input id="van" class="textfield" type="text" data-reactid=".0.1.1.0.1.0.0.1.0" value="" tabindex="0" required="" placeholder="Place" autocomplete="off" aria-label="Van"></input>

看来 ComparisonFailure 是正确的,但我不明白为什么我无法断言我在屏幕上看到的内容。

我正在使用 Java、Selenium 和 Eclipse 对此进行测试。

最佳答案

您好,请按照下面的方式操作

在断言中这样做

driver.findElement(By.id("van")).getAttribute("value"); 

// please note when you want
to check the value entered by you inside the input box then do not use getText()
as it returns inner visible html of the tag
So to get the value there is a hidden attribute for every input box known as "value"
which keeps value entered by you.

希望这对您有帮助,谢谢

关于java - 无法断言我刚刚填写的字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37412523/

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