无法让 CSSCount 工作
我试图使用 这篇博客文章。获取 CSS 定位器的计数。但没有用,方法是 -
public static int getCSSCount(String cssLocator) {
String jsScript = "var cssMatches = eval_css(\"%s\", window.document);cssMatches.length;";
return Integer.parseInt(selenium.getEval(String.format(jsScript, cssLocator)));
}
以及方法调用 -
getCSSCount("div[class='team-name'] a");
但我总是遇到以下异常 -
失败: com.thoughtworks.selenium.SeleniumException: 错误:抛出异常: 未终止的字符串文字位于 com.thoughtworks.selenium.HttpCommandProcessor.throwAssertionFailureExceptionOrError(HttpCommandProcessor.java:97) 在 com.thoughtworks.selenium.HttpCommandProcessor.doCommand(HttpCommandProcessor.java:91) 在 com.thoughtworks.selenium.HttpCommandProcessor.getString(HttpCommandProcessor.java:262) 在 com.thoughtworks.selenium.DefaultSelenium.getEval(DefaultSelenium.java:471)
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
我复制了上面给出的代码,它对我有用。我的 cssLocator 是:
"div[class=\'callout\'] a"
。我认为问题是由于提供给 JavaScript 函数的未转义单引号造成的。
I copied the code given above and it worked for me. My cssLocator was:
"div[class=\'callout\'] a"
.I think problem is due to un-escaped single quote supplied to JavaScript function.
这个函数对我来说效果很好...
你的 CSS 标识符似乎有一个轻微的语法问题...
试试这个 -
另外,如果你正在计算的元素包含在 iframe 中,请确保你使用
selenium .selectFrame(...);
在该框架内设置焦点。This function works well for me...
There appears to be a slight syntactical issue in your CSS identifier...
Try this -
Also, if the elements you are counting are contained within an iframe, ensure that you use a
selenium.selectFrame(...);
to set the focus within that frame.