多测师讲解自动化测试 _RF面试题_高级讲师肖sir


环境搭建过程?--整套环境需要哪些工具包,以及工具包的作用?
你好,我说一下之前搭建自动化环境的过程,我之前搭建自动化环境时主要是基于RF框架搭建的,然后搭建环境涉及到的工具我说一下,主要有:
python因为RF框架是基于Python语言的,所以一定要有Python语言的环境
RF源码包Robot Framework 是一款基于 Python 的功能自动化测试框架。它具备良好的可扩展性,支持关键字驱动,可以同时测试多种类型的客户端或者接口,可以进行分布式测试执行。主要用于轮次很多 的验收测试和验收测试驱动开发(ATDD)。
在我们进行全球化测试的时候可以用此框架来编写一些脚本任务,如定时下载 daily build , 配合 Selenium 完成自动化截图等,来方便我们的测试。
WxpythonWxpython是一款开源软件,同时也是Python 语言非常有名的一个GUI 库,因为RIDE 是基于这个库开发的,所以这个必须安装
ride源码包robot脚本的编辑器,就像sublime,eclipse一样,可以用于编写代码,运行的一个图形化工具,是一款专门用来编辑Robot Framework用例的软件,用Python编写并且开源。
Setuptools是一款第三方增强工具,当需要安装第三方python包时,可能会用到easy_install命令,使用easy_install实际上是在调用setuptools来完成安装模块的工作。
Selenium2library(第三方库) Selenium2Library实质上是一系列方法的封装,这些封装好的方法以接口的方式提供给RIDE,供自动化测试调用。

之后的话就是搭建的流程
1) 首先是安装Python,因为RF框架是基于Python语言的,所以一定要有Python语言的环境,然后是环境变量设置,根据自己的实际路径设置坏境变量成功,在dos中输入python会出现你此次安装的python 版本;
2) 之后是安装rf源码包,先解压,dos窗口进入到解压后的目录里找到setup.py文件,用pythonsetup.py install命令去执行安装操作(确认是否安装成功,可以在Python27Libsite-packages看到 robotframework-3.0.2-py.egg-info或者robotframework-3.0-py.egg文件夹)
3) 接着安装wxpython(GUI库),wxpython是python变成语言的一个GUI工具箱,也就是图形用户界面工具箱,在我们的rf环境中是用来运行RIDE的,exe/msi执行文件双击默认安装即可(安装完成后:Python27Libsite-packages路径下会有一个wx-2.8-msw-unicode文件夹);
4) 之后是安装RIDE,RIDE是一款专门用来编辑rf用例的可视化图形工具,安装步骤为将RIDE源码包解压后在dos窗口进入到该目录找到setup.py文件,用python setup.py install命令去执行安装操作,安 装成功后要在DOS中输入Pythonride.py验证ride是否安装成功(ride安装成功,会在Python27Scripts下生成一个ride.py文件de文件夹);
5) 然后是生成桌面快捷方式,鼠标右键桌面空白处新建快捷方式,在目标中输入Python27pythonw.exe -c "from robotide import main;main()",之后右键该快捷图标选择属性里的更改图标,输入: D:Python27Libsite-packages obotidewidgets obot.ico,选择机器人图标完成更改,双击图标打开RIDE,至此完成rf自动化测试环境的搭建。
6)接下来是安装setuptools,要解压源码包,实际操作跟第二步和第四步是一样的,在dos里面进行安装
7)之后是安装第三方的库
安装easy_install,在dos中进入到Python目录下的scripts,找到easy_install-2.7-script.py,然后执行安装命令,pythoneasy_install-2.7-script.py pip,安装完以后执行升级pip命令:python-m pip install--upgrade pip,升级完毕以后执行以模块启动python的文件命令:python -m pip installrobotframework-selenium2libarary,安装成功后,Python路径下会有selenium2library文件夹
执行安装request命令:python -m pip install requests,安装成功后接着执行 python -m pip installrobotframework-requests。
再接下来安装pymysql:python -m pip install pymysql
然后安装databaselibrary:python -m pip install robotframework-databaselibrary,这是最后一个了,安装就结束了
8)加载第三方库,打开桌面我们刚刚创建的快捷方式,然后在里面新建一个工程,再在工程里面新建一个资源,然后我们需要选择库,Selenium2Library,加载成功了显示黑色,如果没成功就是红色
9) 接下来把谷歌驱动放到Python目录下的scripts目录里,然后在资源里新建一个case,填写open browse关键字后看能否打开网页,如果能打开,那么这次安装就成功了

3、搭建过程中遇到什么问题?你是如何分析最终如何解决的?
1)安装ride,ride.py启动后报错,说是找不到wxpython,经过一番检查后发现原来Wxpython的版本不对,我之前装的Python是64位的,但是我安装的wxpython是32的,因为版本问题导致报错,后面重新 下载了一个64位版本的wxpython安装就可以了。
2)之前wxpython是安装成功了,但是会存在中文乱码的问题,这里卡了好久,后来向同事请教还有上网百度后发现,Python中的格式是unicode,但是wxpython的版本和这个对不上,存在中文乱码的问题, 后来重新下载了一个版本重新安装就可以了,所以在安装过程中要特别注意检查相对应的版本问题。
3)导入库的时候没注意大小写,然后一直是飘红,导入不成功。
1.2个error 显示没有robat文件
这个往python目录中的script加入一个bat文件即可 网上有
2.过卡
没有删除进程 先在前面删除进程
3.没有log日志
进程过多,删除进程 每次开启用例的时候都删除进程
4.闪退
浏览器的driver文件版本不行 换一个最新的
5.先是运行用例显示acsii 不能decode
在site-packages 下新建
sizecustomize.py 配置utf-8编码
import sys
if sys.getdefaultencoding() != 'utf-8':
reload(sys)
sys.setdefaultencoding('utf-8')
4、RF框架的原理?
RF框架是一款Python编写的自动化框架,它具备良好的扩展性,通过关键字驱动来实现自动化,可以同时测试多种类型的客户端或者接口,可以进行分布式测试执行。主要用于轮次很多的验收测试和验收测 试驱动开发(ATDD)。

5、编写用例中遇到过哪些定位问题?简单的描述一下整个过程?--依托自己的项目
1)印象最深的是在测登录的时候,因为做出借项目的时候涉及到第三方资金存管,刚开始登录成功的时候会跳出弹框,所以在写用例的时候设计了自动点击取消,当我要测试资金管理模块,注册了银行存管 账户并绑定了银行卡,所以在我再去测试资金模块的时候一直在报错,登录之后就无法执行下一步,后来经过仔细排查后发现这个问题,把那个点击取消的步骤删除后就可以正常执行了。
2)还有一次在测试信息认证中修改客户信息时,定位信息认证一直无法定位,后来放弃了在原位置定位,用mouse over的方法在我的账户悬停框中定位到信息认证。

原文地址:https://www.cnblogs.com/xiaolehua/p/13869527.html