因此,我在这个项目中,在每个合并到存储库的环境上重新构建应用程序。我是一个自动化测试员,到目前为止我一直在做功能测试和REST测试,以前没有在性能/负载测试方面的经验。
我被要求准备一个性能测试,检查每个端点的响应时间。负载和吞吐量测试有大约7种场景-- 5-7 --每个请求,这两个场景都是相同的。由于负载测试在峰值时间应该达到固定的吞吐量,并且吞吐量测试增加了并发用户的数量,直到应用程序变得不稳定,所以两者都从10个并发用户开始。
我们的一位资深开发人员告诉我,这三个测试应该在不超过5分钟内完成,这是现实和可实现的吗?
发布于 2019-06-03 09:13:35
在你的问题中有很多未知数来给出答案,从而定义一个正确的实验。
不稳定点您说过要找到最大吞吐量,直到应用程序变得不稳定为止。如何定义应用程序的不稳定性?
答案将取决于您特定应用程序的要求。例如,对于批处理过程来说,75个百分位数的响应3秒可能令人满意,但不一定适合在线银行应用程序(假设25%的用户等待时间超过3秒才能完成事务)。
实验持续时间您说过要找到最大吞吐量,直到应用程序变得不稳定为止。但另一方面,这三个测试应该在不超过5分钟内完成。如果您的应用程序在增加了10分钟的负载后变得不稳定怎么办?还是一个小时后?我们真的不知道你的申请的具体内容。为什么要求在5分钟内完成?作为回归的一部分,您打算运行这些测试吗?
在高峰时间的吞吐量。您说过“负载测试应该在高峰时间达到固定的吞吐量”。什么是高峰时间?固定吞吐量的期望值是多少?你打算在生产高峰期复制生产情况吗?例如,您的应用程序用于股票交易,其中高峰一天发生两次:当股票会话在上午开始时,以及在下午4点即将结束时你想要应用相同数量的并发用户,就像那些时候在生产中发生的那样?
部署架构。测试环境中应用程序的部署架构是否与生产环境相同?例如,您有相同数量的应用程序服务器、负载平衡器等。通常,与生产相比,测试环境的大小和复杂性都会降低,因此应用程序的行为可能会有所不同。例如,应用程序可能比在生产中饱和的速度更快,崩溃的时间少于5分钟。
您可以看到,影响实验长度的变量有很多:预期吞吐量、预期错误率、预期响应时间、峰值时间、错误定义、部署架构。如果我站在你的立场上,我要做的就是从小实验开始,反复设计,更好地理解你的应用程序和期望:
更多阅读:
https://sqa.stackexchange.com/questions/39422
复制相似问题