现有一个ABC聊天应用程序 ,是一个聊天工作台,在公司的客户支持使用,这个聊天应用程序使用XMPP(Extensible Messaging and Presence Protocol)协议和Open fire服务器发送和接收即时消息。
公司对的聊天客户端进行了一些增强,如远程PC控制、PC诊断、维修工具、在线聊天等。
项目组决定使用JMeter进行性能测试,使用JIRA进行缺陷跟踪。
计划的第一页应该包含文档的标题和公司的版权。
第二页应该包含文档控制,包括文档版本历史,审核者和批准者列表以及贡献者列表。
第三页应包含目录,然后是以下主题。
简介本文档的目的是定义/解释如何在 ABC 聊天应用程序的当前和未来状态下执行性能测试。
ABC 聊天应用程序是一个内部远程支持工作台。该工作台将用于满足客户请求。该工作台具有在线聊天、客户识别、远程PC控制、PC诊断和维修工具等功能。
性能测试的主要目标如下。
- 确信对现有聊天应用程序的更改符合定义的服务级别协议。
- 确保应用程序的性能、服务可用性和稳定性不会因为新的增强功能而受到影响。
- 事务响应时间在不断增加的负载情况下保持在可接受的范围内。
- JVMs在不断增加的负载曲线中显示出稳定的内存使用。
还需要加入项目的架构图。
范围- 对系统关键业务处理进行详细研究后,构建负载分布模型。
- 确定性能测试的关键场景。
- 将之前的发布结果作为未来发布的基线。
- 验证和确认性能测试环境和性能/负载测试工具基础架构,是否需要测试机。
- 使用JMeter为已确定的场景准备性能测试脚本,模拟已确定的峰值负载。
- 在服务器上设置性能监控,用于监控测试,以便在测试执行阶段识别瓶颈。
- 发布性能测试结果。
- 解决识别出的性能问题。
- 为未来的版本设定性能水平的基线。
ABC聊天的性能测试将使用Jmeter,通过编写自定义的XMPP插件,使用smack库进行XMPP连接。这些库用于设置连接、登录和向 XMPP 服务器发送聊天消息。
测试场景将使用JMeter工具编写脚本。脚本将根据需要进行定制。计划表将与所需的升压一起创建,以模拟真实世界的场景。
测试场景将在以下几个方面进行分解和测量。
a) 基线测试。以1个Vuser和多次迭代的方式运行每个场景,以确定应用性能是否符合业务服务水平协议。
b) 基准负载测试。为了满足负载测试下的业务基准,性能测试团队将执行基线负载测试,这将有助于识别任何系统性能问题,随着负载的增加,并创建下一级性能测试的基线。
c) 峰值负载/可扩展性测试。性能测试团队将对不断增加的用户进行多次测试,以满足预期的负载,并测量应用程序的性能,以建立性能曲线,并确定部署是否能在用户峰值负载下支持服务水平协议。
它有助于调整或规划各个Java虚拟机(JVM)所需JVM的总数以及处理器的容量。这将通过增加Vusers数量到峰值容量的50%、75%、100%和125%来实现。
d) 耐力测试。性能测试团队将在8小时/16小时/24小时内运行该测试,以确定内存泄漏、性能问题以及整体系统稳定性。在耐力测试期间,性能测试团队会监控关键性能指标,如事务响应时间和内存使用的稳定性。
性能指标:事务响应时间、吞吐量、点击次数/秒、成功率等。
使用生产数据的副本。
进入和退出标准- 访问环境中的所有应用程序。
- 环境准备完成。
- 性能测试数据准备就绪。
- 进入和退出标准
JIRA中的缺陷管理模块将用于项目中的缺陷记录和跟踪关闭。
在测试执行阶段发现的缺陷识别将被记录在JIRA中,这些缺陷将由开发团队根据以下严重程度来解决。
缺陷评审会议将每天举行,测试、开发、质量分析师和业务团队都会参与。
随着项目接近上线日期,缺陷修复的标准会越来越严格。缺陷修复标准指南将在缺陷评审会议上公布。
缺陷严重性定义
严重性代码的定义如下。
Jmeter
暂停和恢复标准主要从测试环境、应用稳定性、测试数据等考虑。
测试交付- 性能测试策略
- 性能要求文件
- 性能性能测试场景
- 性能性能测试脚本
- 性能性能测试结果
- 性能测试环境将是产品架构图的复制。
- 性能脚本重点在使用率较高的关键流程
- 基础设施问题应在性能测试开始前解决。
- 应用程序是稳定的。
- 硬件和软件资源可用。
- 更改都将通过一个更改控制流程,性能测试团队将评估时间表和资源的影响。
- 独立的服务器
- 启用必要的应用程序跟踪日志达到监控。
- 测试准备和执行阶段,需要来自不同功能、开发、数据库和基础设施团队的支持。
- 应用程序业务用户/主题专家将被用于功能澄清和业务交易签收。
- ABC聊天程序经理将审查和签收。
回想了一下这段时间的经历,我觉得有个很重要的经验可以介绍给大家,那就是:如果你看好这个行业,最开始先不要过多地在意薪资要求,而要主要去看公司提供的学习机会,这方面OK的话,你才有机会大胆地去尝试。
可以大胆尝试的“第一份工作”,能够帮你迅速提升自己的技能,让你验证自己所学的思路和想法,通过这种验证,可以快速进步。
能力和薪资永远是成正比的,只有你自己保持进步,薪资才会随着你能力的提高越来越高。
我认为,这是关于顺利转行并迅速提升,我所能给出的唯一建议。
然后下面分享一些我的自学资料,希望可以帮到大家。
这份资料整体是围绕着【软件测试】来进行整理的,主体内容包含:python自动化测试专属视频、Python自动化详细资料、全套面试题等知识内容。对于软件测试的的朋友来说应该是最全面和完整的备战仓库了,这个仓库也陪伴我走过了很多坎坷的路,希望也能帮助到你。关注微信公众号:【伤心的辣条】,就可以直接获取了! 交流学习裙:902061117
如果文章对你有帮助,麻烦伸出发财小手点个赞,感谢您的支持,你的点赞是我持续更新的动力。
推荐好文:包装成1年工作经验的测试工程师,我给他的面试前的建议如下
自动化测试到底要学什么?
为何跳槽不考虑腾讯?聊聊我和鹅厂的一点往事
自动化测试和手动测试哪个更高级?
新手必看:怎么写一个合格的测试用例?
python登录接口测试问题记录与解决 ( 干 货 )