为e2e前端测试暂存后端[关闭]

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

我们在前端使用angular,在后端使用Node.js。

我们正在前端编写e2e测试,据我所知它应该使用真正的后端。所以我们有登台环境,Angular app e2e测试正在使用真正的Node.js转发后端。暂存后端使用登台数据库和暂存日志环境。

问题:

  1. 是否可以使用真正的分段后端进行e2e前端测试?
  2. 如何使用重置密码测试,我们需要在后端生成然后发送到电子邮件的JWT?我应该为某些特殊测试用户硬编码一些令牌吗?
  3. 如果没有真正的后端进行e2e测试怎么样?这很奇怪吗?

谢谢!

node.js angular testing protractor e2e-testing
2个回答
1
投票

是否可以使用真正的分段后端进行e2e前端测试?

最好设置没有任何其他用途的测试Web服务器和数据库,以避免交叉污染。否则测试可能会破坏真实环境,而真实环境可能会影响测试结果。出于这个原因,在容器中运行测试环境是一种很好的做法。

如何使用重置密码测试,我们需要在后端生成然后发送到电子邮件的JWT?我应该为某些特殊测试用户硬编码一些令牌吗?

硬编码令牌可能有效但会阻止此功能进行测试。为了更彻底地测试它,可以在测试环境中模拟邮件服务器或使用它的库(例如nodemailer)。

如果没有真正的后端进行e2e测试怎么样?这很奇怪吗?

这使得它们成为集成测试,它们是测试应用程序的有效方法。从理论上讲,前端和后端集成测试可以提供全面的覆盖。但是,当所有测试都通过时,它们之间的不一致可能导致应用程序出现故障。除了集成测试之外,最小的E2E测试覆盖率可能仍然是有益的。根据具体情况,可能仅限于只读操作并使用真实的Web服务器。


1
投票

您应该使用临时真实后端来测试您的前端是否适用于您的后端。您的测试用户应该是普通用户。您可以根据需要进行免费测试,只要测试密码重置就可以由您自行测试。您可以执行此操作,您可以让测试等待接收电子邮件并按照链接重置等等由您决定是否对部署到生产的应用程序感到满意,此功能可能会被破坏

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