【问题标题】:Get css value by CSS and use in Selenium通过 CSS 获取 css 值并在 Selenium 中使用
【发布时间】:2012-06-27 13:44:58
【问题描述】:

我尝试获取一些网站属性(单元格的颜色)并在 Selenium 中进行比较。

当我这样说时:

javascript:window.getComputedStyle(document.getElementById("simple_cname"),null).getPropertyValue("background-color");

在 Chrome Omnibox 中,我收到了正确答案,但是当我通过使用 storeEval 或 assertEval 尝试获取此值时,它无法正常工作。
编辑: 我把这样的硒命令。我使用 storeEval ,当我回显该值时,它会返回此命令。我使用火狐。我使用 Chrome 只是为了检查命令是否正确。 (应该是 "rgb(220, 22, 92)" ) 编辑2: 是的,该命令没问题,但我在 Selenium-IDE 工具中使用它时遇到问题。当我将它与 storeEval 命令一起使用时,它不会返回该值。 日志: [信息] 脚本是: var test javascript:window.getComputedStyle(document.getElementById("simple_cname"),null).getPropertyValue("background-color");回声测试; [信息] 执行:|echo | ${测试} | | [信息] echo: var test javascript:window.getComputedStyle(document.getElementById("simple_cname"),null).getPropertyValue("background-color");回声测试;


我把这样的硒命令。我使用 storeEval ,当我回显该值时,它会返回此命令。 我使用火狐。我使用 Chrome 只是为了检查命令是否正确。 (应该是“rgb(220, 22, 92)”)

【问题讨论】:

  • 您确定没有将javascript: 部分留在测试用例中吗?您尝试在哪个浏览器中运行代码? Selenium IDE 仅适用于 Firefox,AFAIK... 有任何错误,还是返回空字符串?

标签: javascript css testing selenium selenium-ide


【解决方案1】:

您需要删除javascript: 部分并将document 引用为window.document。该命令将如下所示:

window.getComputedStyle(window.document.getElementById('simple_cname'),null).getPropertyValue('background-color');

javascript: 部分仅在从您的 URL 栏中运行代码时才需要,它是多余的任何地方。在 Chrome 中使用 Console 而不是 Omnibox 来运行 JS 命令。

document -> window.document 的东西在the docsstoreEval 部分下提到。

另外,请注意,您的脚本只能在现代浏览器中运行,它会在 IE Google has the solution。

【讨论】:

  • [信息] 执行:|storeEval | |测试 | [info] 脚本为: [info] 执行:|echo | ${测试} | | [信息] echo: window.getComputedStyle(document.getElementById("simple_cname"),null).getPropertyValue("background-color");
  • 另外,没有<script> :)。只是代码本身。请记住,它不是真正的 HTML 页面,它只是用作程序运行的标记。
  • 起初我尝试不使用
  • 嗯。 window.getComputedStyle(window.document.getElementById("simple_cname"),null).getPropert‌​yValue("background-color"); 呢?
  • 你的 js 代码很好,我用 Selenium 重写了它而不是复制它,它工作了 - 一些编码问题和一个小时的工作。该死。非常感谢您的帮助!
猜你喜欢
  • 1970-01-01
  • 2015-10-15
  • 2011-11-04
  • 2021-04-19
  • 2017-10-24
  • 2020-05-02
  • 2019-01-29
  • 1970-01-01
  • 2011-12-04
相关资源
最近更新 更多