基于Selenium Robotframework自动化测试

目录

一、安装

二、各种小问题集锦

1、RequestsLibrary 库引入

 2、运行日志输出中文乱码解决

2.1、修改

2.2、 重启ride工具,再运行,结果展示如下:

3、 RequestsLibrary 版本对比

3.1、请求关键字

例如Post Request已经弃用,在0.8版本中用Post On Session替代;

Post On Session关键字:

而在0.9版本中可以只用POST,不需要一个会话时:

 3.2、${resp.json()} 代替 To Json

三、类库及关键字归类

1、Collections库关键字

2、RequestLibrary常用关键字

3、Bullins库关键字


一、安装

1、安装python;安装路径简洁,配置环境变量;

2、setuptools:python安装过程可选择自动安装setuptools,或者,https://pypi.python.org/pypi/setuptools 下载安装

3、pip:python安装过程可选择自动安装pip

3.1、robotframework:安装:pip install robotframework

3.2、wxPython:安装:pip install wxPython

3.3、robotframework-ride:安装:pip install robotframework-ride

3.4、selenium2library:安装:pip install robotframework-selenium2library;说明:selenium2测试库,基于webdriver驱动

3.5、cx_Oracle::安装:pip install cx_Oracle

3.6、databaselibrary:安装:pip install robotframework-databaselibrary

3.7、requests:安装:pip install requests

3.8、RequestsLibrary:安装:pip install -U robotframework-requests

3.9、bs4:安装:pip install bs4

3.10、pytz :安装:pip install pytz

3.11、redis:安装:pip install redis

二、各种小问题集锦

1、RequestsLibrary 库引入

RequestsLibrary库必须在[test suites]即".robot"文件下Settings区域引入:

e5126d5af90c4842b04c53f65b12bf79.png

 2、运行日志输出中文乱码解决

a6e69bbf4f894158968ff2e4f923714e.png

2.1、修改

python安装目录:

C:\python\Lib\site-packages\robotide\contrib\testrunner下的testrunnerplugin.py文件;修改第565行, encoding[‘SYSTEM’]) 改为 encoding[‘OUTPUT’])

1b9c6353940c461f916ae824d6255ede.png

2.2、 重启ride工具,再运行,结果展示如下:

f7fa761f80fe4aa796bf996c3a10b740.png

3、 RequestsLibrary 版本对比

RequestsLibrary当前最新版本为0.93版本,适配python2.x和python3.x:

安装命令:

pip install robotframework-requests

与历史v0.8版本相比,0.9的版本兼容了0.8版本的功能,并更进一步优化。

主要改变在以下方面:

3.1、请求关键字

所有请求关键字都已被重写,并在不久的将来允许在没有会话的情况下请求关键字。旧关键字* Request现已弃用,并将在 1.0.0 版本中删除。

例如Post Request已经弃用,在0.8版本中用Post On Session替代;

8a749ec991844a4dabd7549f841efa09.png

Post On Session关键字:

4233ed77f380489aa9411f3bd5252249.png

 状态码上的隐式断言:Post On Session如果返回错误状态码,关键字会自动失败。expect_status=可用于指定状态代码

而在0.9版本中可以只用POST,不需要一个会话时:

5dcb7a2a246e4504bb36e9f6c46a7ab0.png

 3.2、${resp.json()} 代替 To Json

89270fcc33f64f6ca6bfee10547dd928.png

0bc0c65c64c14750bb37cd6a3edb911c.png

4、python使用包cx_Oracle连接Oracle报错:版本不支持

DatabaseError: DPI-1072: the Oracle Client library version is unsupported

python 安装3.7.6版本,操作系统是win10 64位,instantclient_21_3

解决:将instantclient_21_3下【3个.dll文件】复制到 \Python37\Lib\site-packages目录下即可。

 

 

 

三、类库及关键字归类

1、Collections库关键字

1.1、Get Dictionary Keys 、Get From Dictionary

2、RequestLibrary常用关键字

3、Bullins库关键字

3.1、连接 Catenete

a、Catenete不使用分隔符,两个字符之间默认以“空格”

b、分隔符SEPARATOR值,可以选择任意格式

c、不需要空格时,分隔符SEPARATOR=空,不设置任何值即可

c624afe829224f5f8610c9cb7973e091.png

4、DatebaseLibrary 

4.1、 No module named 'pymysql'

原因1:没有安装pymysql 

pip install pymysql

4.2、(1046,"no database selected")

错误:(1046,"no database selected")

原因:“表名” 前没有加对应的 “用户”

  • 3
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值