软件测试常规面试题问答题(附带答案)-问答基础篇03

5.如何编写测试 告

1、什么时候写/p>

测试 告一般是在项目测试结束或一个迭代完成之后由测试负责人编写。若不是项目,只有一二个测试人员,那就是由该项目主导人来写,若只有你一个来测试,那就是由你来写。

2、测试 告内容

测试 告主要内容大致可以分为测试范围、测试进度、缺陷管理、测试结论四大部分,在实际编写过程中,我们根据企业的要求输出这四个部分或包含这四个部分以上的内容即可。

(1)测试范围

测试范围主要是写本次项目或本次迭代需要测试的功能,一般来说是以新增功能和修改功能为主,以回归测试内容为辅,测试 告中的测试范围可以摘取测试计划中的测试范围,再根据本轮测试活动中实际测试的功能进行补充。

测试 告中测试范围与测试计划中的测试范围区别:

1、内容:测试计划中的测试范围是根据需求文档梳理出来的,而测试 告中的测试范围以实际测试内容整理出来的
2、结果:测试计划中的测试范围没有测试结果,测试 告中的测试范围需要标明测试结果

(2)测试进度

测试 告中的测试进度由二部分组成:一个是时间进度安排(展示),另一个是人员测试时间花费。

1、时间进度安排

测试 告中的测试时间比测试计划中的测试时间多了每个阶段中实际开始时间和实际结束时间。

2、测试时间花费

测试时间花费的输出是测试计划中所没有的,测试 告中输出测试时间花费主要是反映本轮测试所花费总的单位人力时间,也从侧方面反映本轮软件质量。

我是一个例子:

执行测试人:X人(XXX、XXX、XXX等)—》本轮测试中参与了多少人测试人员

总花费时间:XXX人/天 —》总的单位人力时间

(3)缺陷管理

缺陷管理是测试 告中的核心内容,而测试 告中需要对本轮测试缺陷从不同维度进行输出,目的就是为了从缺陷分析中得出软件质量、修改bug的效率、开发质量等。

一般测试 告中需要输出:

缺陷汇总

统计本轮所有缺陷,可以根据提测版本来汇总

wep 和app 测试的相同点和区别

相同点

不管是传统行业的web测试,还是新兴的手机app测试,都离不开测试的基础知识,即是不管怎么变,测试的原理依然会融入在这两者当中。

1)设计测试用例时,依然都是依据边界值分析法、等价类划分等;

2)多数采用黑盒的测试方法,来验证业务功能是否得到正确的应用;

3)需要检查界面的布局、风格和按钮等是否简洁美观、是否统一等;

4)测试页面载入和翻页的速度、登录时长、内存是否溢出等;

5)测试应用系统的稳定性等。

区别:

系统架构方面:

web项目,一般都是b/s架构,基于浏览器的

app项目,则是c/s的,必须要有客户端,用户需要安装客户端。

web测试只要更新了服务器端,客户端就会同步会更新。App项目则需要客户端和服务器都更新。

性能方面:

web页面主要会关注响应时间

而app则还需要关心流量、电量、CPU、GPU、Memory这些。

它们服务端的性能没区别,都是一台服务器。

兼容方面:

web是基于浏览器的,所以更倾向于浏览器和电脑硬件,电脑系统的方向的兼容

app测试则要看分辨率,屏幕尺寸,还要看设备系统。

web测试是基于浏览器的所以不必考虑安装卸载。

而app是客户端的,则必须测试安装、更新、卸载。除了常规的安装、更新、卸载还要考虑到异常场景。包括安装时的中断、弱 、安装后删除安装文件 。

此外APP还有一些专项测试:如 络、适配性。

如何测试一个app的登录功能

具体要求:有一个账 ,一个密码输入框,一个提交按钮,考察目的

1.了解需求

2.是否具有设计用例的能力

3.是否熟悉各种测试方法

4.是否有丰富的web测试经验

1.了解需求:

