量角器,如何测试用户帐户?

问题描述 投票:2回答:2

我想知道关于端到端测试的最佳方法是什么。如果我理解正确,那么端到端测试的想法就是覆盖用户故事并以自动方式对其进行测试。例如,将Protractor用于Angular.js应用程序。

在我当前的项目中,您可以创建用户帐户并登录。这是如何进行的?您是否将使用专门准备的数据库来测试登录帐户。另外,注册过程如何。应该如何测试?他们对此是否有最佳实践?

angularjs protractor angularjs-e2e
2个回答
0
投票

我想说的是,理想情况下,您具有已知的数据库备份或用于清理测试数据库的脚本。然后,您可以还原数据库或运行脚本,成为测试过程的一部分。该脚本可能更易于实现。您可以引入执行节点所需的任何节点模块,作为运行测试套件的一部分,而不是作为外部步骤。

或者,我正在一个具有复杂的用户创建和同步过程的系统上工作。因此,我们还有其他外部系统需要与该应用进行交互,因此无法轻松重置/还原该应用。相反,我们采用了一种公开的REST服务的方法,该服务可以与其他系统一起使用,例如,找到具有特定特征集的用户。然后,作为规范的一部分,我们调用此服务,并为我们的测试用例获取有效的用户。


0
投票

我认为有两种方法可以解决此问题:

  1. 使您的测试指向一个真实的数据库,该数据库是您的生产环境的副本。这将使测试检查是否正确访问了数据库并按预期返回了数据。这是可能的,但对我而言不正确,因为e2e测试应该检查客户端的前端体验,而不是应用程序如何依赖后端部分。
  2. 使用模拟后端。模拟后端是一种“假服务器”,您可以在客户端进行开发,以返回使应用程序正常工作所需的信息。我认为这是正确的方法,因为您将重点放在使APP正常运行而无论服务器是否可能出现问题。

您可以在本教程中看到一个示例:https://blog.cloudboost.io/building-your-first-tests-for-angular5-with-protractor-a48dfc225a75

更具体地说,在此文件中:https://github.com/shootermv/protractor-tutorial/blob/master/src/app/_helpers/fake-backend.ts

问候。

© www.soinside.com 2019 - 2024. All rights reserved.