http://blog.chinaunix.net/u/13637/showart_1332752.html
(最近在用selenium测试,现在要测试一下样式,苦于不知道怎么测,终于找到了一篇文章,先转载过来看下再说,好了留下,不好了删了)
selenium在ui测试中应用很普遍,对简单的website界面墨盒测试使用记录和回放就能满足要求了,但对一些较复杂的操作比较和验证就相对较难些。因为中文资料不多,英文资料也比较抽象。所以使用它来测试要看的东西也很多。
这次主要遇到一个问题,让验证当前选中的div块背景为blue.
<div id="app-info-item" class="selected-item">xxx</div>
bases-view.css
.selected-item {
background-color: #6CA3D1;
}
要验证div id="app-info-item">块的背景色为#6CA3D1;就需要用javascript调用块的样式属性。使用方法为:insert new command:rgb(108, 163, 209)
command: verifyExpression
target :
javascript{ selenium. browserbot. getCurrentWindow( ) . getComputedStyle( this. page( ) . findElement( "xpath=//div[@id='app-info-item']" ) , '' ) . getPropertyValue( 'background-color' ) . toLowerCase( ) }
value : #6CA3D1
sdfasdf
在side中执行这个command,说rgb(108, 163, 209)与#6CA3D1不同,验证失败。驱g上网,发现原来这段javascript代码在firefox中生成的颜色表示是rgb(x,y,z);在ie中是#xxxx形式。使用firefox的colorzilla插件,获取这个颜色的rgb表示。
要注意的是,如果在style中使用复合值的话,要分开来取值。
继续上面的例子。
<div id="header"></div>
bases-view.css
#div#header{
background:#578FC0 url(/images/radar-logo.gif) no-repeat scroll 98% center;
}
我们在selenium中要检验radar-logo.gif, 或检验#578FC0, 或其他属性,应该怎么写表达式呢?
呵呵,要写对应的属性名,
如取背景图像
url(/images/radar-logo.gif), 要使用
getPropertyValue('background-image')
要取背景颜色
#578FC0, 使用
getPropertyValue('background-color')
以取图像为例:
注意深红色文本,与上面有所不同,我这样试过,可用。
target:
javascript{ selenium. browserbot. getCurrentWindow( ) . getComputedStyle( this . page ( ) . findElement( 'xpath=//div[@id=\'header\']' ) , '' ) . getPropertyValue( 'background-image' ) }
|
分享到:
相关推荐
Selenium 操作隐藏的元素(Python+Java) ...通过使用 JavaScript 代码修改元素的样式,我们可以使隐藏的元素可见,从而能够使用 Selenium 操作这些元素。希望本文能够对大家的学习和工作提供一定的参考价值。
3. **CSS选择器定位**:CSS选择器允许你通过元素的CSS样式属性来定位,比如`driver.findElement(By.cssSelector("input#someId"))`也是找到ID为'someId'的input元素,但这种方法更加灵活,可以处理更复杂的选择条件...
selenium之元素定位,共八种定位方法,以百度搜索框为例子进行讲解
### Selenium八种定位元素详解 #### 一、引言 Selenium是一款强大的自动化测试工具,广泛应用于Web应用的测试工作中。在使用Selenium进行自动化测试的过程中,定位网页元素是核心任务之一。Selenium提供了多种定位...
请注意,即使元素显示为不可见(如设置`style="display:none"`),`is_displayed()`也可能返回True,因为它只检查元素在CSS样式中的可见性,而不考虑实际的屏幕展示。因此,在某些情况下,可能需要进一步检查元素的...
CSS选择器是另一种在Selenium中进行元素定位的方式,使用CSS选择器能够通过元素的样式信息来精确定位元素。例如: ```java WebElement element = driver.findElement(By.cssSelector("input#username")); ``` 使用...
本文讲解了使用Python语言结合Selenium库来获取网页中一组元素的属性值的具体操作方法。Python是一种广泛使用的高级编程语言,非常适合于数据处理和自动化脚本编写。Selenium则是一个用于自动化Web应用程序测试的...
"WebSelenium_页面和元素封装"这个主题着重讨论的是如何在Selenium测试框架中有效地管理和操作网页的各个元素,以及如何通过页面对象模型(Page Object Model)进行代码的封装和维护。 页面对象模型是一种设计模式...
Java开发案例-springboot-44-整合Selenium访问百度-源代码+文档.rar Java开发案例-springboot-44-整合Selenium访问百度-源代码+文档.rar Java开发案例-springboot-44-整合Selenium访问百度-源代码+文档.rar Java开发...
Selenium 对 Flex 程序的自动化测试 Selenium 是一个自动化测试工具,它可以模拟用户的行为来测试 Web 应用程序。Flex 是一种基于 XML 的开发语言,用于构建 Rich Internet Applications(RIA)。在这篇文章中,...
- **步骤**:在 Firefox 浏览器中访问“附加组件”商店,搜索并安装 Selenium IDE 插件。 - **推荐辅助工具**:为了更好地使用 Selenium IDE,推荐安装 FireFinder、FirePath、XPath Finder、XPath Checker 和 ...
在编写Selenium脚本时,你会学习到如何定位网页元素,例如输入框(用于输入待翻译的文本)和按钮(用于触发翻译)。这通常涉及到CSS选择器、XPath或其它定位策略。接着,你需要模拟用户行为,如输入文本,找到并点击...
在 Selenium WebDriver 中使用 By.Xpath 快速定位页面元素可以实现多属性定位一个元素。例如,在登录页面密码框定位中,可以使用 By.Xpath 来定位密码框,然后进行清空和输入密码操作。 使用 By.Xpath 定位页面元素...
selenium selenium selenium selenium selenium selenium selenium selenium selenium selenium selenium selenium selenium selenium
https://blog.csdn.net/Dolphin202006/article/details/109439635 博客附件
Selenium:Selenium定位元素策略详解.docx
1. **下载 Selenium**:访问官方网站 [http://www.openqa.org/selenium/](http://www.openqa.org/selenium/) 下载 Selenium-RC 的版本。 2. **学习 XPath**:XPath 是一种用于查找 XML 文档中信息的语言。由于在许多...
这些元素往往存在于网页的DOM树中,但它们的CSS样式被设置为`display:none`或者它们的父元素设置了类似的隐藏属性,导致这些元素在页面上不可见。对于这种情况,我们可以通过Selenium提供的方法来查找并操作这些隐藏...