• UI Recorder 自动化测试 回归原理(九)


    回归原理

    一、原理流程图

     测试脚本采用 BDD 的风格定义了测试用例,通过 Runner 执行(浏览器操作通过调用 WebDriver Service 实现),返回对应的回归测试结果(object),测试结果经过 Reporter 进行渲染,生成测试报告。

    1.1 Runner

           Runner 包括 mochamacaca-mocha-parallel-tests (fork mocha-parallel-tests 优化的版本),其中跑单个测试用例使用 mocha ,并行跑多个测试用例则使用 macaca-mocha-parallel-tests 。Runner 的作用可以简单概括为以下三点:Pre-Loader(预加载功能)、Runner(执行器)、Reporter(报告器)。

    • Pre-Loader(预加载功能):通过 describe/it 函数定义一组或单个的测试用例,通过 loader 处理,可转化成一个树状结构的 object
    • Runner(执行器):object 可以通过 Runner 执行回归测试,输出测试结果(也是一个树状 object)
    • Reporter(报告器):利用测试结果,生成简单格式的测试报告输出

    1.2 Reporter

           Mocha 自带的 Reporter 展示形式比较单一,难以满足我们的测试场景需求。UIRecorder 自主维护的两款报告器是 macaca-reportermochawesome-uirecorder ,uirecorder@3.0 版本以后统一使用 macaca-reportermochawesome-uirecorder 已废弃。其中, macaca-reporter 的作用主要是利用 Runner 执行后返回的结果(object),自定义渲染模版,从链路树模式、脑图模式、全图模式和列表模式多维度直观呈现运行结果。

    1.3 WebDriver Service

           WebDriver 利用浏览器原生的API,封装了一层 WebDriver API,通过 http 协议可以直接操作浏览器页面的DOM节点元素,甚至操作浏览器本身(截屏,窗口大小,启动,关闭,安装插件,配置证书等)。且 Selenium 已得到各大主流浏览器厂商支持,可利用 WebDriver 服务进行多浏览器兼容性测试。

    二、更多参考

    如何实现一个简易版的 Mocha:https://www.yuque.com/artist/aori6e/vt4171
    macaca-mocha-parallel-tests:https://github.com/macacajs/macaca-mocha-parallel-tests
    F2etest WebDriver:https://www.yuque.com/artist/f2etest/webdriver-cloud
    

      

  • 相关阅读:
    Emacs教程
    华为上机测试 2015
    奇偶排序
    C语言中的EOF和回车不一样
    jquery 使用方法
    1116
    1115
    1109
    Oracle14~23
    get与post的区别
  • 原文地址:https://www.cnblogs.com/Lam7/p/13475988.html
Copyright © 2020-2023  润新知