测试需求分析过程,可以从质量要求出发,来展开测试需求分析,从功能,性能,安全性,兼容性等各个质量要求出发,不断细化其内容,挖掘对应的测试需求,覆盖质量要求,也可从开发需求出发,把每一条开发需求分解为测试项,结合质量要求,这些测试项再分解成测试任务,则包括功能性测试任务和非功能性测试任务,在整理测试需求时,需要分类,细化,合并,并按照优先级进行排列,形成测试需求列表

1> 登录界面应该是弹出框,还是直接显示在 页里面

2>账 和密码的长度(eg:长度,大小写敏感,特殊字符混搭)

3>界面美观是否有特殊需求(UI测试)

2.用例设计:

功能测试:

1>输入正确的用户名密码,点击提交按钮,验证能否正确登录

2> 输入错误的用户名或者密码,点击提交按钮,验证登录失败,提示相应的错误信息

3 >登录成功后能否跳转到正确的页面

4>账 名或者密码长度过长或者过短,应该怎么处理(安全性,密码太短是否有提示)

5>账 和密码有特殊字符(空格),是否做了过滤

6>密码是否加密显示

7>输入密码 ,大写键盘开启的时候要有提示信息

8>什么都不输入,直接点击提交(非空检查)

9>登录失败后,不能记住密码的功能

10>登录页面中忘记密码等等链接跳转是否正确

11>牵扯到验证码,还要考虑文字是否扭曲过度导致辨认难度大

UI测试:

1>布局是否合理,两个textbox和一个按钮是否对齐

2>textbox的长度和高度是否符合要求

3>界面设计风格和UI设计风格是否一致

4>界面中的文字简洁易懂,没有错别字

性能测试:

1>打开登录界面,需要几秒

2>输入正确的用户名和密码,登录成功跳转到新页面,需要几秒

安全性测试:

1>登录成功后的cookie是否有HttpOnly(降低脚本风险)

2>账 和密码是否通过加密的方式,发送给web服务器

3>账 和密码的验证,应该是用服务器验证,而不单单是在客户端用javaScript验证

4>账 和密码的输入框,应该屏蔽SQL注入攻击

5>账 和密码的输入框,应该禁止输入脚本(防止XSS攻击)

6>错误登录的次数限制(防止暴力破解)

7>是否支持多用户在同一台机器上登录

8>一用户在多台机器上登录

可用性测试:

1>输入框是否可以用tab键切换

2>输入账 ,密码后按回车,是否可以登录

3>是否可用全用键盘操作,是否有快捷键

兼容性测试:

1>主流的浏览器下能否显示正常已经功能正常

2>不同的平台是否能正常工作,eg:windows,mac

3>移动设备上是否正常工作,比如iphone,android

4>不同的分辨率

推送消息如何测试

-消息推送对象

消息推送一般可以自定义推送对象,有全部推送,精确推送,及安卓和IOS渠道推送,注意推送对象是否正确,推送之前确认自己是否在测试环境操作,以免造成生产问题。

-消息简介

客户端收到消息推送有两种形式,客户端后台运行一般推送显示在通知栏,客户端前台运行一般弹出弹框,简介内容注意字数过多溢出情况。

-消息详情

注意详情所支持的内容,包括文字、图片、表情包、换行以及链接跳转。

-消息推送场景(支持定时推送)

(1)消息推送时间:

a)设置过去时间

b)未推送之前修改消息内容

c)删除消息,查看是否还会推送

(2)客户端运行状态

a)前台运行

b)后台运行

c)进程关闭状态

(3)特殊场景

a)多个提醒冲突

b)当天设置当天推送

c)当天设置隔几天起效

app闪退是有那些原因造成的

1.缓存垃圾过多
由于安卓系统的特性,如果长时间不清理垃圾文件.会导致越来越卡.也会出现闪退情况.

