gpt4 book ai didi

c# - Atata:无法找到 CheckBox 元素

转载 作者:行者123 更新时间:2023-11-30 22:56:33 26 4
gpt4 key购买 nike

当我在 CheckBox 元素上使用 [VerifyExists] 时收到错误消息,尽管当我使用通过我可以找到元素的框架。

错误信息:

Message: OpenQA.Selenium.NoSuchElementException : Unable to locate element: By.XPath: .//*[normalize-space(@id) = 'active-checker']/descendant-or-self::input[@type='checkbox']

实现:

[VerifyExists]
[FindById("isCommentRequred-checker")]
public CheckBox<_> RequestsWorklogCommentCheckBox { get; private set; }

手动搜索元素:

enter image description here

最佳答案

我猜这是因为实际 <input type="checkbox">在页面上不可见(或有 opacity: 0 )。默认情况下,大多数控件的 Atata 在控制元素搜索期间按可见性过滤元素,并仅保留可见元素。

尝试设置Visibility = Visibility.Any :

[FindById("isCommentRequred-checker", Visibility = Visibility.Any)]

通常复选框和单选按钮不可见,其他元素呈现它并接收点击。只需检查 HTML,然后尝试使用 Atata 或纯 WebDriver 单击它。如果它抛出异常,您可能需要为它实现自定义控件才能单击,例如 span.control-label。元素。

这里是 Kendo UI CheckBox 的控件示例:https://github.com/atata-framework/atata-kendoui/blob/master/src/Atata.KendoUI/KendoCheckBox%601.cs

关于c# - Atata:无法找到 CheckBox 元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54367669/

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