发表于: 2018-11-23 21:37:56
1 694
今天完成的事情:
测试用例
明天计划的事情:
任务七
遇到的问题:
没有
收获:
1.功能测试和性能测试对比?
♦功能测试主要根据产品业务需求、产品行业特征、模拟用户操作方式来测试一个产品的特性以确定它们是否满足用户需求。
♦性能测试则是通过某种特定的方式对被测试系统按照一定的测试策略进行施压,获取该系统的响应时间、运行效率、资源利用情况等各项性能指标,来评价系统是否满足用户性能需求的过程。
通俗地说,功能测试用于确保软件系统做了正确的事情,性能测试则用于确保软件系统快速地完成了任务。
所以笔者认为:可以不做自动化,但是在保证功能的前提下,下来就是要考虑性能了,因为面对挑剔的使用群体,我们要做到快,准,狠。
性能测试基本流程是什么?
1、确性能测试需求
2、制定性能测试方案
重点描述如何进行性能测试,和功能测试方案基本一致,但是必须明确关键功能的相应时长和用户数,例如查询功能平均使用次数xx,平均用户数xx,高峰段用户数xx,平均相应小于xx秒,可接受最长响应时长小于xx秒,使用时间段8点到12点
3、编写性能测试案例
和功能测试用例基本一致
4、执行性能测试案例
5、分析结果
6、生成性能测试报告
测试报告尽量写的非专业人士也可以读懂。主要的部分要有测试基本信息、测试环境、执行情况、结果分析、总结说明。还可以给出一些建议方案
2.性能测试分类是什么?
1、负载测试::闲时负载量。通过测试系统在资源超负荷情况下的表现来发现设计上的错误或验证系统的负载能力。目标是确定并确保系统在超出最大预期工作量的情况下仍能正常运行。还用来评估性能特征,如响应时长、事务处理速度等
2、压力测试:极限负载量。对系统不断施加压力的测试,判断系统能提供的最大服务级别。例如测试一个web站点,经过不断加压判断出达到多少用户并发的时候服务响应失效。
3、容量测试:支持的最大数量
3.性能测试指标是什么?
系统指标:
1、并发用户数:某一物理时刻同时向系统提交请求的用户数
2、平均响应时间:系统处理事务的响应时间的平均值。事务的响应时间是从客户端提交访问请求到客户端接收到服务器响应所消耗的时间。对于系统快速响应类页面,一般响应时间小于2秒
3、事务成功率:性能测试中,定义事务用于度量一个或者多个业务流程的性能指标,如用户登录、保存订单、提交订单操作均可定义为事务
4、平均响应时间:对于客户端用户来说,最直观的体验就是访问该页面快或者慢,即响应时间的长短。比如在持续并发性能测试过程中,客户感知访问应用很慢,监控到的平均响应时间也逐渐变长,这时就需要先借助于监控到的资源指标
资源指标:
1、CPU使用率:指用户进程与系统进程消耗的CPU时间百分比,长时间情况下,一般可接受上限不超过85%
2、内存利用率:内存利用率=(1-空闲内存/总内存大小)*100%,一般至少有10%可用内存,内存使用率可接受上限为85%
3、磁盘I/O: 磁盘主要用于存取数据,因此当说到IO操作的时候,就会存在两种相对应的操作,存数据的时候对应的是写IO操作,取数据的时候对应的是读IO操作,一般使用% Disk Time(磁盘用于读写操作所占用的时间百分比)度量磁盘读写性能
4、网络带宽:一般使用计数器Bytes Total/sec来度量,Bytes Total/sec表示为发送和接收字节的速率,包括帧字符在内。判断网络连接速度是否是瓶颈,可以用该计数器的值和目前网络的带宽比较
4.项目组不同角色眼中的软件性能?
1、系统管理员眼中的软件性能
系统管理员作为软件系统的运维人员,主要关注服务器的资源使用状况、系统的扩展性、系统支持的最大用户量、系统稳定性,以及系统可能出现的瓶颈、出现异常的情况下如何处理等。
2、研发人员眼中的软件性能
作为研发人员,他们会更关注软件系统架构设计的合理性、数据库的设计是否存在问题、代码是否存在性能方面问题、内存使用方式是否正确、线程同步方式是否合理、是否存在不合理的资源竞争等。
3、测试人员眼中的软件性能
测试人员是软件性能质量的把关者,在软件性能生命周期中占据至关重要的位置,软件性能测试工程师要对性能问题进行监控、分析及模拟实际使用过程中所出现的性能问题。还要跟各个角色做好沟通工作,对测试出的各种性能问题,要提供充分有力的数据,为后续的分析和定位性能问题、性能优化工作做好充分的准备。
5.性能测试的目的是什么?
性能测试目的验证软件系统是否能够达到用户提供的性能指标,同时发现存在的性能瓶颈,最好起到优化的目的。
1、评估系统的能力:主要从测试结果中的负荷和响应时间,并发用户等数据验证系统的各项指标达到用户需求
2、识别体系中的弱点:根据测试过程中的负荷或代码走差方式找出系统的极端或繁琐的代码逻辑,从而找到体系中的瓶颈或薄弱地方
3、系统调优:重复进行性能测试,验证系统活动是否达到预期结果,从而进行改进
4、检测软件中的问题:主要查找一些隐含的问题或者硬件引发的问题。主要方法大量的重复测试验证
5、验证稳定性和可靠性:不但要验证系统的稳定性和可靠性,还要验证人为因素的稳定性。
评论