• 1
  • 1
分享

1、目前正在研究jmeter,请问初期做性能,应先从几点做起?

Jmeter和LR都是目前性能测试的首选工具,如果你有LR的学习背景,那么Jmeter上手会很快,重点理解线程和进程的概念,流程和LR是类似的。如果没有,从入门的角度我建议先了解常用网络协议和操作系统线程和进程的概念,Jmeter用java比较理想,可以考虑了解一些编程基础。 PS:其实用Jmeter先学习接口测试会更好理解性能。


2、请问零基础,计算机硬件专职业转行到这个行业,需要准备哪些?

计算机硬件已经具备了基础的计算机知识,要转软件是相对容易的,可以考虑从如下维度准备:

1)先准备自己拿手的网络和操作系统部分,网络主要是应用层协议,为性能和接口测试做铺垫,操作系统主要是为了搭建测试环境

2)建议熟悉一种编程语言,java或者Python都是首选语言,不需要精通,至少要能够进行简单的脚本编写

3)找一本介绍全面的专业的软件测试书籍精读,一定是精读。

4)如果可能最好找项目练手,从功能测试开始


3、目前做接口测试,进阶的时候还是会茫然,希望您能给点建议,另外您在做管理的时候,对员工一般是持什么态度,或者说姿态呢?如何培养,如何相处,如何分配任务,控制项目进度,质量?

这问题好大,我挑些重点说:

1)接口测试实际上是协议的测试,建议你从网络协议入手,这样才能做好接口测试

2)至于测试管理工作我认为因人而异,有些人天生强势,但有些偏平和,最关键的还是自身实力,如果自己不够强,一句俗话叫做将熊熊一窝就是这个理,姿态不重要,实体才重要。

3)至于培养,相处,分配任务这些是管理细则,总的思路是用其所长补其所短,人无完人,而且大多数都会觉得自己比领导牛B,让每位员工发挥最大价值,有成就感比较重要。

4)控制项目进度和质量  这个是方法问题,有很多方法可以控制,例如:测试版本控制,缺陷分析等手段,可以参考一下软件工程,敏捷过程等方面的资料。希望对你有所帮助


4、用Loadrunner做压测,响应时间比实际要高很多,用LR做压测,平均响应时间几十秒钟,实际手动打开链接1秒不到,差距很大,请问有哪些原因会导致这个问题呢?

比如下图,vuser才十几个,响应时间就十几秒了,但是实际上的体验还是很快,如何解决?

初步猜测应该是响应时间的设置不当导致的,举例说明:你要录制登录脚本,并记录登录的响应时间,你在LR的脚本中插入了事务函数(注意是一组函数),结果得到的响应时间是5s,但实际登录你感觉不到1s,那么可能是你的函数位置不对,包含了输入用户名和密码的时间,也可能是你的响应时间函数内包含了思考时间。前者你需要调整事务的位置;后者你需要在run time setting中排除掉思考时间。供参考


5、请教一下怎么样去抓程序的页面元素啊? 像Selenium web那样 抓页面的元素?有什么好的工具或者方法?

如果只是想抓取页面元素,推荐Chrome Developer tools,在Elements下查看。如果是为了自动化测试,除了selenium也可以考虑QTP(ALM)


6、请问软件疲劳测试应该怎么做?

一般是做压力测试,压测依据项目和业务的不同都会有所差异,推荐三种,一种是4H峰值压力的80% ;一种是24H,压力量可以控制在60%70%,还有一种是7*24小时(有的是一直持续50%的压力,有的是按时间波动压力值进行测试)


7、对B/S系统做压力测试前需要做哪些准备?如何客观的去分析一个系统?压力测试工具以前只接触过 Loadrunner,所以打算用Loadrunner,不太熟,里面的需要做的系统指标的设置看起来很麻烦,不知怎么去分析系统。还有就是做压力测试前除了选择熟悉工具之外,我还需要做写什么呢?

你的问题很难一两句话说清楚,对于前期准备工作,只能谈谈我在性能测试项目中的拙见:

1)先对需求进行初步分析,确定哪些环节需要性能测试,也就是对于你们系统来说压力最大的点在哪里

2)看现有资源,提前做好环境的准备工作,最好测试环境和生产环境1:1(实在做不到也要尽量接近,这点很重要,不然你要做等比换算 )

3)看被测系统使用的协议以及操作系统和应用服务器等各类配置,选择匹配的测试工具(多数WEB系统LR是可以应对的)

4)看时间,大多数情况下性能测试的时间并不充裕,需要抓重点优先测试。


8、如何取舍Loadrunner和Jmeter?

全看心情,玩笑哈~~如果从学习入门的角度就看代码和网络基础,如果代码和网络基础还不错直接用Jmeter入门就好,反之用LR入门更好。如果从企业应用的角度就看哪种更合适,对被测系统支持的更好。

工具只是形式,理解性能测试的基本原理用什么工具都可以的。


9、对Java频繁GC怎么定位问题?

请尝试用profiler寻找内存异常,例如短时间过多的对象创建,或者较大的对象创建。


10、我想实现50个用户并发上班打卡签到,参数化、迭代已设,然后,在签到函数前面添加了集合点函数,运行结果发现,用户签到后返回的签到时间是一分钟一个,并没有在同一个时间点进行签到!请教这是为什么?如何解决?

先去掉集合点试试看呢?同时启动50个用户并行(不设置集合点也可以实现并发操作的),如果还是持续一分钟,那请你检查事务时间和思考时间,事务时间是需要你手动配置的,思考时间默认是启动状态,你可以在Runtime Setting中查看一下,有可能你最终得到的1分钟是整个脚本运行一次的时间或者是包含了思考时间的结果,不是同时打卡的时间。


11、请问电商秒杀产品是如何测试的?

和其他产品的测试没有太大区别,主要是对时间点的要求比较高,可以考虑在性能测试脚本中使用集合点函数实现同一秒钟的并发。


12、压力测试和性能测试一样吗?

分类方法各有不同,没有定论,普遍来讲性能测试是对这类测试的统称。我倾向于下面的分类方式

性能测试(狭义)——性能测试方法是在特定的运行环境下,通过模拟生产运行的业务压力量和使用场景组合,测试系统的性能是否满足生产性能要求。

基准测试——在一定的软件,硬件和网络环境下,模拟一定数量的用户运行一种或多种业务,将测试结果作为基线数据,供后续测试活动参考。

负载测试——通过在被测系统上不断加压,直到性能指标达到极限,例如“响应时间”超过预定指标或某种资源已经达到饱和状态。

压力测试——压力测试也称为强度测试,主要测试系统在一定饱和状态下,例如cpu、内存在饱和使用情况下,系统能够处理的会话能力,以及系统是否会出现错误。PS:在极限值80%左右的情况下持续运行一段时间(2~4小时)

配置测试——配置测试方法通过对被测系统的软\硬件环境的调整,了解各种不同对系统的性能影响的程度,从而找到系统各项资源的最优分配原则。

可靠性测试——在系统加载一定业务压力的情况下,使系统运行一段时间,以此检测系统是否稳定。

并发测试——并发测试方法通过模拟用户并发访问,测试多用户并发访问同一个应用、同一个模块或者数据记录时是否存在死锁或其者他性能问题。

PS:分类其实不那么重要,在实际项目中往往都是混合应用的


13、Web性能测试除了并发登陆以外,还有哪些比较常见的测试场景?

场景取决于业务,例如你是电商网站,你肯定要测试同时下订单的情况? ?;如果你是医院挂号网站,你肯定要测试多人抢一个医生的号源;如果你是银行系统,要考虑多人同时取款吧?


14、一般网站压力多大百万用户?

这要看计算方式,理论值100万/天的业务访问量  拆分到每秒钟是非常少的;但这不符合实际情况。

如果系统已上线,直接取线上数据做参考即可,一天中的峰值有几个,峰值时段分布情况可以推算出并发用户量;

如果系统未上线,可以利用2/8原则,80%用户集中在20%的时段,推导出业务访问量


