我正在测试一些角度页面,如截图中所示。我尽力找到合适的定位器从下拉列表中选择一个值但失败了。在Java Selenium中,它曾经被xpath用作driver.findElement(By.xpath("//li[@role='option']//contains(text(),'"+valToBeSelected+"')].click()
。我应该在量角器中使用什么?
这是元素源的截图,我试图复制源代码,但它似乎非常大。对不起,我必须拍三张截图,请使用绿色推荐行作为分隔符。
然后是<div role="options" ...>China</div>
,<div role="options" ...>Chad</div>
等列表,
答案 0 :(得分:1)
点击a
元素打开选择框:
element(by.xpath("//a[span = 'Please select your country of residence']")).click();
然后,按文字找到所需的下拉元素:
element(by.xpath("//li[@role='option' and .//div[. = 'Algeria']]")).click();
这里肯定有其他选项/定位器,但检查和依赖元素文本至少会有可读性奖励。
答案 1 :(得分:0)
将鼠标移到这些HTML元素上,直到找到蓝色的下拉列表,并使用该蓝色区域抓取选择器。
从我所看到的,它看起来像是“ui-select-choices-group&#39; maaaay就是其中之一。
所以你要使用CSS速记选择器:
var dropdown = $('.ui-select-choices-group');
然后访问in中的值:
dropdown.$('[value="Algeria"].click();
// Or
$('.ui-select-choices-group').$('[value="Algeria"]').click()
看看是否有效。这个选择器可能是正确的,但是如果没有打开HTML和浏览器,并且将鼠标悬停在代码页中的html元素上以查看突出显示的内容,就很难告诉我。