测试,小实训面试题

1.BS与CS的区别

cs:响应速度快,安全性强,用户体验好,但开发维护成本高
bs:可以实现跨平台,客户端零维护,个性化能力低,响应速度慢,所以有些单位日常办公使用bs,但实际生产还是使用cs

2.URL的各部分组成

1.协议部分
2.域名部分
3.端口部分
4.虚拟目录部分
5.文件名部分
6.参数部分

3.Get与post的区别

get使用url或cookies传参,post将数据都放入body中
get的url受长度限制,post的数据可以非常的大
post比get更加安全,因为数据在地址栏不可见
一般get用来获取数据,post用来发送数据

4.常见的状态码

200 OK //客户端请求成功
400 Bad Request // 客户端请求有语法错误,不能被服务器理解
401 Unauthorized //请求未经授权,这个状态代码必须和WWW-Authenticate报头域一起使用
403 Forbidden //服务器收到请求,但是拒绝提供服务
404 Not Found //请求资源不存在,EG:输入了错误的URL
500 Internal Server Error // 服务器发生不可预期的错误
503 Server Unavailable //服务器当前不能处理客户端的请求,一段时间后可能恢复正常

5.session和cookie

cookie不是很安全相对于session 安全性考虑使用session
考虑性能方面减轻服务器压力使用cookie

6.测试流程.测试计划.缺陷报告.bug生命周期

1.测试流程
立项-产品(说明书)-编写需求文档-需求文档评审-开发编码自测-编写测试用例-测试用例评审-提测-冒烟测试-提交bug到禅道-回归测试-验收测试-上线

2.测试计划
确定测试范围,制定测试策略,测试人员分配,测试时间安排,测试资源安排,风险评估,测试背景,测试目的

3.缺陷报告
所属模块,所属产品,优先级,严重程度,重现步骤,附件,操作系统,bug类型

4.bug生命周期
一个Bug由测试人员发现并提交,我们将状态标注为新建;开发人员接收了该Bug,将Bug的状态修改为已分配(Assigned),表示已经认可;
开发人员解决了该Bug后,就将Bug的状态修改为解决,并发给测试人员回归测试;
测试人员对Bug进行回归测试,如果确实已经解决,就将Bug的状态修改为关闭,否则的话则发给开发人员重新修改。
还要说明的是,Bug是可以“死而复生”的,以前版本已经关闭的Bug,如果新版本中重新出现,我们就需要将其状态修改为重新打开。

7.bug优先级

1级,系统崩溃
定义:严重阻碍测试和开发工作
对应优先级:最高
具体可分为
1.功能完全没有实现
2.应用闪退/崩溃无法运行
3.应用必现安全模式,无法运行
4.其他导致功能无法测试的问题
2级,至关重要
定义:非阻碍用例执行的严重问题
对应优先级:高
具体可分为
1.简单操作应用闪退/崩溃,卡死
2.数据丢失
3.严重影响系统,自身功能无法运行
4.严重数值计算错误
5.数据库损坏或无法保存配置
6.安全性问题(包括数据加密等)
3级,主要
定义:功能存在缺陷,但不影响应用和系统的稳定性
对应优先级:中
具体可分为
1.内存泄露(长时间不用的对象需要被回收,不被回收占内存)
2.功能实现逻辑覆盖不全面
3.非必现,但复现概率超过50%的闪退/崩溃和安全模式
4级,一般
定义:对应用熟悉度高才能感知到的问题,对应用基本功能实现无影响
对应优先级:中
具体可分为
1.轻微数值计算错误
2.功能实现有误,与产品文档不完全贴切
3.用户简单操作,即可明显感知的UI问题
5级,较小
定义:界面,性能缺陷
对应优先级:低
具体可分为:
1.操作界面错误(提示显示规则,刷新规则是否与文档一致)
2.边界条件显示错误      
3.提示信息和界面效果展示错误(包括未给出信息、信息提示错误等)
4.复现率低于5%的闪退/崩溃和安全模式      
5.插件兼容和性能未优化问题      
6.非正常操作导致UI显示异常
6级,建议
定义:对于产品的意见或者建议
对应优先级:低
具体可分为:
1.对于产品设计方面的意见和建议
2.对于产品界面优化方面的意见和建议
3.对于产品需要优化增强用户体验方面的意见和建议

8.测试的分类

白盒测试
指的是把盒子盖打开,去研究里边源代码和程序结构(单元测试,ui/接口自动化测试)
黑盒测试
把被测试的软件看做一个黑盒子,我们不去关心盒子里边的结构是什么样子,只关心软件的输入数据和输出结果

9.测试的设计点(纸杯)

