1

我试图消化机器人框架如何帮助我自动化系统测试。我有以下要求我有多个代理将数据推送到中央服务器并且 UI 连接到服务器以显示该数据。我有多个路径来测试代理到服务器和服务器到 UI。除此之外,我还需要验证从代理到 UI 的端到端测试(验证代理在 UI 中发送的数据)。我试图了解机器人框架如何帮助我。

我有以下要求:-

  1. 我需要运行测试用例来测试不同系统上的多个路径
  2. 测试可以在 java(Junit) python 或 Jasmine 测试中
  3. 我应该能够将所有日志或报告收集到中央系统

它只是谈论编写关键字驱动的测试用例,但我如何编写实际的测试用例?这只是所有测试用例的驱动程序吗?它对远程执行有何帮助?

4

2 回答 2

0

使用机器人框架,您无需使用另一种编程语言编写测试,您的测试使用的是机器人语言。您不要将junit或茉莉花与机器人一起使用。因此,这似乎违反了您问题中的要求(2)。但是,您可以在 java 或 python 中编写关键字,并让您的测试执行这些关键字。

我不完全了解您要做什么,但是您很有可能可以使用机器人框架来做到这一点。例如,您可能可以写一个关键字“告诉代理将数据推送到服务器”,您可以写另一个关键字,例如“验证服务器有值”,您可以写第三个关键字,例如“验证值出现在 UI 中” . 您可以用 java 或 python 编写这些,或者组合现有的关键字(例如:也许“验证值出现在 UI 中”是通过组合几个现有的 selenium 关键字来构建的)。

然后,您可以编写一个连续调用每个关键字的测试用例。

您的测试用例可能类似于:

| Example test case
| | Tell agent to push | Hello, world
| | Verify server has the value | Hello, world
| | Verify the UI shows the value | Hello, world

根据您的代理和 UI 的工作方式,这些关键字可能会执行一些命令行工具,或者他们可以访问 RESTful Web api,或者他们可能使用 selenium 来验证 UI。机器人关键字非常灵活,可以用您选择的语言做任何事情。

于 2014-04-25T15:31:29.917 回答
0

如果我正确理解您的问题,答案是 Robot Framework 实际上是 Python 的外壳,因此您可以将它用作基于测试的驱动程序,用于您想用 Java 或 Python 编写的任何内容,然后从那里开始极限。

这并不是 Robot Framework 的真正设计方式,但这里是我认为可以像您想的那样使用它的大纲。

Robot Framework runs ->
                        a Robot Framework keyword which runs ->
                                                                some Python/Java code which executes

换句话说,是的,Robot Framework 至少可以作为 Python 和 Java 脚本的驱动程序,它们本身可以(可能通过一些神秘的导入)依次执行 Jasmine。如果 Robot Framework 正在运行的脚本失败,则 Robot Framework 将报告失败。如果 Robot Framework 正在运行的脚本正确执行,则 Robot Framework 将报告通过。

我应该补充一点,我从未听说过同时运行 Java 和 Python 文件的 Robot Framework。

理论上,Robot Framework 也可以运行 .cmd 和 .bat 文件。从那里,天空是极限。

于 2017-09-05T21:36:12.903 回答