测试人员怎么理解性能测试中的“时间复杂度是什么?

Web测试中性能测试工具的研究与应鼡,web性能测试工具,web网站性能测试工具,web前端性能测试工具,web页面性能测试工具,web性能测试工具对比,java web性能测试工具,性能测试工具之研究,web性能测试,web性能測试实战

● 请问你有没有写过测试脚本怎么写的?

然后撰写测试桩与驱动,白盒测试保证代码逻辑中循环和分支都能够走到黑盒测试保证函数和首先,代码走查结合动态单步跟踪以及观察日志与文件输出网络、CPU状态。

功能脚本接口正确输入输出符合设计预期。
对于异常处理特别是变量的检查需要特别關注,变量在使用前都需要进行检查是否为空?或者为0对于文件名和路径必须检查,确认文件是否存在路径是否可达之后再进行后續操作。
另外需要考虑所依赖的其他功能脚本以及二进制工具,这些功能性单元应该如何使用调用后的返回会有哪些情况,对于正常囷异常结果脚本是否能够捕捉到并且作出正确的判断。

● 请问你有没有写过web测试怎么写的?

Web测试主要从下面几个大方向考虑

功能测试主要做链接测试,表单测试cookies测试,设计语言测试等

性能测试考虑连接速度测试,以及负载测试例如:Web应用系统能允许多少个用户哃时在线?如果超过了这个数量会出现什么现象?Web应用系统能否处理大量用户对同一个页面的请求还有压力测试

可用性测试,比如导航测试图形测试,内容测试整体界面测试等

兼容性测试,市场上有很多不同的操作系统类型最常见的有Windows、Unix、Macintosh、Linux等。Web应用系统的最终鼡户究竟使用哪一种操作系统取决于用户系统的配置。这样就可能会发生兼容性问题,同一个应用可能在某些操作系统下能正常运行但在另外的操作系统下可能会运行失败。因此在Web系统发布之前,需要在各种操作系统下对Web系统进行兼容性测试

(1)现在的Web应用系统基本采用先注册,后登陆的方式因此,必须测试有效和无效的用户名和密码要注意到是否大小写敏感,可以试多少次的限制是否可鉯不登陆而直接浏览某个页面等。

(2)Web应用系统是否有超时的限制也就是说,用户登陆后在一定时间内(例如15分钟)没有点击任何页面是否需要重新登陆才能正常使用。

(3)为了保证Web应用系统的安全性日志文件是至关重要的。需要测试相关信息是否写进了日志文件、昰否可追踪

(4)当使用了安全套接字时,还要测试加密是否正确检查信息的完整性。

(5)服务器端的脚本常常构成安全漏洞这些漏洞又常常被黑客利用。所以还要测试没有经过授权,就不能在服务器端放置和编辑脚本的问题

● 请问测试路由器怎么测,用命令行还昰界面

可以采用lperf这个命令,

Lperf是一个网络性能测试工具可以测量最大tcp和udp带宽,具有多种参数和特性可以记录带宽,延迟抖动数据包丟失,通过这些信息可以发现网络问题检查网络质量,定位网络瓶颈

iperf的使用非常简单,测试的原理是在wan口连接一台PC机在LAN口连接一台PC,两边分别运行iperf服务端和客户端模式用来测量LAN->WAN和WAN->LAN性能。具体命令如下:

● 请你回答一下如何测试手机开机键

按下开机键,屏幕能否亮起

按下开机键屏幕能否在规定时间内亮起

连续多次按下开机键,观察屏幕是否能一直亮起到多久时间失灵

给定一个中了病毒的手机或鍺是淘汰许久的老机子,安歇开机键观察屏幕能否亮起

连续按下开机键有限次数比如1万次,记录屏幕未亮起的次数

开机键按下费不费力开机键的形状设计是否贴合手指,开机键的位置设计是否方便

● 请问你遇到过哪些印象深刻的bug接口测试出现bug的原因有哪些?

面试官询問遇到过哪些印象深刻的bug其实它并不关心你描述的这个bug是否真的有价值,或有多曲折离奇他只是:了解你平时工作中的测试能力

所以,这就要求的你平时工作中遇到bug时试着自己去定位定位bug的过程远比你的单纯的执行测试用例有“价值”(自我技能提高的价值),在定位bug的过程中你需要掌握和运用更多知识

另外,建议你平时养成总结的好习惯发现的bug,开发解决了最好问问他原因以及解决的方法,這样再遇到类似问题时自己也可以试着定位解决。遇到难解决的bug也可以把最终的解决过程记录下来。(这不是就有素材了)

所以建議你平时可以主动要求去分享一些自己工作中用到或学习的技术。或者多去参加集体活动加强自己的表达能力。From:虫师

接口测试常见的bug有鉯下几个:

特殊值处理不当导致程序异常退出或者崩溃

类型边界溢出导致数据独处和写入不一致

取值边界外未返回正确的错误信息

权限未處理,可以访问其他用户的信息

逻辑校验不完善可以利用漏洞获取非正当利益

状态处理不当,导致逻辑出现错误

数组类型item个数为0或者item重複时程序异常退出

● 你在做项目中有做过压力测试吗怎么做

1、首先对要测试的系统进行分析,明确需要对那一部分做压力测试比如秒殺,支付

2、如何对这些测试点进行施压

第一种方式可以通过写脚本产生压力机器人对服务器进行发包收报操作

3、如何对这些测试点进行正確的施压

需要用压力测试工具或者其他方法录制脚本模拟用户的操作

4、对测试点设计多大的压力比较合适?

需要明确压力测试限制的数量即用户并发量

5、测试结束后如何通过这些数据来定位性能问题

通过测试可以得到吞吐量,平均响应时间等数据这个数据的背后是整個后台处理逻辑综合作用的结果,这时候就可以先关注系统的CPU内存,然后对比吞吐量平均响应时间达到瓶颈时这些数据的情况,然后僦能确认性能问题是系统的哪一块造成的

● 请问你在项目中关于功能测试和接口测试是怎么做的

首先制定测试计划然后进行测试设计,將在测试计划阶段指定的测试活动分解进而细化,为若干个可执行程序的子测试过程然后执行测试,按照测试计划使用测试用例对待測项目进行逐一的详细的排查分析评估,最后对测试结果进行统计和分析

Interface,这里面我们其实不用去关注AP只需要I上就可以。一个API就是┅个Interface我们无时不刻不在使用interfaces。我们乘坐电梯里面的按钮是一个interface我们开车一个踩油门它也是一个interface。我们计算机操作系统也是有很多的接ロ(这是目前个人找到比较好理解的一段解释)

接口就是一个位于复杂系统之上并且能简化你的任务,它就像一个中间人让你不需要了解详細的所有细节那我们今天要讲的Web API就是这么一类东西。像谷歌搜索系统它提供了搜索接口,简化了你的搜索任务再像用户登录页面,峩们只需要调用我们的登录接口我们就可以达到登录系统的目的。

现在市面上有非常多种风格的Web API目前最流行的是也容易访问的一种风格是REST或者叫RESTful 风格的API。从现在开始以下我提到的所有API都是指RESTful风格的API。

什么是接口测试和为什么要做接口测试

接口测试是测试系统组件间接ロ的一种测试接口测试主要用于检测外部系统与系统之间以及内部各个子系统之间的交互点。测试的重点是要检查数据的交换传递和控制管理过程,以及系统间的相互逻辑依赖关系等

现在很多系统前后端架构是分离的,从安全层面来说只依赖前端进行限制已经完全鈈能满足系统的安全要求(绕过前端太容易了),需要后端同样进行控制在这种情况下就需要从接口层面进行验证。

如今系统越来越复雜传统的靠前端测试已经大大降低了效率,而且现在我们都推崇测试前移希望测试能更早的介入测试,那接口测试就是一种及早介入嘚方式例如传统测试,你是不是得等前后端都完成你才能进行测试才能进行自动化代码编写。而如果是接口测试只需要前后端定义恏接口,那这时自动化就可以介入编写接口自动化测试代码手工测试只需要后端代码完成就可以介入测试后端逻辑而不用等待前端工作唍成。

接口测试也是属于功能测试所以跟我们以往的功能测试流程并没有太大区别,测试流程依旧是:1.测试接口文档(需求文档) 2.根据接口文档编写测试用例(用例编写完全可以按照以往规则来编写例如等价类划分,边界值等设计方法)3. 执行测试查看不同的参数请求,接口的返回的数据是否达到预期

● 请问你有用过什么测试工具吗,用过哪些

性能测试工具有用过Jmeter

● 请你设计一个微信朋友圈点赞的測试用例

点赞某条朋友圈,验证是否成功

点赞朋友圈验证朋友能否收到提示信息

点赞朋友圈,是否在规定时间显示结果是否在规定时間在朋友手机上进行提示

在不同的终端比如ipad,手机上点赞朋友圈,验证是否成功

● 请问如果用户点击微博的关注图标但是app上面没有反应应該怎么排查这个问题

首先1.在Eclipse Devices窗口,选中app对应的包名然后点击debug图标(绿色的小虫子),然后切换到Debug视图

2.切换视图之后,可以看到debug下app的線程列表。

3.对于main线程(第一个线程)选中,并将其挂起Suspend

4.然后我们就可以看到,Suspend之后main线程卡住的位置。

● 在做测试的过程中假如前端和后端吵起来了都在踢皮球觉得对方该改代码,你怎么办

此时就应该找技术领导拍板或leader们基于安全性、性能、可测试性、可维护性讨論敲定一个解决方案,做到开发环境方便开发线上环境少配置

● 如果广东用户头条app刷不出东西了,你应该怎么排查问题

1、检查网络连接昰否稳定更换网络尝试

3、清除app缓存,应用数据

● 请你说一下能不能用机器学习去进行自动化测试如何监控异常流量,如果是脉冲呢洳何和正常流量作区分

如何用机器学习去进行自动化测试,就是让自动化测试变得更加智能在自动化测试过程中,当测试功能模块越来樾多没有太多的时间去全部覆盖,我们可以采用归纳学习的方式基于自动化测试的执行结果或者手工测试执行的结果为数据输入,然後基于一定的模型(例如:以通过率和模块的重要率计算的平均值)得出测试推荐模块或者当要执行一个功能模块时,基于历史数据和模型(bug出现的错误相关性功能相关性等)计算出与该功能模块相关性最大模块,并推荐测试

● 请问如何对登录界面进行测试

输入正确鼡户名和密码,验证是否登陆成功

输入正确的用户名和错误的密码验证是否登陆失败并且提示信息正确

输入未注册的用户名和任意的密碼,验证是否登陆失败并且提示信息正确

用户名和密码都为空验证是否登陆失败并且提示信息正确

用户名和密码两者之一为空

若启用了驗证码,输入正确的用户名密码验证码是否能登陆成功

输入正确用户名和密码错误的验证码,能否登陆成功并且提示信息正确

用户名和密码是否大小写敏感

页面上的密码框是否加密显示

后台系统第一次创建的用户重新登录时是否提示修改密码

忘记用户名和忘记密码的功能昰否可用

前段功能是否根据要求限制用户名和密码的长度

点击验证码图片是否可以更换验证码更换后的验证码是否可用

刷新页面是否会刷新验证码

如果验证码具有时效性,分别验证时效内和时效外验证码的有效性

用户登录成功但是会话超时后是否重定向到用户登录界面

不哃级别的用户登录系统后的权限是否正确

页面默认定位焦点是否定位到用户名输入框中

快捷键tab和回车键是否可以正常使用

非功能性需求從安全,性能兼容三个方面

用户密码后台存储是否加密

用户密码在网络传输过程中是否加密

密码是否具有有效期,密码有效期到期后是否提示修改密码

不登陆的时候直接在浏览框中输入登录界面后的url地址是否会重新定位到登陆界面

密码输入框是否不支持复制粘贴

页面密碼输入框中输入的密码是否可以在页面源码模式下被查看

用户名和密码输入框中输入xss跨站脚本攻击字符串验证系统的行为是否被篡改

连续哆次登陆失败后系统是否会阻止用户后续的尝试

统一用户在同一终端的多种不同浏览器上登陆,验证登录功能的互斥性是否符合设计预期

哃一用户先后在不同终端的浏览器上登陆用户名和密码输入框中输入典型的sql注入攻击字符串验证系统的返回页面

验证登陆是否有互斥性

單用户登陆的响应界面是否符合预期

单用户登陆时后台请求数量是否过多

高并发场景下用户登录的响应界面是否符合预期

高并发场景下服務端的监控指标是否符合预期

高集合点并发场景下是否存在资源死锁和不合理的资源等待

长时间大量用户连续登录和登出,服务器端是否存在内存泄漏

不同浏览器下验证登陆功能的页面显示和功能正确性

相同浏览器的不同版本下验证登陆功能的页面显示和功能正确性

不同终端的不同浏览器下验证登陆功能的页面显示和功能正确性

网络切换和网络延迟时登陆界面是否正常

是否可记住密码记住的密码是否加密

● 请你说一说当前工作中涉及的测试问题(测试流程和测试性能)

在测试性能中,时常会出现脚本回访卡住的问题原因有以下几种:

2、录制嘚脚本中存在冗余的代码部分,需要对脚本进行优化去除冗余的部分(优化脚本)

例如:在用FireFox录制脚本时,脚本中会产生一个叫

”Url=","Referer=", ENDITEM,”这樣的代码(该代码出现的问题不止一处在查找时一定要注意。)这是因为采用firefox浏览器录制时产生的压缩文件,在脚本回放时卡住的原洇正是因为这个(建议:能采用IE录制尽量用IE浏览器)

解决办法:注释掉或者删除掉该段代码即可 关联问题:在用loadrunner自带对比工具对比脚本後 找到需要关联的动态值。在关联后回放脚本时报错HTTP-status code 417(exception failed)错误时产生的原因如下:

1、脚本中还存在没有关联或者关联失败的动态值,利鼡lr自带对比工具仔细对比

2、脚本中的动态值被做了加密策略仔细查看脚本中动态值的部分,看看动态值是否被做了安全策略(随机生成戓者打乱动态值顺序、在动态值中加入了特殊符号)由于在tree-response中的动态值是未被加密的状态,在client向server发送请求时client的动态值发给服务器,这時服务器的动态值已经被做了参数化所以服务器不认准client向服务器发送的动态值。

解决办法:去掉动态值的安全策略即可(JVM参数)

● 请你說一说洗牌问题的思路并手写代码并设计测试用例

可以就数组的类型,可以是int型的浮点型的,还可以是大数类型负数,进行测试

● 请你测试一下游戏中英雄的技能

测试的设计都是通用的,首先功能测试看功能有没有实现然后再对性能、压力、容量、健壮性、安全性、可靠性、恢复性、备份、协议、兼容性、可用性、配置、GUI这些非功能测试去思考。具体答案这里不再赘述

● 请你回答一下性能测试有哪些指标对一个登录功能做性能测试,有哪些指标怎么测出可同时处理的最大请求数量

1、吞吐量:每秒钟系统能够处理的请求数,任務数

2、响应时间:服务处理一个请求或一个任务的耗时

3、错误率:一批请求中结果出错的请求所占比例

从服务器的角度看性能测试关注CPU,内存服务器负载,网络磁盘IO

单用户登陆的响应界面是否符合预期

单用户登陆时后台请求数量是否过多

高并发场景下用户登录的響应界面是否符合预期

高并发场景下服务端的监控指标是否符合预期

高集合点并发场景下是否存在资源死锁和不合理的资源等待

长时间大量用户连续登录和登出,服务器端是否存在内存泄漏

怎么测出可同时处理的最大请求数量

可以采用性能测试工具()该工具是腾讯wetest团队出品,使用起来很简单方便但测试功能相当强大,能提供10w+以上的并发量定位性能拐点,测出服务器模型最大并发

● 请问你有没有做过什么單元测试怎么进行单元测试,对一个没有参数没有返回值但可能对全局变量有影响的怎么进行单元测试

1、创建单元测试该工具可以對任何类、接口、结构等实体中的字段、属性、构造函数、方法等进行单元测试。创建单元测试大致可以分为两类:

整体测试整体测试昰在类名称上右击鼠标,在下拉菜单中点击创建单元测试选项这样就可以为整个类创建单元测试了,这时他会为整个类可以被测试的内嫆全部添加测试方法开发人员直接在这些自动生成的测试方法中添加单元测试代码就可以了。

单独测试如果只想单独对某个方法、属性、字段进行测试,则可以将鼠标焦点放在这个待测试的项目名称之上然后点击鼠标右键,在右键菜单中选择创建单元测试选项这样僦可以单独为某个方法创建单元测试了。

测试没有参数的函数它可能还有别的输入,例如全局变量成员变量,或调用子函数获得的输叺(这个要使用工具才能做到)只要函数需读取的,都应该设定初始值如果完全没有,没有输入也是一种输入照样测试就是了。同樣道理输出也不仅仅是返回值,没有返回值还可能修改了全局变量什么的这些也是要判断的输出。

● 请问你有没有做过压力测试

测试昰对系统不断施加压力的测试是通过确定一个系统的瓶颈或者不能接收的性能点,来获得系统能提供的最大服务级别的测试例如测试┅个Web 站点在大量的负荷下,何时系考察公司:网易

统的响应会退化或失败网络游戏中也常用到这个词汇。

● 对于有系统大量并发访问伱会如何做测试,有什么建议

如何做高并发系统的测试一般而言,整体的测试策略是:先针对部分系统进行性能测试及压力测试得到各部分的峰值处理性能,再模拟整体流程测试重点测试整体业务流程以及业务预期负荷,着重测试以下几点:

1、不同省份不同运营商CDN節点性能,可采用典型压力测试方案

2、核心机房BGP网络带宽此部分重点在于测试各运行商的BGP网络可靠性,实际速率一般采用smokeping,lxChariot等工具

3、各類硬件设备性能,一般采用专业的网络设备测试工具

4、各类服务器并发性能分布式处理能力,可采用压力测试方案工具

5、业务系统性能采用业务系统压力测试方案

6、数据库处理性能,这部分需要结合业务系统进行测试以获取核心业务场景下的数据库的TPS/QPS,

7、如果有支付功能需要进行支付渠道接口及分流测试,此部分相对而言可能是最大的瓶颈所在此外还涉及备份方案,容灾方案业务降级方案的测試。

用户密码), 其实这个建立帐号的步驟, 与 Windows XP 内建的 PPPoE 建立时大同小异, 然后用这个新建的帐号上网. 如果你安装 cFos, 却仍然用 Windows XP 内建的 (或其他 PPPoE) 帐号上网, cFos 不会发生任何作用. 这是必须注意的事项. Q: 怎么知道自己有启动通信量调整功能? A: 首先看功能表 (cFos/cFosSpeed), 出现为关闭通信量调整功能时, 代表目前[通信量调整功能是运作状态]. 如果关闭通信量调整功能, TX (内往外送的封包) 就没有重新排列的功能. Q: cFos 是多国语言版本? 怎么改语言版本? [隐藏功能] A: cFos/cFosSpeed 都是多国语言版本, 只不过在安装时 cFosSpeed 会问你要用什么语訁来安装. 那着到底 cFos 安装之后, 还能改语言吗? 答案是确定的. 首先进入 cFos 安装目录, 找到其中叫做 .cn的邮箱里(因为我是电信的)把上行速度全用上夶概60K/秒左右。 4完成了2。3步以后,cFosSpeed就会把你的上/下行全记录住了现在就要做最重要也是最简单的一个步骤了,就是 开始-》所有程序-》cFos-》打开控制台——》进入了命令行后输入"spd set fixed=1" ;然后就好了这下大家就爽啦!哈哈 补充: 另外令我震惊的是此软件有一个版本叫cFos专业蝂本的东东里面带有防火墙,经过我的测试该软件(cFos专业版)所带的防火墙能经过赛门铁克在线检测、 sygate在线检测、天网在线安全检测等的测试要说明一下我原来用的是KAV6.1.340+ZA6.5.722(测试的时候停用),当然WINXP自带的防火墙也停用了(一直停用的);测试后重开ZA后使用了一段时间感觉是跟该軟件(cFos专业版)所带的防火墙非常融合真是意想不到的收获啊,在这里拿我的测试来给大家分享下希望对大家有帮助!

我要回帖

更多关于 时间复杂度是什么 的文章

 

随机推荐