作为测试人员,RobotFramework框架真的是必须掌握的吗?

简介: 本文探讨了Robot Framework(RF)作为自动化测试框架的重要性,指出虽然RF具有易用性和灵活性,但并非测试人员必须掌握的工具,因为存在许多可替代的自动化测试解决方案。

※技术背景

需要有一定的python基础,代码阅读能力;以及自动化测试思想。
  • 去到任何一家企业,如果少不了自动化,必然会要搭建一套自动化测试框架!
那么问题随之而来,这框架如何选择呢?
如果是代码能力强,可以自行开发与设计,那要是不呢?KPI摆在那,总不能说不行吧!
不行,代表着真的不行,在测试职业领域真的没有什么测试的不行!作者回顾以往工作经历,测试从来没有说过不字。
不会安全测试,但总得会几样安全型测试工具吧,不济也该知道安全测试的目的和原理吧。
不会性能测试,但总得会使用工具吧,理解性能测试指标和知道如何设计性能测试场景吧。
不会单元测试,不会自动化测试?不会渗透测试?所有的不会,那总该会学吧。自强不息。
  • 本章将引荐基于python语言开发的自动化测试框架:RobotFramework
学习RF尽在官网https://robotframework.org/,可以学习查看各种文档去更好的熟练使用它。

※RF测试框架

  • Google翻译一下它的介绍
Robot Framework是一个通用的开源自动化框架。它可用于测试自动化和机器人过程自动化 (RPA)。
Robot Framework 受到积极支持,许多行业领先的公司在其软件开发中使用它。
Robot Framework 是开放和可扩展的,几乎可以与任何其他工具集成,以创建强大而灵活的自动化解决方案。开源也意味着 Robot Framework 可以免费使用,无需支付许可费用。
Robot Framework 具有简单的语法,使用人类可读的关键字。它的功能可以通过用 Python 或 Java 实现的库来扩展。该框架有一个丰富的生态系统,由作为独立项目开发的库和工具组成。
Robot Framework 项目托管在GitHub 上,您可以在其中找到更多文档、源代码和问题跟踪器。下载托管在PyPI。
Robot Framework 独立于操作系统和应用程序。核心框架是使用Python实现的,也可以在Jython (JVM) 和IronPython (.NET) 上运行。
Robot Framework 本身是在Apache License 2.0下发布的开源软件,生态系统中的大部分库和工具也是开源的。该框架最初由诺基亚网络开发,并于 2008 年开源。
  • 所以它有名的是关键字框架设计思想
对于还不会coding但又想coding的同学来讲,RF无疑是练手的不二选择,可以一边使用其现成的关键字,一边又可以开发自己的关键字。

RF框架二次开发实战

  • 环境搭建:python+robotframework
建议eclipse+robotframework
开发关键字流程
1、进入python环境/Lib/sit-packages目录下
2、新建py模块文件<这只是单个文件,不形成库>
3、使用def关键字定义函数,在RF中就是可使用的关键字
  • demo示例:
ROBOT_LIBRARY_SCOPE = 'GLOBAL'
# 返回两个变量的减法运算
def sub(a,b):
    return a-b

ROBOT_LIBRARY_SCOPE表示RF库的属性作用域,有三个等级:TestCase、TestSuite、Global; 作用呢见名知意: TestCase当前测试用例中实例化一次,那么多个测试用例使用,就需要实例多次; TestSuite指在suite中只实例化一次,包含的所有测试用例都共享第一个关键字; Global更简单了,就相当于python的全局属性,全测试框架都可以使用,且只初次实例化一次;

  • rf测试用例中使用关键字
*** Settings ***
Library    demo.py的绝对路径

image.png

  • rf编写测试用例****
*** Settings ***

Library    demo

*** Test Cases ***

case:demo模块自定义sub关键字

    ${res}    sub    ${4}    ${1}

    Log    ${res}

    Should Be Equal    ${res}    ${31}
  • rf执行测试用例展示结果
会生成三个结果文件,一个log两个html

image.png

※总结

当然它不局限于做接口自动化、还支持UI自动化,在python+selenium设计关键字驱动框架时,切莫忘了RF。
因为有现成的关键字驱动框架工具,就不是很建议去重复造轮子,反而会降低输出效率;但是如果为了灵活多变,那还是自己开发的用起来才得心应手!
  • 再多说一句,点题《作为测试人员,RobotFramework框架真的是必须掌握的吗?》,

答案是:No,非必须,因为可替代性太强了。

