6

我正在评估几个测试自动化框架,希望能提供一些意见。我们有一个大型信用处理业务应用程序,它具有三个端点:web ui、soap 和基本的 http/post。我的要求如下。

我们的 QA 非常习惯于数据驱动测试(所有输入数据都来自 excel,因此是断言的预期结果)。基本上,excel表中的每一行都包含输入数据和相应的预期结果。我们希望我们的 QA 只编辑 Excel 工作表。我们的开发团队将负责提供必要的测试库/夹具。鉴于上述情况,我想使用 1 个单一自动化框架来读取这些 excel 表并测试我的应用程序的所有端点,即 web ui、soap 和 http/post。请让我知道哪个测试自动化框架适合我的需求。欣赏一些让我开始的指针和教程。

4

6 回答 6

5

Robotframework 使得使用来自外部文件的测试数据成为可能。我没有尝试过使用 excel 表格,但我已经使用 CSV 格式的数据和 JSON 完成了它。在最坏的情况下,您可能必须将您的 excel 数据导出为对 python 友好的格式,但这对于维护电子表格的人员来说是透明的。

简而言之,您可以在 python(或任何基于 JVM 的语言,如果您使用 jython)中创建一个关键字,该关键字读取您的电子表格并将其转换为测试用例可用的数据。

但是,如果您的所有测试都完全由该数据文件驱动,则您不需要框架。只需用任何语言编写一个简短的脚本,迭代每一行并调用一个相当于 curl 或 wget 的函数。如果您需要一种方法来表示您的测试场景,但您已经拥有了,那么框架很有用。

话虽如此,使用机器人的优势——即使你只有一个测试说“使用电子表格的每一行进行验证”——你可以获得机器人拥有的漂亮报告,并且可以将它与詹金斯/哈德森很容易。

于 2011-05-18T12:36:22.277 回答
3

推荐Fit / Fitness。这是让业务分析师自己运行测试的好方法。

于 2011-04-26T01:22:06.953 回答
2

我已经浏览了一些建议的框架,但我做出的最终选择是在

  1. 斯波克
  2. 盖布
  3. 时髦的和
  4. HTTP 构建器
  5. 声纳和哈德逊

作为 CI 的一部分,我们目前每晚运行 14000 多个(并且还在增长)回归测试。

于 2012-08-30T18:52:59.680 回答
1

我不知道有一种工具可以让您使用存储在电子表格中的数据来测试所有端点。您需要考虑编写一个基于现有测试运行器的自定义测试运行器,以允许从电子表格中读取数据。

但是,我会更专注于选择适合您尝试测试的端点的工具。对于 Web UI,我推荐seleniumHtmlUnit。您需要查看将电子表格中的数据获取到这些测试中的替代方法。但是这些会让你的 UI 尽可能接近用户。

为了测试soap端点,我建议只使用JUnit编写单元测试并模拟后端。您可以使用单元测试单独测试后端,以确保其正常工作。根据您的应用程序架构,这可能不是您的选择。您可能希望将它们设置为集成测试并通过 JUnit 执行它们并断言返回的消息。同样,您需要编写一个从电子表格中获取数据和预期值的库。

希望这对你有帮助。

于 2011-04-26T14:19:21.797 回答
0

我可以推荐 soapUI ( http://www.soapui.org/ ) 或 JMeter 应用程序 ( http://jmeter.apache.org/ )。

使用 SoapUI,我为我的(soap-)网络服务进行了功能测试。您可以自动化这些测试。

使用 Apache JMeter,我在 Web UI 上完成了自动性能测试。测试数据也基于 Excel 表。

亲切的问候,帕特里克

于 2011-04-26T14:24:40.177 回答
0

您可能想看看Thoughtworks 的Twist。这是一个功能测试IDE。QA/BA 可以使用自然语言来定义测试用例。Twist 在后台使用 Selenium 和 JUnit,因此生成的测试用例可以进行版本控制。

我同意@stuartf 的观点,即您不会找到一个开箱即用的解决方案来加载 excel 数据并对其进行断言。您可以使用POI或其他一些 excel 阅读器在测试框架中加载数据。

于 2011-04-26T14:40:58.200 回答