测试一个带广告图案的花纸杯
功能测试
能否装水,
除了装水, 能否装其他液体。比如可乐,酒精
能装多少ML的水
杯子是否有刻度表
杯子能否泡茶,泡咖啡
杯子是否能放冰箱,做冰块
杯子的容量是否于需求一致(500ml)
界面测试
外观好不好看。
什么颜色
杯子的形状是怎么样的。
杯子的图案是否合理
杯子外观是否简单,美观(需求文档)
杯子大小是否一致
杯子的材质是否与需求一致
性能测试
能否装100度的开水 (泡茶)
能否装0度冰水
装满水,长时间放置是否漏水(7*24)
能否使用的最大的次数(漏水)
杯子内壁上的涂料是否容易脱落。
杯子上的颜色是否容易褪色或者脱落
掉在地上不易摔碎
如果是有盖子的:
盖子拧多紧不会漏水

10.测试模型(w模型.v模型)

V模型:
v模型左边下降部分是开发的各个阶段,相对右边上升部分,即各个测试过程各个阶段
优点:
每一个阶段都清晰明了,便于控制开发每一个过程。
既包含单元测试,又包含系统测试
缺点:
测试介入的比较晚,对于前期一些缺陷无从发现和修改
测试和开发串行
W模型:
相对于V模型,W模型更科学。W模型是V模型的发展,强调的是测试伴随着整个软件开发周期,而且测试的对象不仅仅是程序,需求、功能和设计同样要测试。
测试与开发是同步进行的,从而有利于尽早地发现问题
优点:
测试伴随软件的整个生命周期,例如,在需求分析结束后就可以进行需求分析测试
测试与开发是并行独立的
缺点:
对有些香米,开发过程根本没有文档产生,故W模型无法使用
对于需求和测试技术要求很高,实践起来很困难

11.测试方法以及应用场景

等价类划分
多用于输入框:注册/登录
边界值
多和等价类划分结合使用,有边界限制的:注册的密码长度(掌握上点和离点的取值)
场景法
从基本流开始,再将基本流和备选流结合起来,可以确定用例场景
正交表
用于多个下拉框之间的组合,可以通过正交助手生成测试用例
错误推测
错误猜测法是测试经验丰富的人喜欢使用的一种测试用例设计方法。一般这种方法是基于经验和直觉推测程序中可能发送的各种错误,有针对性地设计。只能作为一种补充
因果图
因果图法比较适合输条件比较多的情况,测试所有的输入条件的排列组合。所谓的原因就是输入,所谓的结果就是输出

12.开发不认为是bug的时候

1.首先我会从自身去经过多次的测试发现BUG出现的次数和频率 记录复现BUG的方式 然后发送给开发人员
2.再根据需求文档来确认是否为BUG
3.如果开发不认为是BUG的 将复现BUG的记录和需求文档找产品经理和项目经理来确定是否BUG
4.如果项目经理和产品经理都不认为是BUG 我会将BUG记录在测试文档中 方便在下次评审会上将问题再次抛出

13.接口测试用例有哪些

url地址 , 用例编号 , 接口功能 ,请求头, 请求头参数 , 测试人 , 测试结果 ,预期响应结果

14.http与https

1.http协议需要申请证书,一般免费证书较少,因而需要一定费用
2.http是超文本传输协议,信息是明文传输,https是具有安全性的SSL加密协议
3.http和https使用的是完全不同的连接方式,用的端口也不一样,前者是80,后者是443
4、http的连接很简单,是无状态的;HTTPS协议是由SSL+HTTP协议构建的可进行加密传输、身份认证的网络协议,比http协议安全。

15.请求方式的种类

get , post , delete , put

16.tps与qps

tps:每秒事务数
qps:每秒查询率,是一台服务器每秒能够响应的查询测试

18.负载测试与压力测试

负载测试:
给被测试的系统在其能够忍受的范围内,连续不断的让它运行,来测试其稳定性

压力测试:
不断的给被测试的系统增加压力,直到压垮为止,来测试系统所承受的最大压力

19.inner join和 left join和 right join 的区别

left join是左外连接 返回的结果是返回左表中所有的记录以及右表中连接字段相等的记录,没有匹配结果使用NULL填补,即左表全部行+右表匹配的行。
right join是右外连接 返回右表中所有的记录以及左表中连接字段相等的记录,没有匹配结果使用NULL填补,即右边全部行+左边匹配的行。
inner join是内连接 只返回两个表中连接字段相等的行。

20.charles

① 弱网
1.请求网页,点击proxy(代理),选中Throttle Setting(节流阀调整),点击Enable Throttling(使用节流阀)进行调整里面的数据,最后点击ok保存
2.如果想退出就点菜单栏的小乌龟,取消慢网测试

21.ADB命令