15、目前遇到一个问题,在一台配置为8g,i3的win7系统运行压力测试,并发总是上不去,总是在140左右就会出现异常,超时等问题,请问如何分析呢,是因为服务器还是电脑的问题?

服务器压力上不去可以从如下维度分析:

  • 网络流量是否有限制、

  • 数据库/应用服务器是否报了异常,如果有请查看一下日志;

  • 查看操作系统的资源监控情况,CPU占用率如何,是否达到了100%

  • 代码方面是否存在性能问题,可以在大并发访问的时候手动访问系统,看看业务上有无异常。

PS:性能瓶颈分析和定位需要一个积累的过程,要学会看一些基础指标,提升编码能力,理解软件架构。


版权声明:本文出自51Testing会员投稿,51Testing软件测试网及相关内容提供者拥有内容的全部版权,未经明确的书面许可,任何人或单位不得对本网站内容复制、转载或进行镜像,否则将追究法律责任。

  • 【留下美好印记】
    赞赏支持
登录 后发表评论
+ 关注

热门文章

    最新讲堂

      • 推荐阅读
      • 换一换
          •   苹果公司在增加 iPhone RAM 方面走得最远的一次是 8GB,而且是针对价格较高的 iPhone 15 Pro 和 iPhone 15 Pro Max。然而,随着人工智能竞赛的白热化,科技巨头们都在推动自己的产品加入设备上的大型语言模型(LLM),这样一来苹果很可能不得不对其产品阵容进行调整。  据一家韩国证券公司分析称,其中一些变化包括增加即将推出的 iPhone 16 的运行内存,但这些说法是在有报道称该公司正在研究如何使用 NAND 闪存运行设备上人工智能之后提出的。  爆料人 Revegnus 没有提及这家韩国证券公司的名称,但他表示,一些分析师认为,苹果将增加这些机型的运行...
            0 0 674
            分享
          •   下坡路?  测试员干到30岁,好不容易从测试小白混到了白领,却再也干不动了,还时时面临失业的危险。30岁,是一个测试员伤不起的年龄。明天,何去何从?  30岁现象  还有机会吗?  在官场上,曾经有一个59岁现象,就是官员们会在59岁时,会使劲捞上一把。很明显嘛,权力过期作废,再不捞就要退休了,没有机会了。  在测试员的圈子里,也有一个30岁现象。当然,如果你有铁饭碗,比如以前在国企或政府机关,那你是无法理解底层劳动人民的感受的。同时也要恭喜你成为体制内的一员,可以一直干到退休无忧。不过现在随着制度改革,也是空想了。  30岁现象人人都明白,但要给出一个定义并不容易。  列举几个表现,也许...
            0 0 725
            分享
          • 简介Loadrunner是一种预测系统行为和性能的负载测试工具,它可以轻松创建虚拟用户、创建真实的负载、定位性能问题、重复测试保证系统的高性能。LR与JM对比组成Vuser GeneratorC语言脚本开发的Controller指挥官的作用,控制执行场景Analysis收集测试数据,进行结果分析的什么时候可以开始执行性能测试功能测试通过;一般需要进行性能测试的系统,都是用户量比较大、业务使用比较频繁、比较重要的功能模块。使用Loadrunner的步骤制定性能测试计划—>开发测试脚本—>设计测试场景—>执行测试场景—>监控测试场景—>分析测试结果为什么用事务事务Tr...
            13 13 1619
            分享
          • 测试框架结构:jenkins+git+postman+newman相关概念:Jenkins一个用Java编写的开源的持续集成工具,提供了软件开发的持续集成服务,可监控并触发持续重复的工作,具有开源、支持多平台和插件扩展、安装简单、界面化管理等特点。更多介绍(https://jenkins.io/)gitGit是一个开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目。postman一款强大的图形界面接口开发/测试工具,能够生成接口文档,可以使接口开发更简单迅速。newmannewman是用于执行postman collection的命令行工具,可以让你直接通过命令行的形式来执行pos...
            15 15 2463
            分享
      • 51testing软件测试圈微信