1

在自动化用户场景时,我们通常涵盖端到端的用户流程。单元测试建议每个测试方法应该是独立的,并且只测试一件事。但是在系统验收测试中情况有所不同,因为我们必须涵盖通过应用程序的用户流程。

考虑一个电子商务应用程序,其中用户旅程通常遵循以下步骤:

1 - 访问主页
2 - 搜索产品
3 - 选择产品
4 - 将产品添加到购物车
5 - 点击结帐
6 - 登录
7 - 输入付款详情
8 - 提交订单
9 - 等待确认

现在这些步骤中的每一个都需要在我们浏览用户旅程时进行验证。因此,测试方法存在依赖性,例如第 3 步依赖于第 2 步,这破坏了单元测试实践。此外,如果我们将所有步骤都放在一种测试方法中,那么如果测试失败,就不容易检测到哪里出了问题。如果我们想隔离每个测试方法,使它们彼此独立,我们必须一遍又一遍地重复初始步骤。

我过去所做的是使用 TestNG 来提供对以前测试方法的这种依赖。我想知道如何在您的测试中处理用户旅程。

您如何处理测试中的用户旅程?

4

2 回答 2

1

对此有好处。它有一个 Firefox 插件,允许您“记录”您在浏览器中执行的端到端测试,以后可以回放。您还可以修改/手动编码测试。还支持以各种语言(例如,我们使用 C#)修改和运行测试,因此您可以将各种逻辑和条件编码到测试流程中。

查看您的测试步骤,我认为它应该是一个基本的实现(理论上 - 在实践中,您可能需要进行一些调整以确保 HTML 元素选择器每次运行都是正确的)。

  1. 打开网址
  2. 在文本框中输入文本并单击按钮
  3. 点击链接
  4. 点击一个按钮
  5. 点击一个按钮
  6. 在两个文本框中输入文本并单击一个按钮
  7. 在各种文本框中输入文本
  8. 点击一个按钮
  9. (代码集成,检查电子邮件?)
于 2012-06-03T19:03:28.733 回答
0

Chromium Browser Automation,也是很好的解决方案。您还可以在 Chromium 浏览器自动化网站上查看文档和教程: http: //chrome-automation.com/

于 2012-06-06T10:22:41.013 回答