查看当前连接的设备 adb devices
开启服务 adb start-server
关闭服务 adb kill-server
安装软件 adb install apk路径
覆盖安装 adb install -r apk路径 (重新安装apk并保留数据和缓存文件)
系统应用 adb shell pm list package -s
第三方应用 adb shell pm list package -3
列出装的所有app包名 adb shell pm list packages
根据包名卸载软件 adb uninstall 包名
卸载保留配置和缓存文件 adb shell pm uninstall -k 包名
电脑文件传输到移动端 adb push 电脑路径 移动端路径
移动端文件传输到电脑 adb pull 移动端路径 电脑路径
查看adb命令帮助信息 adb help
截屏 adb shell screencap -p 截图文件路径
查看手机CPU情况 adb shell dumpsys cpuinfo
查看全部应用内存使用情况 adb shell dumpsys meminfo
查看某个应用内存使用情况 adb shell dumpsys meminfo 包名
显示磁盘使用情况 adb shell dumpsys diskstats
清除应用缓存信息 adb shell pm clear 包名
查看电池状态 adb shell dumpsys battery
查看电池信息 adb shell dumpsys batteryproperties
手机日志输出本地 adb logcat >D:/log/666.txt
日志级别
V —— Verbose(最低,输出得最多)
D —— Debug
I —— Info
W —— Warning (警告)
E —— Error (错误)
F —— Fatal (致命的)
S —— Silent(最高,啥也不输出)
输出显示所有优先级大于等于Warning的日志
adb logcat * : w >D:/log/999.txt
将日志实时的输出到本地文件

22.Monkey

执行monkey测试设备中所有app100次 adb shell monkey 100
将日志输出到文件中 adb shell monkey >D:/log/666.txt
测试monkey测试指定app adb shell monkey -p 包名 测试次数
显示日志详细程度
仅提供启动提示,测试完成和最终结果的少量信息 adb shell monkey -p 包名 测试次数 -v
较为详细,包括每个发送到activity的事件信息 adb shell monkey -p 包名 测试次数 -v-v
最详细的日志,包括测试中选中/未选中的activity adb shell monkey -p 包名 测试次数 -v-v-v
忽略奔溃或异常(–ignore-crashes ) adb shell monkey –ignore-crashes 1000 >D:/log/666.txt
忽略超时(–ignore-timeouts) adb shell monkey –ignore-timeouts 1000 >D:/log/666.txt
随机数种子事件(-s) adb shell monkey -s 26 -v 1000 >D:/log/666.txt
测试间隔时延毫秒(–throttle) adb shell monkey -p 包名 –throttle 300 -v 1000
触摸事件(–pct-touch 占比数) adb shell monkey –pct-touch 80 -v 1000 >D:/log/666.txt
手势事件(–pct-motion) adb shell monkey –pct-motion 80 -v 1000 >D:/log/666.txt

23.Linux

切换目录
切换到该目录下usr目录 cd /usr/
切换到上一层目录 cd …/
切换到系统根目录 cd /
目录操作
创建目录 mkdir 目录名称
查看该目录下的所有目录和文件 ls
查看隐藏目录 ls -a
查看目录和文件的详细信息 ls -l 或者ll
查找目录 find 目录 参数 find / -name ‘test*’
修改目录 mv 旧名称 新名称
移动目录 mv 文件 路径
拷贝目录 cp -r 文件 路径
删除目录 rm -rf 目录
文件操作
创建文件 touch 文件名
查看文件(日志) cat/more/less/tail/head 文件
实时/动态查看日志 tail -f 日志
修改文件vim/vi(进入命令模式)>>>i/o/a(进入编辑模式)>>esc(提出编辑模式进入命令模式)>>> shift : 输入 wq保存并退出/q!强制退出不保存修改的数据
删除文件 rm -rf 文件名
打包或者压缩文件
打包 tar -zcvf 文件名.tar 要打包的文件
压缩 tar -zcvf 文件名.gz 要压缩的文件
打包并压缩 tar -xvf 文件名.tar.gz 要打包并压缩的文件
解压文件
解压tar包 tar -xvf 文件.tar
解压zip包 unzip 文件.zip
解压到某个目录下 tar -xvf 文件.tar -C /路径
查询文件或者目录的位置 pwd
搜索命令(多用于查日志中的错误信息) grep 关键字(exception) 日志名(文件名)
| 管道符 :把前面的命令传到后面命令中grep 过滤的作用
查看进程 ps -ef | grep 名称
查看tomcat进程是否开启 ps -ef | grep tomcat
杀死进程 kill -9 pid(对应进程的pid)
查看端口信息 netstat -an |grep 端口号
查看3306端口是否被占用 netstat -an | grep 3306
查看网络命令 ifconfig (查看ip信息)
查看网络是否联通 查看外网:ping www.baidu.com
查看内网 ping 内网ip
查看内存信息 free
查看磁盘信息 df -h
权限 chmod 777 文件名 (赋权可读可写可执行)

24.安装jdk,项目部署,安装MySQL

来源:weixin_47230812

声明:本站部分文章及图片转载于互联网,内容版权归原作者所有,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2021年1月5日
下一篇 2021年1月5日

相关推荐