运行的程序过多,导致内存不足
3.应用版本兼容问题
如果应用版本太低,会导致不兼容,造成闪退。此外,有些新版本在调试中,也会造成应用闪退。
4… 检查APP中访问 络的地方,组件中的ImageView是否可以正常的下载并显示到app 页面上。
5.检查APP的sdk和手机的系统是否兼容。
6.在一些特定情况下的闪退,比如播放视频,在Android5.0 升级到Android6.0的时候,有些系统API老版本有,新版本没有,到时回去对象的时候失败, 空,系统就会出现闪退问题.
二.常见的解决方案
1.缓存垃圾过多
可通过“设置”中清除应用缓存的方式解决
2.内存不足
可尝试关闭其他暂时不用的软件
3.兼容性问题
3.1应用版本兼容性问题
如果是版本太低,可升级版本即可:如果是新版本闪退,可能还在调式,需卸载安装旧的版本使用
3.2APP中的SDK和手机的兼容性问题
需要原生端相关人员,设置SDK的最低兼容系统版本

测试过程中遇到app出现anr的时候你会怎么处理

可以先把日志过滤出来: adb logcat | findstr xxxxx(过滤日志信息) ,然后再搜索其中的关键字,比如:exception、crash,看看是那些方法或者异常导致了问题的发送,初步定位问题原因后,可以交给开发人员去具体查找深层原因并修复。

如何查看移动端的日志以及会出现哪些异常(点击题目跳转链接)

app测试哪些以及如何展开测试工作

一、APP要做哪些测试/p>

1、功能测试:对具体功能点一一测试,验证确认每个点都实现满足需求的相应功能。

2、APP兼容性测试:根据屏幕尺寸、系统进行适配测试;对市场上主流的设备安装应用执行测试(如果有特定针对群体,应该根据实际用户数据接入设备进行分析,对靠前的机型进行适配测试),确保都能正常运行。

3、压力测试:用户量大,交互性高的应用需对接口执行压力测试,确应用在海量的用户使用的情况下能正常运行。

4、UI/UE测试:主要是一些适配,用户体验方面,交互方面的测试。

5、用户行为统计测试:确保手头的行为统计分析定义文档为最新版本,且与开发人员手中的文档一致;确保产品经理在文档中所定义的页面在该产品中都是存在的;尽可能真实地模拟用户行为;核对统计日志,确保各项操作所对应的页面ID以及操作ID都是正确的。

6、安全测试 :软件权限、数据安全性、通讯安全性、人机接口安全性。

7、安装卸载测试:确保应用都能正确安装、卸载,且能正确运行(注意应用的升级测试:升级前后的状态)。

8、交叉测试:对于正在运行的应用,若进入短信、电话等其它软件响应的情况,不会影响被测试应用,且会保证应用能正确运行;杀掉进程时再重新打开APP;多个APP切换数据的保存等。

9、协议测试:模拟客户端直接发送协议包给服务器,看服务器是否有一定的校验,认不认客户端发过来的数据。协议测试主要是为了处理用户发送恶意协议到服务器,骗过服务器的校验。

10、异常测试:多次快速点击切换页面的响应情况屏竖屏的快速操作:切换菜单,播放,下载等;服务器宕机或出现404、502等情况下的测试。

11、弱 测试:APP在2G/3G/4G/wifi下的表现情况, 络环境变化时,APP的应对情况:是否有适当提示有 环境到无 环境时,APP的反馈如何无 络环境回到有 络环境时,是否能自动加载数据,且多久才能开始加载数据/p>

12、电量测试:设备在不同电量时(低于10%,50%,95%),APP的响应以及操作流畅度;设备在充电时,APP的响应以及操作流畅度;设备意外断电时,APP数据丢失情况等。

app的性能测试的关注点有哪些

