testing - 在生产中运行端到端测试是否值得?

标签 testing automated-tests production-environment devops e2e-testing

如何在不破坏数据库一致性的情况下在生产中实现端到端?想象一下,我们需要测试的场景是一个用户注册。如果我们在生产中运行这个测试,它每次都会创建一个假用户。

困境在于端到端测试非常重要,我们可以更灵活地在暂存环境中运行它们。但是,在生产中,我们的数据一致性很低,而且我们无法检测到特定于生产的错误。那么,有没有办法在生产中正确实现端到端测试,或者我们应该只在暂存阶段使用它们?提前致谢

最佳答案

我的建议是选择您真正想要针对生产运行的测试,并使用这些测试创建“生产冒烟测试”或部署测试包。

通过充分减少测试包,您创建的额外用户的数量应该被最小化。这将限制您围绕虚假用户提出的问题的影响。

如果您可以构建测试,以便将假用户用于包中的其他测试,那么这是一个很好的用户生命周期端到端测试。

我还假设有能力删除您系统中的用户?

这本身就是一个很好的测试,所以我建议您创建的任何生产包的最终测试是测试删除您刚刚创建的“假”用户。

关于testing - 在生产中运行端到端测试是否值得?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41611885/

相关文章:

使用 Realm 进行 Swift XCTest UI 测试

java - 使用 JUnitParamsRunner 对不同方法的 Mockito.verify() 进行参数化测试

testing - 如果它可以处理很多用户,是否可以使用 casperjs 来测试您的网站?

php - 在 Silex 中检测环境类型(生产、开发或暂存)

java - 尝试使用将对象转换为字节数组时频繁GC

javascript - 如何在一个命令/进程中执行服务器和客户端测试?

python - 测试时为真的 Django 变量

javascript - 我们如何使用 Cypress 验证元素即使存在于 DOM 中也不会显示

python - 来自 ServiceObject 的 GraphQL 查询解析器的模拟响应,以防止单元测试中的 API 调用

docker - 如何确保 Docker 容器在生产服务器上启动并保持运行?