【发布时间】:2016-10-07 04:59:23
【问题描述】:
我正在尝试使用 Chrome、Selenium 和 c# 在 Sitecore 8.1 中运行一些自动化测试。我的代码不想在 Sitecore 页面中找到任何元素,尤其是体验编辑器。 我遇到了“无法定位元素”警告。
例如:我想要的项目 .Click() 是工具栏功能区按钮,用于显示工具栏菜单。 这是元素:
<a data-sc-id="QuickRibbon" data-sc-click="trigger:button:toggleshow" data-sc-command="" data-sc-сontrolstaterequest="" data-sc-controlstateresult="" data-sc-postponedcall="" data-sc-ispressed="false" class="sc-quickbar-item sc-quickbar-button sc_QuickbarButton_53 data-sc-registered" title="Toggle the ribbon." data-sc-pagecodescriptfilename="" data-bind="ispressed: isPressed, visible: isVisible, click: click, command: command, enabled: isEnabled" data-sc-require="/-/speak/v1/ribbon/QuickbarButton.js" href="#" style="float:right"><img src="/sitecore/shell/client/Speak/Assets/img/Speak/Common/16x16/white/navigate_down.png" alt="Toggle the ribbon."></a>
这是它的 XPath:
/html/body/div/div/div[1]/nav[1]/a[3]
我已延长等待时间以使其可见,因为加载这些页面可能需要几秒钟。但这不起作用。
我试过了:
driver.FindElement(By.XPath("/html/body/div/div/div[1]/nav[1]/a[3]/img")).Click();
这给了我“无法定位”的错误
driver.findElement(By.className("class="sc-quickbar-item sc-quickbar-button sc_QuickbarButton_53 data-sc-registered"")).Click();
这给了我一个关于无法使用复合类名的错误。
我已经尝试了很多其他选项/组合来尝试获取替代文本等,但我就是无法获取元素。
有什么想法吗?如果您需要更多信息,请告诉我。
谢谢
【问题讨论】:
标签: c# selenium automation sitecore