• 0
  • 0
分享

  一、什么是自动化测试框架?

  自动化测试框架是为自动化测试用例或者脚本提供执行环境而搭建的基础设施。自动化测试框架有助于有效地开发、执行和报告自动化测试用例。

  优点:

  · 代码复用

  · 提高测试效率

  · 更高的测试覆盖率

  · 维护成本低

  · 更早发现和记录bug

1-1.jpg

  二、框架的基本组成

  1、配置文件管理:

  一般需要一个配置文件去控制一些环境信息、开关。配置文件可以是txt/xml/yaml/properties/ini,一般.propertis使用较多在JAVA里,Python的话通常会选择ini文件。

  2、业务逻辑代码和测试脚本分离

  如果代码和脚本在一个类文件,那么就根本没有用到代码重构,复用。代码和用例文件分离后,会更加清晰,可以有更多人开发脚本,方便调试。

  3、报告和日志文件输出

  执行了多少case,case结果如何,这都需要报告来展示,一般采用第三方插件来实现这个功能。好多报告格式是html,简单,明了的风格。日志输出也很重要,如果发生报错,脚本执行失败,通过日志快速定位发生问题位置。

  4、自定义的库的封装

  很多功能需要重复调用,可以写成一个公用方法,放到工具包下,每次方便调用,例如浏览器引擎类和basepage.py的封装。

  5、管理、执行脚本方式

  例如Python中单元测试框架unittest使用率非常高。

  6、第三方插件

  有时候,一些功能需要借助第三方插件,能够更好实现,例如AutoIT(来实现文件上传和下载)。还有利用第三方报告插件生成基于html格式的测试报告。

  7、持续集成

  git、svn、ant、maven,jenkins,我们会把这整合到jenkins,达到持续集成,一键执行测试脚本。

  三、流行的自动化测试框架

  Robot Framework

  如果要使用python自动化测试框架进行测试自动化,则Robot Framework是最佳选择。Robot Framework是基于Python的,但是也可以使用 Jython(Java)或IronPython(.NET)语言进行脚本用例的编写。

  · Robot Framework使用关键字驱动的方法使测试用例易于创建。

  · Robot Framework还可以测试MongoDB、FTP、Android、Appium等。

  · 它拥有非常多的测试库,包括Selenium WebDriver库和其他常用的的工具。

  · Robot Framework具有许多API,可帮助使其尽可能地扩展。

  WebdriverIO

  WebdriverIO是基于Node.js的自动化测试框架。它具有集成的测试运行程序,可以为Web应用程序以及本机移动APP运行自动化测试用例。而且,WebdriverIO可以同时在WebDriver协议和Chrome Devtools协议上运行,从而使其对于基于Selenium Webdriver的跨浏览器测试或基于Chromium的自动化都非常有效。由于WebDriverIO是开源的,因此测试工程师可以获得一堆满足自动化需求的插件。

1-2.jpg


作者:桂棹兮兰桨    

来源:http://www.51testing.com/html/79/n-7797379.html

  • 【留下美好印记】
    赞赏支持
登录 后发表评论
+ 关注

热门文章

    最新讲堂

      • 推荐阅读
      • 换一换
          •   中国台湾《联合报》称:经多方评比后,台积电最终决定将最先进的 1nm 制程代工厂选址定在嘉义科学园区,总投资额超万亿新台币(IT之家备注:当前约 2290 亿元人民币)。  对于这一传闻,台积电表示,选择设厂地点有诸多考量因素,台积电以中国台湾地区作为主要基地,不排除任何可能性,也持续与管理局合作评估合适的半导体建厂用地。  消息人士透露,台积电 1nm 制程将落脚嘉义科学园区,台积电已向相关管理局提出 100 公顷用地需求,其中 40 公顷将先设立先进封装厂,后续的 60 公顷将作为 1nm 建厂用地。业界估,台积电 1nm 总投资额将逾万亿新台币。  在上个月举行的 IEDM 2023...
            0 0 730
            分享
          • 自动化入门介绍       实验介绍       本次实验主要介绍什么是自动化测试和自动化测试工具 selenium。然后介绍怎么安装浏览器驱动工具 webdriver,并且开发一个简单的自动化测试脚本,体会自动化测试是怎么实现的。       知识点自动化测试介绍selenium 介绍webdriver 安装第一个脚本开发       自动化测试概念       自动化测试是把以人为驱动的测试行...
            12 12 1948
            分享
          •   在美国推出数年后,苹果公司的 Mac 和iPhone自助维修计划将扩展到总共 32 个欧洲国家,加拿大也将于 2025 年加入。周三上午,苹果公司在一份非常简短的新闻稿中宣布扩大其自助服务维修计划。苹果公司具体列出的国家包括英国、法国、德国和荷兰。  自助维修服务支持 42 种 Apple 产品。服务文档现在有 24 种语言版本。  无论用户身处何地,该程序的操作步骤基本相同。用户在进行自我诊断后,通过专门的网上商店订购零件和工具。  消费者退还"核心"部件的方式将与现在维修店退还部件的方式相同,以获得对最初购买部件价格的抵扣。  维修工作的复杂性和高昂的零件成本意味着...
            0 0 377
            分享
          • 测试是软件开发生命周期 (SDLC) 的重要组成部分。SDLC 的每个阶段都应包含测试,以获得更快的反馈并提高产品质量。我们来聊聊持续测相关话题,如何从持续测试中获得更大的收益。何谓持续测试持续测试有助于在软件开发生命周期 (SDLC) 的所有阶段提供更快的质量反馈。在软件开发声明周期中大多数情况下,如果在核心功能逻辑越少做单元测试和自动化测试,那么测试金字塔顶层执行手动探索性测试的压力会非常大,尝尝容易出现质量问题导致项目延期。这实际上会影响质量,因为在开发完成后发现错误是非常昂贵的。下面是Google修复一个错误的成本,你可以看到当在系统测试阶段发现一个错误时,它的成本高达 5000 美元...
            0 0 1120
            分享
          • 一、Restful接口实例通过构建一个Restful接口实例,更加直接深入了解Restful接口的开发。二、构建一个简单实例1.创建项目参考https://blog.csdn.net/u010886217/article/details/852391102.项目结构Maven项目结构3.创建第一个controller测试类:HelloworldControllerpackage com.example.demo; import org.springframework.web.bind.annotation.GetMapping; import org.spring...
            0 0 4093
            分享
      • 51testing软件测试圈微信