Selenium 验证picklist是可被正确选中且是有序的(动态数组赋值)
原代码:
<select id="edit-submitted-im-interesting-in" class="form-select required" name="submitted[im_interesting_in]"> <option value="1">Cloud Testing</option> <option value="2">Embedded System Testing</option> <option value="3">Globalization Testing</option> <option value="4">Offshore Test Center</option> <option value="5">System Integration Testing</option> <option value="6">Test Automation</option> <option value="7">Function Testing</option> <option value="8">Mobile Testing</option> <option value="9">Cloud Services</option> <option value="10">SKYPALACE</option> <option value="11">Mobile Test Automation</option> <option value="12">Test Automation Framework</option> <option value="13">IaaS Cloud Enablement</option> <option value="14">Desktop Virtualization</option> <option value="15">Others</option></select>
Selenium Java版代码:
int i=0;
String c =
"Cloud Testing,Embedded System Testing,Globalization Testing,Offshore Test Center,System Integration Testing,Test Automation,Function Testing,Mobile Testing,Cloud Services,SKYPALACE,Mobile Test Automation,Test Automation Framework,IaaS Cloud Enablement,Desktop Virtualization,Others";
String[] ptext = c.split(",");
//将期望的Picklist 下拉选项值赋值给一个数组。
Select sel =new Select(driver.findElement(By.xpath("//*[@id='edit-submitted-im-interesting-in']")));
//用Xpath定位到该picklist.
for(i =0;i<15;i++)
{
sel.selectByVisibleText(ptext[i]);
//用selectByVisibleText()方法将目标的picklist找到,ptext[i]是数组的值,是一个变量,ptext[i]不要加“”。
String a =driver.findElement(By.xpath("//*[@id='edit-submitted-im-interesting-in']")).getAttribute("value");
//获取你找到的picklist的显示值,此处返回的是一个叫value属性的值,不是picklist文本
assertEquals(ptext[i],driver.findElement(By.xpath("//option[@value='"+a+"']")).getText()); }
//将找到的picklist的显示文本与目标文本比较,a是一个变量,注意其格式,a不要直接加“”。
System.out.println("03.can be selected successfully.");
//以上代码是验证picklist每一项能被正确选择。
String[] ptext2=new String[15];
for(i =0;i<15;i++)
{
sel.selectByIndex(i);
//依次选择picklist
String a =driver.findElement(By.xpath("//*[@id='edit-submitted-im-interesting-in']")).getAttribute("value");
ptext2[i]=driver.findElement(By.xpath("//option[@value='"+a+"']")).getText();
将picklist的文本值赋给一个数组
if(!ptext[i].equals(ptext2[i]))
{
break;
}
//比较两个数组 // ptext2.equals(ptext);也可以直接比较两个数组
//以上验证picklist是和期望结果一样有序排列的。
}
Selenium 验证picklist是可被正确选中且是有序的(动态数组赋值)的更多相关文章
- ajax验证表单元素规范正确与否 ajax展示加载数据库数据 ajax三级联动
一.ajax验证表单元素规范正确与否 以用ajax来验证用户名是否被占用为例 1创建表单元素<input type="text" id="t"> 2 ...
- 无法定位 Local Database Runtime 安装。请验证 SQL Server Express 是否正确安装以及本地数据库运行时功能是否已启用。
错误描述: 在与 SQL Server 建立连接时出现与网络相关的或特定于实例的错误.未找到或无法访问服务器.请验证实例名称是否正确并且 SQL Server 已配置为允许远程连接. (provide ...
- array.fliter无法正确过滤出我想要的数组
var checked_list = state.files.filter(function(item, id){ // console.log('click the ' + item.id); re ...
- selenium验证车贷计算器算法
1.验证页面上的车贷计算器算的结果是否与需求中给的公式结果一致. 页面图片: 代码如下(简单实现,需要优化): package com.test; import java.math.BigDecima ...
- js&jquery验证邮箱和手机号是否正确范例
实现源码: <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> ...
- [Selenium]验证点了某个Button之后无反应
期望:点了某个Button,无反应 问题:怎么去验证无反应 WebElement webElement = page.getICORemove(); SeleniumUtil.hover(page.g ...
- php 验证(检查)日期格式是否正确
/** * 检查指定字符串是否为日期格式 年-月-日 * @param $date 日期字符串 * @return bool true 是日期格式 false 不是日期格式 */function va ...
- java selenium验证元素是否存在
public boolean ElementExist(WebDriver driver,By locator) { try { driver.findEle ...
- log4net截取配置错误信息,(验证配置信息是否配置正确)
在</system.web>之后 <!--log4错误日志配置:开始--> <system.diagnostics> <trace autoflush=&qu ...
随机推荐
- c语言, objective code(new 2)
参考: 1. C中的继承和多态 http://www.cnblogs.com/skynet/archive/2010/09/23/1833217.html
- Ubuntu下使用sshfs挂载远程目录到本地(和Windows挂载盘一样)
访问局域网中其他Ubuntu机器,在不同机器间跳来跳去,很是麻烦,如果能够把远程目录映射到本地无疑会大大方面使用,就像Windows下的网络映射盘一样.在Linux的世界无疑也会有这种机制和方式,最近 ...
- 基于visual Studio2013解决C语言竞赛题之1056素数序列
题目 解决代码及点评 /* 56. 编程序求3至39之间满足下列条件的各组素数:每组有3个素数,第2个比第一个大2,第3个比第2个大4.例如 5,7,11就是满足条件的一组. 要求: ...
- 浅析嵌入式Linux系统的构成和启动过程
在我们的周围,大量的嵌入式设备都是基于Linux系统来构建的,嵌入式Linux与主机Linux相比有着自己的一些特点,本文就嵌入式Linux系统的构成和启动过程做一些总结. 一.嵌入式Linux系统构 ...
- Design Pattern Chain of Reponsibility 责任链模式
本程序实现一个责任链模式查询人名的资料. 開始都是查询第一个人,问其是否有某人的资料,假设有就返回结果,假设没有第一个人就会询问第二个人,第二个人的行为和第一个人的行为一致的,然后一致传递下去,直到找 ...
- Linear Regression(线性回归)(二)—正规方程(normal equations)
(整理自AndrewNG的课件,转载请注明.整理者:华科小涛@http://www.cnblogs.com/hust-ghtao/) 在上篇博客中,我们提出了线性回归的概念,给出了一种使代价函数最小的 ...
- hdoj 2066 一个人的旅行 【多源多汇最短路】
题目:hdoj 2066 一个人的旅行 方法:缩点 + 最短路 分析:看了大神的一篇博客,讲冗余压缩的,然后就想找一个多源最短路练练手. 这个题目就是典型的多源多汇最短路 方法:把全部的源点压缩成一个 ...
- 最近遇到VS2013,在打开解决方案时,报如下错误: 未找到与约束
最近遇到VS2013,在打开解决方案时,报如下错误: “未找到与约束 ContractName Microsoft.Internal.VisualStudio.PlatformUI.ISolution ...
- poj 3623 Best Cow Line, Gold
题目不算难,但是不认真想的话很容易wa,我就是wa了多次才意识到自己想法存在的缺陷. 相同的时候往后找知道出现不相同时,只能判断出当前字符的优先顺序. 这个题目如果朴素的按照这种方法做的话复杂度其实是 ...
- 在toolbar里动态创建多个button(ext.net)
private void setOneMenu() { string sql = "select id,name,gids from Config where name<>'高级 ...