robot framework和qtp的区别

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了robot framework和qtp的区别相关的知识,希望对你有一定的参考价值。

参考技术A Robot Framework是一款python编写的功能自动化测试框架。具备良好的可扩展性,支持关键字驱动,可以同时测试多种类型的客户端或者接口,可以进行分布式测试执行。主要用于轮次很多的验收测试和验收测试驱动开发(ATDD)。[1]
Robot Framework是开源软件,由Nokia www.hbbz08.com Siemens Networks开发并提供支持。

QTP是quicktest Professional的简称,是一种自动测试工具。使用QTP的目的是想用它来执行重复的自动化测试,主要是用于回归测试和测试同一软件的新版本。因此你在测试前要考虑好如何对应用程序进行测试,例如要测试哪些功能、操作步骤、输入数据和期望的输出数据等

使用 Robot Framework 的执行级别设置和拆卸

【中文标题】使用 Robot Framework 的执行级别设置和拆卸【英文标题】:Execution Level Setup & Teardown with Robot Framework 【发布时间】:2019-08-08 13:20:55 【问题描述】:

我知道Test Setup 将在每个测试用例之前执行,Suite Setup 将在每个套件(即每个 .robot 文件)之前执行。

但是,一旦我运行 robot 命令并且当所有测试套件都运行后,运行 Teardown,我就会尝试执行命令级别的 Setup 和 Teardown。

尝试在我的场景目录中包含 __init__.robot 文件,但它们根本没有被调用。

*** Settings ***

Resource  ../_common/keywords.robot

Suite Setup  Prepare Browser
Suite Teardown  Close Browser

我希望能够在任何测试开始之前启动浏览器,然后仅在所有测试完成后关闭浏览器。

例如,robot 1.robot 2.robot 应该:

    打开浏览器 运行1.robot 测试套件 运行2.robot 测试套件 关闭浏览器

【问题讨论】:

【参考方案1】:

您可以为此设置“特殊”套件,并在运行中首先调用它们并最后调用它们。由于 SeleniumLibrary 具有全局范围,在第一个中初始化的浏览器应该可以在同一运行中被所有后续套件访问。

例如套件“Startup.robot”将打开浏览器,“Closing.robot”将关闭它,任何中间人都将使用它:

robot Startup.robot 1.robot 2.robot Closing.robot

当您传递一个执行目录时,框架会按字母顺序获取其中的 .robot 文件,因此您可以将这些特殊套件命名为“0000_Startup.robot”和“zzzz_Closing.robot”,以便它们在相应的环境中运行顺序(如果你只使用 ascii/latin 文件名)。


是的,初始化文件不用于在其他套件之前运行某些东西 - 它们在那里为其他套件设置默认值,可以在下游覆盖。 See their description in the documentation.

【讨论】:

原本希望有一种更集成的方式,但我想它不被支持,因为我在文档中找不到类似的东西,而初始化文件是我能找到的最接近的东西。 我自己做的是使用自定义关键字来打开和关闭浏览器,将其视为单例 - 如果存在则不要重新创建,除非有特殊情况,否则不要真正关闭它。但这比您在此处介绍的案例涉及的解决方案要多得多——简单的命名方案更容易实现。 应该注意的是,这只有在与浏览器的连接没有故障时才有效。发生这种情况时,应该打开一个新的浏览器。 @TodorMinakov 这很有意义。我想这个答案旨在直接回答我的问题。谢谢。

以上是关于robot framework和qtp的区别的主要内容,如果未能解决你的问题,请参考以下文章

Robot Framework应用——在Virtualenv和Virtualwrapper的虚拟环境中启动Robot Framework的RIDE时报的错误问题的解决

Robot Framework应用——在Virtualenv和Virtualwrapper的虚拟环境中启动Robot Framework的RIDE时报的错误问题的解决

Robot Framework重点

使用 Robot Framework 的执行级别设置和拆卸

mac环境下搭建Robot framework

Robot Framework 的安装和配置