性能测试面试题总结

**

1、您能否简单介绍一下性能测试的过程

**
测试过程:需求分析-》测试计划-》测试用例-》测试脚本编写-》测试场景运行设计-》测试场景运行-》监控-》结果分析-》系统性能调优-》测试总结(给出 报告)
这个问题可简单说明也可以详细的说很多

1、需求分析:
1.1、明确客户的真正需求这个很重要,如果是一个模糊的需求在日常工作中很容易造成返工。
1.2、不是所有的功能都需要进行性能测试,性能测试人员需结合客户实际的应用场景对需求进行专业分析。 性能测试的测试内容通常是客户应用最多、使用最频繁的功能。
1.3、例如系统中最频繁使用的登录功能来说:客户要求响应时间小于3秒,这个需求就是不明确的,我们需要明确是多少用户访问时。

2、测试计划
客户提出的需求经过认真分析后,性能测试管理人员需要编写的第一份文档就是测试计划)
2.1 测试计划需要明确产品的项目背景,明确测试需求,参考文档(需求文档),软硬件信息确定:操作系统、应用服务器、数据库等软件的版本信息,服务器的硬件配置信息如cpu、网卡、网络带宽等
2.2 明确性能测试工具。该工具能够满足需求描述的指标,简单易用。
2.3 考虑可能遇到的风险并给出预案,明确测试准入、准出标准,明确性能测试人员职责。
2.4 测试计划及时修正。 执行过程中如果遇到与预期不符的,应及时修改计划。

3、性能测试用例
结合用户应用场景,设计相应的覆盖需求的测试用例
3.1 设计用例注意点:对客户应用系统业务要清楚,测试指标要明确
3.2 用例编写:
测试用例名称、测试用例标识、测试覆盖的需求、应用说明、前置条件、用例依赖、用例描述、关键技术、操作步骤、预期结果、实际的运行结果等内容

4、脚本编写
4.1 协议选择明确
4.2 性能测试工具选择或者使用编程语言
4.3 脚本编写需注意脚本之间的前后依赖
4.4 脚本编写完成后,检查并在检查过程中对不必要的代码进行精简
4.5 测试脚本编写需注意编码规范,依照团队规范进行编码
4.6 脚本纳入配置管理

5、测试场景设计
测试场景设计以性能测试用例、测试脚本编写为基础。根据目标进行不同的参数设置
5.1 测试场景操作举例:
业务响应时间测试插入事务
并发操作,加入集合点
系统是否正确执行相应的功能:设置相应检查点
等等
5.2
进程或者线程模拟多个虚拟用户
进程模拟用户 :会反复启动同一个驱动程序加载到内存中(会占用大量随机存储器和系统资源),会限制任意负载生成器上运行的用户数量。
线程模拟用户:将共享父驱动进程内存段,这样会消除多次重新加载驱动程序/进程的需要,从而节省内存控件,使负载生成器可以运行更多的用户。
在应用线程安全协议时推荐使用线程模式。

6、测试场景运行
注意点:
6.1 保持良好沟通
6.2 性能测试工具模拟用户需要占用一定内存,需要保证测试环境达标
6.3 尽量模拟用户的真实环境
6.4 多次测试,结果需要相近

7、场景运行监控
场景运行监控可以查看所需要测试的场景中的关键数据情况,可以用来分析测试结果
7.1 测试时如果负载机有多台,时间需一致,数据同步。
7.2 监控指标清晰

8、运行结果分析
利用性能测试工具搜集测试数据,存储到数据表等文件中
利用工具分析文件中的关键数据图表化,对拐点现象进行重点观察

9、系统性能调优
分析运行结果后,找到系统性能瓶颈
相关开发人员、数据库管理员、网络管理员、系统管理员等根据结果详细分析讨论拿出方案进行调整
性能测试在调整后进行N次测试
9.1 调整过程最好是由易到难进行调整,一次性不要调整太多,这样可以准确知道调整了那个地方性能提升了。
调优由易到难的顺序: 硬件、网络、应用服务器、数据库等配置问题、代码(算法)/数据库脚本(sql 效率)、系统架构
9.2 性能调优有尽头:考虑项目进度在有限时间内尽可能的进行优化

10 性能 测试总结
性能测试工作完成后编写报告
10.1 测试需求覆盖情况、测试过程、测试发现问题、解决方案、解决结果
10.2 测试从开始到结束涉及到的文档需一一列出
10.3 测试总结是团队实施过程的积累,对成长有很大帮助。

你可能感兴趣的:(性能测试)