在没有发布 C# 代码和标记页面的情况下,是否有人知道此代码的原因
var link = _driver.FindElement(By.Id(field + "Field"));
var id = link.GetAttribute("id");
var text = link.Text;
给定这个标记
<a id="ForenameField" href="/MyUrl/MyFolder/MyId">3 errors</a>
为文本变量分配一个空字符串,但如果我在第二行或第三行放置断点并检查链接变量,我可以根据检查器上的 Text 属性看到元素的内部文本,它显示为“3 个错误” ,但 text 的值为空字符串。它不是隐藏的,如果我添加手表或使用快速查看,我可以看到文本,有什么想法吗?
好吧,是我不好。使用 jquery 切换包含问题中 html 的 div 上的类,意味着虽然用户看到 div 出现,但隐藏 div 的类仍在标签中。有点像这样
<div class="hideThis showThis"><!-- my elements /--></div>
这使得 Selenium 没有给我一个文本值是正确的。然而奇怪的是,Visual Studio 调试器认为应该有一个值。 Visual Studio 似乎与我所看到的一致,但 Selenium 对于hideThis班级在那里。
我的想法是,如果你看不到它,你就无法与它交互,所以值得从你期望有值的元素中查找 html 图表,以查看是否存在任何会隐藏你的类的类。元素。
请随意建议我删除这个相当明显的智慧。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)