• 01:robotframework介绍+环境安装


     

    01:RF是什么?

    由python编写通用型自动型框架

    框架-实现特定需求的软件解决方案的工具包

    自动化中面临的问题

    如何组织我们的自动化脚本?

    如何批量选择测试脚本去执行?

    如何在测试结果里面清晰的反馈检查点是否通过?

    执行结果是否能够清晰美观的报告?

    所面临的问题都可以用RF框架去执行

     

    02:测试框架的选型

    Unitest

    • python内置库
    • 测试名以test开头,初始化清除支持单一,
    • 不支持输出测试报告

    pytest

    • 适合规模小,复杂度比较低的项目
    • 输入出漂亮测试报告需要结合其他工具

    Nose

    • 自动嗅探所有以test开头的文件和用例

    RF的优点:

    • 它定义了灵活且易理解的测试用例执行控制(包括初始化和清除环境)
    • 它可以方便挑选要执行的用例和套件(名称,标签过滤)
    • 它有清晰的日志和报表功能,让QA和manger可以清晰查看执行测试结果(自带)

     

    03:环境安装-运行环境

       1.RF的安装

    pip install robotframework

    安装成功:

    image.png

    安装成功路径:

    image.png

     

    image.png2.编辑环境--seleniumlibrary 的安装(不推荐使用Ride)

    pycharm编写 

    安装插件IntelliBot支持语法高亮

    image.png

     

    image.png

     

    支持selenium自动化的RF扩展库

    pip install --upgrade robotframework- seleniumlibrary

     

    注意:

    Chromedriver和Chrome版本要一致 

    下载Chromedriver地址:http://chromedriver.storage.googleapis.com/index.html

     

     04:RF注意点

    • RF编码格式统一用UTF-8
    • 新建文件时尽量再pycharm新建,不要用Windows,如果有中文,会遇到解码错误

    05:RF用例

     

    image.png

    Settings

    Test Cases表  写用例

    06:用例语法的特点:

    • 用例名称顶格写
    • 关键字空四格 (关键字本身是python函数)

    log to console 打印 

    • 关键字和参数之间要空两格以上
    • 参数与参数要两个以上空格
    • 注释:#
    • 以纯文本格式

    07:执行测试用例

    命令执行:

    robot   -- <option> <datasource>

    Option:参数项,可以指定具体的用例或套件,非必填

    Datasource:必填,表示执行用例具体路径

    image.png

    查看测试报告

    image.png

     

    08:百度松勤的例子

     

    *** Settings ***
    Library  SeleniumLibrary
    
    *** Test Cases ***
    case001
           open browser  http://www.baidu.com   chrome
           set selenium implicit wait  10
           input text   id=kw   松勤n
           ${res}   get text   id=1
           should contain  ${res}   松勤网
    
           close browser

    test suite 和testcase

    测试套件,就是测试用例的集合

    一般我们把功能相关的测试用例组合起来放在一起,成为某个测试套件

     

    套件文件里面包含测试用例

    RF结构图:

    image.png

    测试库关键字是由seleniumLibrary提供的

    利用robotFramework解析(利用RF调用)

     

    09:用例分析

    1.关键字

    • RF里面的关键字我们可以看做是对应编程语言里面的函数概念
    • RF的核心就是关键字,关键字提供了自动化的能力集 

    2.测试库

    • 关键字有测试库提供
    • 实现关键字的库,按类型来分,可以分为RF标准库和扩展库
    • 标准库是安装RF,就已经安装好python库文件
    • 放在python的Lib/site -packages/robot/libraries目录下
    • RF可以让开发自行开发扩展库。其实扩展库和标准库比起来,主要的区别就是没有RF内置,其开发方式和标准库并无不同

    10:套件(数据文件)文件中的表 

    RF支持四种的表:
    分别为Settings,variables,Test Case,Keywords

    表名必须出现在第一单元格。表名大小不敏感

     

    Settings表,是这个测试套件的 全局配置表。如果,说明这个测试套件要使用的测试库,资源文件,测试套件的环境初始化(setup)和清除化(tear down) 

     

    11:测试用表语法

    测试用例里面的每个测试用例 大概可分为

    1.配置部分

    2.主体部分

     

    1.1 用例配置部分

    【Documentation】该用例的文字说明

    【Tags】该用例的标签

    【Setup】【Teardown】该用例的初始化和清除操作

    【Temlate】声明该用例模板关键字驱动

    【Timeout】设置用例超时时间

    2.1 用例主体部分主要有关键字组成

    关键字的来源

    测试库

    资源文件

    用例所在文件的关键字表

    用例主体部分也包含变量赋值

     

    PS:相对路径如:lesson1>suitel>t1---  命令:E:lesson1》 robot suitel/t1.robot

     

    我是kelly-凯莉 每天努力一点点,幸运就多一点点
  • 相关阅读:
    iOS App Store审核上传应用预览视频
    mac 下常用命令(xcode常用命令,环境相关等)
    Xcode遇到的一些常见异常
    Tomcat的SSL配置keytool生成证书
    iOS Developer TODO
    Linix常用命令
    iOS&OSX系统初步了解
    Mac下安装MySQL及启动等常用命令
    Android WebView存在跨域访问漏洞(CNVD-2017-36682)介绍及解决
    HTML5 Audio/Video 标签,属性,方法,事件汇总 (转)
  • 原文地址:https://www.cnblogs.com/kelly11/p/12677137.html
Copyright © 2020-2023  润新知