app性能测试分类:
1、响应
2、内存
3、cpu
4、FPS (app使用的流畅度)
5、GPU过度渲染
6、耗电
7、耗流
(app除了这些性能测试,还有:手机版本 兼容性,屏幕分辨率兼容性,稳定性测试,安全测试等,后续会持续更新… 流量测试同这些一起更新,这里就不在说明了 )
App性能测试响应点:
主要测试点:
1、冷启动:首次启动app的时间间隔(只是启动时间,不包括页面加载)
2、热启动:非首次启动app的时间间隔(只是启动时间,不包括页面加载)
3、完全启动:从启动到首页完全加载出来的时间间隔
4、有 启动:从发起跳转,到页面完全加载出来的时间间隔
5、无 启动:从发起跳转,到页面完全加载出来的时间间隔
(在项目中,主要测试关注点是冷启动,热启动)
测试标准:冷启动时间不超过1.5s, 热启动不超过1s.
内存:
测试点:
1、空闲状态:切换至后台或者启动后不做任何操作,消耗内存最少。
2、中强度状态:时间偏长的操作应用。
3、高强度状态:高强度使用应用,可以跑monkey来测试(通常用来测试内存泄漏)。
** 内存泄漏:指应用里的内存一直没有释放,内存一直增加 ,系统内存一直减少 **
CPU:
CPU测试,主要关注的是cpu的占用率。很多时候,我们玩手机时,会出现发热发烫,那是因为CPU使用率过高,CPU过于繁忙,会使整个手机无法响应用户,整体性能降低,用户体验就会很差,也容易引起ANR(application not responding, 主线程(UI线程)如果在规定时内没有处理完相应工作,就会出现ANR)等等一系列问题。
测试点:
1).在空闲时间(切换至后台)的消耗,基本没大应用使用cpu
2).在运行一些应用的情况下,cpu已占50%的情况下,观察应用程序占用cpu的情况
3).在高负荷的情况下看CPU的表现(cpu占用应是在80%以上)
FPS (应用的使用流畅度)
FPS是图像领域中的定义,是指画面每秒传输帧数,通俗来讲就是指动画或视频的画面数。FPS是测量用于保存、显示动态视频的信息数量。每秒钟帧数愈多,所显示的动作就会愈流畅。
′一般来说,Android设备的屏幕刷新率为60帧/s,要保持画面流畅不卡顿,要求每一帧的时间不超过1000/60=16.6ms,这就是16ms的黄金准则,如果中间的某些帧的渲染时间超过16ms,就会导致这段时间的画面发生了跳帧,因此原本流畅的画面变发生了卡顿。
GPU渲染
GPU渲染是指在一个像素点上绘制多次(超过一次):显示一个什么都没有做的activity界面算作画了1层,给activity加一个背景是第2层,在上面放了一个Text View(有背景的Text View)是第3层,Text View显示文本就是第4层仅仅只是为了显示一个文本,却在同一个像素点绘制了四次,这是一定要优化的。过度绘制对动画性能的影响是极其严重的,如果你想要流畅的动画效果,那么一定不能忽视过度绘制。
耗电量
测试应用对电量的消耗前需要对手机本身的电量消耗有个大概了解,测试前先看规定时间内手机正常待机下(重启后待机)电量消耗为多少。然后再启动待测试APP看看消耗的电量增加了多少取差值。
测试点:
  测试手机安装目标APK前后待机功耗无明显差异;
  常见使用场景中能够正常进入待机,待机电流在正常范围内;
  长时间连续使用应用无异常耗电现象。

如何对app进行弱 测试(找的博客里面写的详细点,点击题目跳转)

弱 测试

常见的ADB命令(找的博客里面写的详细点,点击题目跳转)

查看当前连接设备:

代码块adb devices如果发现多个设备:adb -s 设备  其他指令举例:adb -s devicel install xxx.apk查看顶部Activity:windows环境下:adb shell dumpsys activity | findstr "mFocusedActivity"Linux、Mac环境下:adb shell dumpsys activity | grep "mFocusedActivity"查看日志:adb logcat安装apk文件:adb install xxx.apk此安装方式,如果已经存在,无法安装;推荐使用覆盖安装:adb install -r xxx.apk比分直接RUN出来的包是test-onlu的无法安装,推荐使用**-t**adb install -r -t xxx.apk卸载App:adb uninstall com.zhy.app如果想要保留数据,则:adb uninstall -k com.zhy.app传递文件:往手机SDCard传递文件:adb 

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2021年3月14日
下一篇 2021年3月14日

相关推荐