您的位置:首页 > Web前端 > JQuery

RobotFramework Selenium 中调用js和jquery

2014-09-30 09:32 323 查看
 

  在用RFS做自动化测试时,如果调用js和jquery,直接用Execute Javascript 关键字,js代码写上就可以,目前IE浏览器是默认支持的。

 该关键字的介绍是可以直接加javascript代码或者是文件,代码量不大的话,直接用代码就行。

js可以弥补RFS在自动化测试中的不足,典型的就是综合型控件的控制,比如拖动出一块区域来标识时间,或者拖动滑块来设置某个参数。

示例1 :有些页面的滑块都是用了css来进行控制,按照一定的比例显示滑块的位置,那么可以通过直接设置滑块css属性来改变位置。Selenium2Library的基础关键字不行的。



示例2:获取元素的全部属性和值。

Selenium2Library,偏向于应用,比如直接获取指定元素的指定属性值。但是如果有新的需求,比如获取指定元素的所有属性,然后根据属性进行相关操作。那么就比较麻烦了。

直接用javascript返回对象的所有属性和值。

var name;//定义变量,最后返回变量
var cars=new Array();//定义了数组,最终返回的是列表
var person=new Object();//定义了对象,最终返回的字典数据
var lenat;//定义了一个长度变量,为后续进行遍历做参数
lenat = document.getElementById("ac-access-door-add").attributes.length;//获取对应对象属性的长度
if( lenat >0)//如果有属性,那么把对象的属性和值放到字典中并返回,其他情况,可以根据需要自行设置返回值
{
for(i =0;i<lenat;i++){
var item_name;
item_name = document.getElementById("ac").attributes[i].name;
item_value = document.getElementById("ac").attributes[item_name].value;
cars[i]=item_value;//列表值增加
person[item_name]=item_value;//字典值增加
}
}
return person;

${ss}	Set Variable	${attributes['id']}//RIDE中用字典形式访问相关的属性值


示例3:直接调用jquery框架的业务函数

一种典型的应用就是拖动时间段。通过直接该元素css样式时,是无效的,参数必须传到程序里才有效
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: