金九银十,我不允许你们不知道这些软件测试面试题

金九银十招聘旺季迎来最后一段时间,许多的小伙伴们到现在还没有做好面试准备,而如今的软件测试岗位又特别卷,为此我整理了一些软件测试方面的的面试题,希望能帮助到大家,话不多说,我们直接进入正题。

一、什么是自动化测试
概念:让程序代替人为去验证程序功能的过程
1.解决-回归测试
2.解决-压力测试
3.解决-兼容性测试
4.提高测试效率,保证产品质量
回归测试:项目在发新版本之后对项目之前的功能进行验证;
压力测试:可以理解多用户同时去操作软件,统计软件服务器处理多用户请求的能力
兼容性测试:不同浏览器(IE、Firefox、Chrome)等等

二、自动化测试优点
优点
1.较少的时间内运行更多的测试用例;
2.自动化脚本可重复运行;
3.减少人为的错误;
4.克服手工测试的局限性;

三、.自动化测试分类有哪些?
1.Web-自动化测试
2.移动-自动化测试
3.接口-自动化测试
4.性能-自动化测试
5.安全-自动化测试

四、App出现crash原因有哪些?

1.内存管理错误:可能是可用内存过低,app所需的内存超过设备的限制,app跑不起来导致App crash。或是内存泄漏,程序运行的时间越长,所占用的内存越大,最终用尽全部内存,导
致整个系统崩溃。亦或非授权的内存位置的使用也可能会导致App crash。
2.程序逻辑错误:数组越界、堆栈溢出、并发操作、逻辑错误。e.g.app新添加一个未经测试的
新功能,调用了一个已释放的指针,运行的时候就会crash。
3.设备兼容:由于设备多样性,app在不同的设备上可能会有不同的表现。
4.网络因素:可能是网速欠佳,无法达到app 所需的快速响应时间,导致app crash。或者是不
同网络的切换也可能会影响app的稳定性。

五、push如何测试?

检查Push消息是否按照指定的业务规则发送;检查不接收推送消息时,用户不会再接收到Push
消息;
如果用户设置了免打扰的时间段,检查在免打扰时间段内,用户接收不到Push。在非免打扰时间
段内,用户能正常收到Push;
当Push消息是针对登录用户的时候,需要检查收到的 Push与用户身份是否相符,没有错误的将其他人的消息推送过来。一般情况下,只对手机上最后一个登录用户进行消息推送;
测试Push时,在开关机、待机状态下执行推送,消息及其推送跳转的正确性;
push 消息时,会有红点展示,推送消息阅读前后数字的变化是否正确;
应用在开发、未打开状态、应用启动且在后台运行的情况下是push 显示和跳转否正确;
多条推送的合集的显示和跳转是否正确。

六、APP的闪退通常是什么原因?
缓存垃圾太多,Android系统的特性,如果长时间不清理垃圾文件,会导致越来越卡,甚至闪
退;
运行程序太多,导致内存不足;
应用版本兼容问题,分辨率兼容问题;
APP中访问网络的地方,组件能否正常下载并显示;
APP的 SDK与手机系统不兼容;
系统升级后,新版本不兼容老版本的API,返回对象失败,报空指针;软件权限未开放。

七、简述 Android 四大组件及生命周期?
Android的四大组件包括:Activity、Service、BroadcasReceiver, ContentProvider

八、Android的兼容性测试都考虑哪些内容?

品牌机型兼容:根据市场占有率、发布时间等指标对主流、最新机型进行重点兼容

ROM兼容:需兼容原生的ROM(2.1、2.2、2.3、4.0、4.1、4.2);第三方ROM(小米、百度易、点心、魅族、阿里云.……)
屏幕兼容:需兼容HVGA、VGA、WVGA、FWVGA、720p、1080p屏幕分辨率,并考虑不同PPI的情况
软件兼容:安全类软件(百度手机管家、360优化大师、360安全卫士、QQ手机管家、安卓优化大师、网秦、LBE),输入法软件(系统自带、Sogou、百度)
版本兼容:服务器端需要兼容产品早期版本所需的API接口
网络兼容:WiFi、3大运营商的2G,3G,4G网络,需区分WAP和NET接入

九、.BDD是什么?你了解多少?TDD是什么?
BDD:行为驱动开发(Behavior DrivenDevelopment )
TDD:测试驱动开发(Test-DrivenDevelopment)

十、简述Appium的原理?

Appium是使用Node.js平台编写的"HTTPServer”,并使用Webdriver JSON线协议驱动iOS和Android会话。
因此,在初始化Appium Server之前,必须在系统上预先安装Node.js 当Appium被下载并安装
时,在我们的机器上设置一个暴露REST API的务器
它从客户端接收连接和命令请求,并在移动设(Android/ iOS)上执行该命令,它响应HTTP响应。再次,为了执行此请求,它使用移动测试自动化框架来驱动应用程序的用户界面。
框架像Apple Instruments for iOS(仅适用于Xcode3.0或更高版本的OSXv10.5及更高版本)适用于Android API的 GoogleUIAuutomator 16级或更高版本
Selendroid for Android API等级在15以下。

十一、提到jmeter中的正则表达式是什么?
根据模式(patterns),使用正则表达式搜索和操作文本。jmeter可用于解释在整个jmeter测试
计划中使用的正则表达式或模式的形式。

十二、.解释什么是采样器(Samplers)和线程组(Thread group )?
线程组:对于任何测试计划,线程组元件都是JMeter的开始部分。这是JMeter的重要元件,你
可以在其中设置多个用户和时间来加载线程组中给出的所有用户。
采样器:采样器生成一个或多个采样结果;这些采样结果具有许多属性,例如经过时间、数
据大小等。采样器允许JMeter通过采样器将特类型的请求发送到服务器,线程组决定需要发出
的请求类型。一些有用的采样器包括HTTP请求、FTP请求、JDBC请求等等。

十三、解释什么是预置处理器元件?列出一些预处理器元件?预置处理器是在采样器执行之前发生的事情。为了在执行采样请求之前对其进行配置,或者用于更新未从响应文本中提取的变量,需要使用预处理器元件。
一些预处理器元件是:
· HTTP URL重写修饰符
·HTTP用户参数修饰符
·HTML链接解析器
• BeanShell PreProdwssor

十四、.JMeter为性能测试提供什么好处?
JMeter提供性能测试方面的优势,例如:
·。它可以用于测试静态资源和动态资源的性能;
。它可用于测试网站最大并发用户数,从而分析定位网站瓶颈;
。它提供了性能报告的图形化分析

十五、怎么分析性能测试结果?
首先查看事物通过率,然后分析其他性能指标,比如,确认响应时间,事务通过率,CPU等指标
是否满足需求;如果测试结果不可信,要分析异常的原因,修改后重新测试

十六、think_time的作用是什么?
模拟真实生产用户操作,考察对服务器所造成的影响。在确定性能测试结果可信后,如果发现以下问题,按下面提供的思路来定位问题

十七、相应时间不达标怎么办?

查看事务所消耗的时间主要在网络传输还是服务器如果是网络,就结合Throughput(网络吞吐量)图,计算带宽是否存在瓶颈,
如果存在瓶颈,就要考虑增加带宽,或对数据的传输进行压缩处理;
如果不存在瓶颈,那么,可能是网路不稳定导致。
如果主要时间是消耗在服务器上,就要分别查看web服务器和数据库服务器的CPU,内存的使用
率是否过高,因为过高的CPU,内存必定会造成响应时间过长
如果是web服务器的问题,就把web服务器对应上对应的用户操作日志取下来,发给开发定位;
如果是数据库的问题,就把数据库服务器对应上对应的日志取下来,发给开发定位。

十八、服务器性能分析都从哪些角度来进行?

从维度上划分,性能指标主要分为两大类,分别是业务性能指标和系统资源性能指标。业务性能
指标可以直观地反映被测系统的实际性能状况,常用的指标项有:
1.并发用户数
2.事务吞吐率(TPS/RPS)
3.事务平均响应时间
4.事务成功率
系统资源性能指标,主要是反映整个系统环境的硬件资源使用情况,常用的指标包括:
1.服务器:CPU利用率、处理器队列长度、内存利用率、内存交换页面数、磁盘IO状态、网卡带宽使用情况等;
2.数据库:数据库连接数、数据库读写响应时长、数据库读写吞吐量等;
3.网络:网络吞吐量、网络带宽、网络缓冲池大小;
4.缓存(Redis):静态资源缓存命中率、动态数据缓存命中率、缓存吞吐量等;
5.测试设备(压力发生器):CPU利用率、处理器队列长度、内存利用率、内存交换页面数、磁盘IO状态、网卡带宽使用情况等。

十九、一台客户端有三百个客户与三百个客户端有三百个客户对服务器施压,有什么区别?
300个用户在一个客户端上,会占用客户机更多的资源,而影响测试的结果。线程之间可能发生干扰,而产生一些异常。
300个用户在一个客户端上,需要更大的带宽IP 地址的问题,可能需要使用 IP Spoof 来绕过服务器对于单一IP地址最大连接数的限制。
所有用户在一个客户端上,不必考虑分布式管理的问题;而用户分布在不同的客户端上,需要考虑使用控制器来整体调配不同客户机上的用户。同时,还需要给予相应的权限配置和防火墙设置。

二十、请简单介绍一下实用过的安卓U自动化测试工具?
appium:是一个移动端的自动化框架,可用于测试原生应用,移动网页应用和混合型应用,且是跨平台的。
robotium:是一款国外的Android自动化测试框架,主要针对Android平台的应用进行黑盒自动化测试,它提供了模拟各种手势操作(点击、长按、滑动等)、查找和断言机制的API,能够对各种控件进行操作。

以上就是我整理的一些面试题,关注我后面持续更新中~

 

总结:

感谢每一个认真阅读我文章的人!!!

作为一位过来人也是希望大家少走一些弯路,如果你不想再体验一次学习时找不到资料,没人解答问题,坚持几天便放弃的感受的话,在这里我给大家分享一些自动化测试的学习资源,希望能给你前进的路上带来帮助。

软件测试面试文档

我们学习必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有字节大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。

 

          视频文档获取方式:
这份文档和视频资料,对于想从事【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!以上均可以分享,点下方小卡片即可自行领取。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值