RFS的web自动化验收测试——第8讲 继续未完的数据分离
引言:什么是RFS——RobotFramework+Selenium2library,本系列主要介绍web自动化验收测试方面。( @齐涛-道长 新浪微博) 在前一篇的基础上,我们继续做一下进一步的数据分离。大体上有三种方式,第一种适合和Jenkins集成用的,第二种适合有大量数据的,第三种么只有思路,暂时还未实现,如有朋友能实现的话也欢迎分享一下。一、运行时参数(-v 参数)先
引言:什么是RFS——RobotFramework+Selenium2library,本系列主要介绍web自动化验收测试方面。
( @齐涛-道长 新浪微博)
我搞了个RobotFramework自动化测试公众号
欢迎大家扫一下加入。
这里有最新的安装指南,本文里的版本都比较旧了。
在前一篇的基础上,我们继续做一下进一步的数据分离。大体上有三种方式,第一种适合和Jenkins集成用的,第二种适合有大量数据的,第三种么只有思路,暂时还未实现,如有朋友能实现的话也欢迎分享一下。
一、运行时参数(-v 参数)
先看一下case的脚本:
然后我们改造一下,把url和搜索文字都改成变量。
然后我们选择RUN页面,在Arguments栏输入参数 -v testURL:http://www.baidu.com/ -v searchText:齐涛-老道长,接着运行一下,这个是木有问题的。
作用:这种方式的作用在和Jenkins整合做持续集成的时候非常方便,可以在JOB运行的时候根据传入的参数决定在哪个环境运行。
二、参数文件(-V)
这个和上一个的区别就是一个使用大V,一个使用小v,并且大V的是使用文件的。使用文件的好处就是这里你可以写很多的
我们先增加一下var.py的文件(pyc是运行后自动编译生成的,不用管),内容如图。这里要注意的就是中文字符串前面要加u。还有__all__要列出所有的变量。
另外增加了2个变量,一个是LIST型变量,另一个是使用了一个随机数方法,每次都会生成一个1-10的随机数。接着再改造一下我们的案例,增加2个log,把那2个变量的值打印一下。
接着我们要加载这个var.py文件,这里有几种方式,推荐第一个。
1、在测试套件上使用Add Variables增加var.py进来,因为我的var.py文件就放在案例相同的目录,所以不用写路径了。
2、和刚才的小v在一个地方RUN的这里写,不过要写完整的路径。感觉不如第一种方便,如果不写路径会报错。或许我没找到如何缩短路径的办法。
3、在脚本中使用import variables,这里可以用${CURDIR}代表当前路径,这样比2好一些,不用写那么长的路径。
最后运行一下,可以看到test log里的值已经是使用了var.py文件里的变量值。
三、使用外部excel文件
对于这种方案目前我这里还只是构思,没有代码实现出来,所以只说一下思路。
就是类似于QTP的加载excel差不多,但是我们这里需要使用Python脚本来写excel的读写方法,貌似有个xlrd的库,但是好像还要自己做拓展开发,一直没啥时间去写这个公共方法,加上俺Python经验有限,之前写自己的测试库都是边查帮助边写的,缺乏系统化的学习。如果有朋友有实现的方法,可以提供给我参考一下哈。
实现了excel读写之后,就可以在测试过程中使用外部的excel文件读取数据或写入数据了。
更多推荐
所有评论(0)