c# - Selenium web 驱动程序图标状态识别
问题描述
目前我被困在识别图标的状态。
我有一个图标,它有 2 种状态,锁定和解锁并在单击该图标时更改。我知道通过类名或 X 路径查找元素,但真正的问题是我需要知道图标的当前状态是什么。当我检查图标时,我得到如下代码,但我不知道哪个指的是类的当前状态。
<span class="x-towbook-lock locked" title="Locked by accounting bot1">
<i class="fas fa-lock" onclick="CallsTabs.updateLockStatus(21108183, true, event);"></i>
<i class="fas fa-lock-open" onclick="CallsTabs.updateLockStatus(21108183, false, event);"></i></span>
解决方案
当图标描绘锁定状态时,似乎您已经捕获了 HTML 。
要识别图标的状态,您可以编写一个方法来查找图标状态,您可以使用以下解决方案:
public void FindIconState()
{
String IconClasses = driver.findElement(By.xpath("//span[contains(@class,'x-towbook-lock')]")).GetAttribute("class");
if (IconClasses.Contains("locked"))
Console.WriteLine("Icon state is LOCKED");
else
Console.WriteLine("Icon state is UNLOCKED");
}
现在您可以在程序中的任何位置随时调用此方法:
FindIconState();
推荐阅读
- php - WooCommerce 和 Shippo - Shippo 订单 Obj ID 存储?
- python - 如何将其他文件包含到包中?
- python - 如何将 SWIG 类型图应用于_only_ 特定函数?
- git - 如何使用 git 分支获取新功能
- javascript - 分别陷入 eslint 错误,应避免循环以支持数组迭代
- angular - 我如何通过两种方式将输入的值从数字键盘绑定到输入元素
- country-codes - 台湾语言和国家代码
- javascript - 未捕获的类型错误:无法读取未定义的属性(读取“文本内容”)
- glfw - glfw/glfw3.h':没有这样的文件或目录
- java - Java MockMvc 测试和匹配 Json 字符串