关于RF关键字驱动,做接口自动化真的有点看不惯!<仁者见仁智者见智,表打我!>
相关文章
|
1月前
|
人工智能 搜索推荐 数据管理
探索软件测试中的自动化测试框架选择与优化策略
本文深入探讨了在现代软件开发流程中,如何根据项目特性、团队技能和长期维护需求,精准选择合适的自动化测试框架。
101 8
|
1月前
|
人工智能 JavaScript 前端开发
自动化测试框架的演进与实践###
本文深入探讨了自动化测试框架从诞生至今的发展历程,重点分析了当前主流框架的优势与局限性,并结合实际案例,阐述了如何根据项目需求选择合适的自动化测试策略。文章还展望了未来自动化测试领域的技术趋势,为读者提供了宝贵的实践经验和前瞻性思考。 ###
|
18天前
|
数据采集 人工智能 自然语言处理
Midscene.js:AI 驱动的 UI 自动化测试框架,支持自然语言交互,生成可视化报告
Midscene.js 是一款基于 AI 技术的 UI 自动化测试框架,通过自然语言交互简化测试流程,支持动作执行、数据查询和页面断言,提供可视化报告,适用于多种应用场景。
160 1
Midscene.js:AI 驱动的 UI 自动化测试框架,支持自然语言交互,生成可视化报告
|
9天前
|
存储 测试技术 API
pytest接口自动化测试框架搭建
通过上述步骤,我们成功搭建了一个基于 `pytest`的接口自动化测试框架。这个框架具备良好的扩展性和可维护性,能够高效地管理和执行API测试。通过封装HTTP请求逻辑、使用 `conftest.py`定义共享资源和前置条件,并利用 `pytest.ini`进行配置管理,可以大幅提高测试的自动化程度和执行效率。希望本文能为您的测试工作提供实用的指导和帮助。
59 15
|
30天前
|
Linux Shell 网络安全
Kali Linux系统Metasploit框架利用 HTA 文件进行渗透测试实验
本指南介绍如何利用 HTA 文件和 Metasploit 框架进行渗透测试。通过创建反向 shell、生成 HTA 文件、设置 HTTP 服务器和发送文件,最终实现对目标系统的控制。适用于教育目的,需合法授权。
63 9
Kali Linux系统Metasploit框架利用 HTA 文件进行渗透测试实验
|
1月前
|
安全 Ubuntu Linux
Metasploit Pro 4.22.6-2024111901 (Linux, Windows) - 专业渗透测试框架
Metasploit Pro 4.22.6-2024111901 (Linux, Windows) - 专业渗透测试框架
46 9
Metasploit Pro 4.22.6-2024111901 (Linux, Windows) - 专业渗透测试框架
|
2月前
|
Java 测试技术 API
探索软件测试中的自动化框架选择####
在当今快节奏的软件开发周期中,自动化测试已成为确保产品质量与加速产品迭代的关键策略。本文深入剖析了自动化测试的核心价值,对比分析了市场上主流的自动化测试框架,旨在为项目团队提供选型时的考量因素及实践指南,助力高效构建适应未来变化的自动化测试体系。 ####
|
1月前
|
Java 测试技术 API
探索软件测试中的自动化测试框架
本文深入探讨了自动化测试在软件开发中的重要性,并详细介绍了几种流行的自动化测试框架。通过比较它们的优缺点和适用场景,旨在为读者提供选择合适自动化测试工具的参考依据。
|
1月前
|
jenkins 测试技术 持续交付
自动化测试框架的搭建与实践
在软件开发领域,自动化测试是提升开发效率、确保软件质量的关键手段。本文将引导读者理解自动化测试的重要性,并介绍如何搭建一个基本的自动化测试框架。通过具体示例和步骤,我们将探索如何有效实施自动化测试策略,以实现软件开发流程的优化。
80 7
|
1月前
|
数据管理 jenkins 测试技术
自动化测试框架的设计与实现
在软件开发周期中,测试是确保产品质量的关键步骤。本文通过介绍自动化测试框架的设计原则、组件构成以及实现方法,旨在指导读者构建高效、可靠的自动化测试系统。文章不仅探讨了自动化测试的必要性和优势,还详细描述了框架搭建的具体步骤,包括工具选择、脚本开发、执行策略及结果分析等。此外,文章还强调了持续集成环境下自动化测试的重要性,并提供了实际案例分析,以帮助读者更好地理解和应用自动化测试框架。