python语言在自动化测试系统中的应用

python语言在自动化测试系统中的应用

ID:21582573

大小:27.00 KB

页数:6页

时间:2018-10-23

python语言在自动化测试系统中的应用_第1页
python语言在自动化测试系统中的应用_第2页
python语言在自动化测试系统中的应用_第3页
python语言在自动化测试系统中的应用_第4页
python语言在自动化测试系统中的应用_第5页
资源描述:

《python语言在自动化测试系统中的应用》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、Python语言在自动化测试系统中的应用  摘要  自动化测试系统在敏捷开发、持续集成和持续交付中起着非常重要的作用。它对加快新功能发布,缩短现场问题解决时间,提升用户感受度,乃至提高企业竞争力都至关重要。本文结合笔者在自动化测试系统建设中的实践,具体描述了利用Python语言设计完成的基于机器人框架,关键字驱动的案例。最后指出了这套系统进一步改进的方向。  【关键词】自动化测试系统机器人框架(RobotFramework,RF)关键字驱动Python  1自动化测试系统实现简介  笔者参与开发的自动化测试系统,和编译服务器关联,由系统扫描侦测,实现基于某种策略的版本自动

2、下载(最大频度测试,最相关版本测试,如包含本测试组发现的软件缺陷版本优先,或指定版本测试等),然后分发到相应设备,进行版本升级安装,触发测试用例的运行,生成测试报告,发送邮件给项目干系人,更新测试记录等。  自动化测试系统,能实现在第一时间触发测试,能更频繁地测试各个版本,能运行更多、更繁琐的测试,进而在缺陷出?F时及时发现,帮助开发团队缩小缺陷出现的代码范围,便于定位问题,解决问题,这为敏捷开发持续集成,持续发布提供了强有力的支撑。  自动化测试系统,基于机器人框架(robotFramework,RF),RF有丰富的库,使用关键字驱动技术,可以实现循环,选择等逻辑,测试

3、用例中支持变量的使用,测试人员可以创建自己需要的关键字,具有很大的灵活性和可扩展性,可以实现定制的复杂或特殊的功能。ride是RF的编辑工具,测试用例可以用表格输入,使得测试人员以类似于自然语言的方式(关键字)来描述测试用例,即使没有编程基础的测试人员也容易上手,而RF会将关键字转化为测试动作(底层即Python类方法,函数的调用)。  Python是一种面向对象、解释型、跨平台的高级程序设计语言,可以应用于自动化测试,数据分析等众多领域,Python用代码缩进来代替花括号,表示语句块逻辑层次,既使得源程序风格接近,又提高了可读性;Python的类库齐全并且产出率高,实现

4、相同的功能,Python比很多其他语言代码量少,这意味着易维护,出现问题的概率也下降。RF就是一种基于Python的可扩展关键字驱动的通用自动化测试框架。  2Python语言在自动化测试系统中的应用  利用RF编写定制的测试用例,需要开发自己的关键字,编写自定义python库。下文通过一个实例来介绍这个过程。  首先,在python安装目录c:\Python27\Lib\site-packages\下新建一个文件夹NewUE,文件夹名就是库名,然后,在该文件夹内创建一个python文件ueclass.py,代码中定义一个UEClass类,类中定义了一个ue1Behavi

5、or方法,该方法即RF中的新关键字。  在NewUE文件夹内再创建文件名__init__.py文件,RF通过这个初始化文件获取新关键字类。它的类名和库名相同,括号里的类是ueclass.py中定义的类:  fromueclassimportUEClass  classNewUE(UEClass):  ROBOT_LIBRARY_SCOPE='GLOBAL'  自定义的NewUE库就创建好了,在RF的编辑器ride中导入这个库,然后即可使用新创建的关键字。如果要新增关键字ue2Behavior,只要在UEClass类中增加名为ue2Behavior的方法即可。  导入新库,

6、若库名显示为黑色,表明导入成功,若红色则表明导入失败。可以通过在一个python文件中importNewUE来调试,通常可以根据出错消息提示框,排除源文件中的错误。修正错误后,把原来的*.pyc全删除,运行如下命令编译,然后重新导入:  python-mcompileallueclass.py  python-mcompileall__init__.py  如图1所示。  自动化测试系统的理想目标是全自动,在策略和任务定义好后,免予人工干预。为达到这一目标,需要实现RF和其他系统的配合。下文介绍在这套系统中开发的三个重要模块:下载,定制测试报告,邮件分发模块。  编译随时

7、可能完成,系统需要有自动下载功能(关键字Auto_DL)以免浪费时间,基本的过程如下,首先系统处于空闲状态,即还未开始测试或上次测试任务已完成,Auto_DL会定时登录到指定服务器,检测是否有新版本编译完成,并判断该版本是否可用:按上文提及的某种特定的策略选择新版本,判断该版本是否符合自动化测试的最低要求,例如已通过冒烟测试,通过则可下载该版本,退出Auto_DL,触发下一个环节,升级安装该版本。这个过程循环往复,以达到尽快测试符合策略的版本或尽可能多地测试各种版本等目的.本系统用Python自带的标准模块urllib2,re

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。