Robot Framework

【一】简介

  • 通用的测试自动化框架(不限于WEB自动化);
  • 提供测试的基本功能;
  • 可控制哪些运行,哪些不运行;
  • 写断言,让框架帮忙做断言;

【二】特点

  • 使用简单
  • 非常丰富的库
  • 可以像编程一样写用例
  • 支持开发系统关键字
  • 可以很好的把自动化测试人员进行划分

【三】Robot Framework库

  • Builtin:提供了一组通常需要的通用关键字
  • String:生成、修改和验证字符串的库
  • Screenshot:提供关键字捕捉桌面截图
  • XML:生成、修改和验证xml文件的库
  • DateTime:日期和时间转换库

【四】常用库

  • web自动化测试:seleniumLibrary     selenium2Library   selenium2Library for java   watir-robot等
  • windows gui测试:autoltLibrary
  • 移动测试:android library       ios library    appiumlibrary
  • 数据库测试: database library(java)     database library(python)   mongodb library等
  • 文件对比测试:diff library
  • http测试:http library(livetest)、http library(requests)等

【五】安装准备(不是非ride不可)

  • python(python2到2020年停止维护)
  • robot framework
  • wxPython2.8.12.1(win32)[可选]——基于windows gui,不支持python3
  • robot framework-RIDE[可选]——基于wxPython2.8.12.1(win32)

【六】创建测试用例的过程

  步骤:

    1、创建一个测试项目(一个目录)

    2、在目录下创建测试套件(文件rf_suit.robot)

    3、在测试套件下创建测试用例(小例子:打印一个字符串)

    

     4、执行

      1)在当前目录下打开命令行窗口;

      2)pybot --test test_case rf_suit.robot            //运行test_case

      3)   pybot --test test_case2 rf_suit.robot         //运行test_case2

        4)    pybot  rf_suit.robot                                   //运行全部的case

      5)   执行成功后在当前目录下生成日志和报告;

      【log.html】

      

      【report.html】

      

    5、robot framework运行测试

      1)运行一条用例

       pybot --test test_case test_suit.robot

      2) 运行指定文件

       pybot test_suit.robot

      3)   运行当前目录下以.robot为后缀名的测试文件

       pybot *.robot

      4)   运行当前test_a目录下的所有用例

       pybot test_a

      5)   运行当前目录下的所有以.robot为后缀名的测试文件

       pybot ./

     6、 robotframework-selenium2Library

      1)安装robotframework-selenium2Library

        python -m pip install robotframework-selenium2Library

      2)   查看包名:D:PythonPython36Libsite-packages

      3)引包:(关键字底层就是写好的类方法,位置:D:PythonPython36Libsite-packagesSeleniumLibrarykeywordsrowsermanagement.py)

        

      4)  运行结果(log)

        

      7、封装操作流

        【步骤】

          1)创建一个资源文件

          2)在资源文件下创建用户关键字 (rf_suit.robot)

          

          3) 调用关键字

          

        8、开发系统关键字

         【步骤】

          注意:小例子,定义的函数文件和初始化文件都需要放在D:PythonPython36Libsite-packages 目录下;

          1、定义加减法函数

#coding=utf-8
class Count(object):
    def add(self,a,b):
        c = int(a)+int(b)
        return c

    def sub(self,a,b):
        c = int(a)-int(b)
        return c

if __name__ == '__main__':
    c = Count()
    result = c.add(3,5)
    assert result == 8
    result = c.sub(3,5)
    assert  result == -2
View Code

          2、定义初始化文件

from test import Count

__version__ = "0.1"


class WhdTestLibrary(Count):
    ROBOT_LIBRARY_SCOPE = 'GLOBAL'
View Code

          3、调用脚本

          

      9、 ROBOT FRAMEWORK的缺点

          1) 学习成本高  经验封闭——语法都是自己的语法,而且不可转换,

          2)  脚本可读性查

          3)  不如直接写Python代码自由

        

          

          

        

     

  

原文地址:https://www.cnblogs.com/hd-test/p/11637964.html