robot framework 介绍
Robot Framework是一款非常流行的开源免费、功能强大的自动化框架,底层是通过python实现,支持python2.7和python3.5以上版本,目前有多家互联网公司在使用:玄武科技、京信通信、酷狗、中国电信云、中软国际、阿里云等。可以在此平台上做自动化测试、测试开发。
平台框架结构
测试数据包含了测试用例数据,robot framework测试工具启动“pybot”命令解析测试用例,调用测试库selenuim、http等中的关键字解析代码、然后通过Wireshark对网络进行分析,最后使用jenkins、maven等持续集成工具和底层硬件进行交互测试。了解底层实现,可以在此基础上进行用户关键字、系统关键字和测试库的开发工作。
test libraries 使用介绍
为了得心应手的使用关键字,需要对每个关键字的用途有所了解,必要时开发自己的关键字。
标准库总计包含11个库:Builtin(108)、Dialogs(5)、Telnet(20)、Collections(43)、OperatingSystem(56)、Screenshot(3)、XML(37)、DateTime(8)、Process(15)、String(32).总共累计327个关键字。随着后续更新会有所变化。
- Dialogs 主要是用于与用户进行交互,需要自己导入库
- Telnet 和shell中的telnet一样,通过远程登陆的方式,对后台服务器进行读写数据处理,达到模拟客户端的目的,但是由于缺乏保密机制以及不能压缩传输数据,所以常常被SSH所取代,进行远程通信。
- Collections 这个库主要包含了操作字典和列表元素的关键字,底层实现利用python中的字典和列表元素,比较基础也很关键。
- Screenshot 这个库主要用于测试用例运行后结果的截图,防止出现不能重现的bug解释不清,以及用于工作量的证明。
- OperatingSystem 这个库主要作用是对操作系统中环境变量、文件、文件夹、路径进行相关操作,其中有grep file、run、touch三个命令比较特殊
- String 这个库主要包含了对字符串的查询、删除、分割等相关操作
- Process 这个库主要包含了运行、查询、终止进程的相关操作
- builtin 这个库主要包含了robot的基本语法操作,包含设置参数、条件判断、关键字控制、循环控制、类型转换、报错等