1、测试通过的标准
- 所有测试用例都已成功执行。
- 测试功能点覆盖率达到100%。
- 所有发现的缺陷都记录在JIRA。
- Bug修复率达到100%,本期不修复或者产品确认非BUG的需在JIRA备注。
- 性能指标、兼容性报告达到要求。
- 产出系统测试总结报告。
- 产品UAT通过。
- 研发代码封版后回归测试通过。
2、 网络七层协议
物理层、数据链路层、网络层、传输层、会话层、表示层、应用层
HTTP协议对应于应用层,TCP协议对应于传输层,IP协议对应于网络层
3、在设计测试用例时一般从以下几个方面进行分析:
功能测试,界面测试,安全性测试,兼容性测试,可用性测试,可靠性测试,性能测试
测试项目——笔
1、需求测试:查看使用说明书。
2、功能测试:能不能写字 。
3、界面测试:查看笔的外观 。
4、可靠性:笔从不同高度落下摔坏的程度。5、安全性:笔有没有毒或细菌 。
6、可移植性:笔在不同的纸质、温度等环境下是否可以使用。7、兼容性:笔是否可以装不同颜色、大小的笔芯 。
8、易用性:是否方便使用、方便携带 。
9、压力测试:给笔不断的增加重力,观察压力多大时压坏。
10、震动测试:笔在包装时,各面震动,检查是否能应对恶劣的公路、铁路、航空运输。11、跌落测试:笔包装时,在多高的情况下摔不坏。
测试项目——桌子
需求测试:查看桌子相关的使用说明书。
功能测试:桌子是办公用的还是防治东西用的,桌子的面积大小是否适合;
界面测试:桌子的桌面是否平滑,有没有凹凸不平的地方;
安全性测试:桌子的支撑点是否可靠;将桌子推倒后,它的损坏情况;
压力测试:桌子可以承受的重量;
可用性测试:桌子是否好移动;它的重量是否合适;
4、接口测试基础
5、接口文档规范
1、url
2、请求方式 post、get
3、入参(请求参数)
4、返回参数
5、请求、返回示例
6、 状态码说明
HTTP状态码
1、200 2开头的都表示这个请求发送成功,最常见的就是200,就代表这个请求是ok的,服务器也返回了。
2、300 3开头的代表重定向,最常见的是302,把这个请求重定向到别的地方了,
3、400 400代表客户端发送的请求有语法错误,401代表访问的页面没有授权,403表示没有权限访问这个页面,404代表没有这个页面
4、500 5开头的代表服务器有异常,500代表服务器内部异常,504代表服务器端超时,没返回结果
6、 app测试点
1、安装、卸载测试
2、功能测试
根据需求文档和UI图设计测试用例,执行测试
3、数据安全性或者敏感性测试
密码、手机号、身份证等加密传输,文字显示等敏感词规避
4、异常场景
中断测试,比如电话来电、短信、推送消息等,app的返回功能等
5、网络测试
无网情况下,app各个功能的表现,关注用户体验和闪退问题
弱网下,各个功能点的异常反应
网络切换测试,wif和4G网络切换的场景
6、兼容性测试
App和安卓,一般放到最后进行,待测试结束之前
7、app升级测试
主要关注大小版本升级,跨版本升级,以及缓存清除机制等。
APP版本升级,即为整个APP内容升级,Android和IOS一致,分为强制升级和非强制升级。
8、性能测试
如果已经能感觉出来系统响应慢,需要提相应的bug跟踪,并且要具备初步排查分析的能力,比如:查看每一个报文的响应时间,前后端分别耗时,后端如果涉及多接口,每一个接口的耗时等,简单分析性能的瓶颈。
iOS腾讯GT内嵌,Android通过weTest助手软件进行监测
7、什么是PageObject设计模式?
Page Obje实现了测试代码的分层:页面元素、元素操作 和 页面业务的分离。
元素定位 --> 元素操作 --> 业务流程 进行分层,进一步细化,元素操作中的数据、异常处理、报告生成可以作为公共部分进行处理。即Page Object,元素层,操作层,业务层,公共层。
为什么需要Page Object?
测试代码维护的需要, 减少代码的维护量,清晰而明确的业务测试流程。
软件设计的三层架构:界面层/表示层(User Interface layer)、业务逻辑层(Business Logic Layer)、数据访问层(Data access layer),高内聚低耦合,减少层次间的关联,减少变化带来的系统性变化。
https://blog.csdn.net/qq_34671951/article/details/80563145
8、进程和线程的区别
# 进程:独立数据空间,进程间是不共享资源数据,系统调度
# 线程:执行程序的最小单元,进程内线程间共享资源,系统调度
# PS:一个进程可以有多个线程,多个线程可以并发执行
9、HTTPS和HTTP的区别主要如下:
1、https协议需要到ca申请证书,一般免费证书较少,因而需要一定费用。
2、http是超文本传输协议,信息是明文传输,https则是具有安全性的ssl加密传输协议。
3、http和https使用的是完全不同的连接方式,用的端口也不一样,前者是80,后者是443。
4、http的连接很简单,是无状态的;HTTPS协议是由SSL+HTTP协议构建的可进行加密传输、身份认证的网络协议,比http协议安全。
10、登录的用例
一、功能测试
1、密码格式校验,非空校验,明码暗码切换,登录成功跳转,登录失败的错误提示,忘记密码等二、界面测试(UI Test)
和UI搞保持一致,屏幕适配三、兼容性测试
iOS和安卓主流手机,华为小米oppovivo四、安全性测试
1、账号密码传输加密
2、登录错误的次数限制(防止暴力破解-图片验证码)
3、考虑一个账户同时在多端登录(web和移动端)
4、同一账号登录互踢
5、账号和密码的输入框,应该屏蔽SQL注入攻击,应该禁止输入脚本(防止XSS攻击)五、可用性测试(Usability Test)
1、键盘有木有遮挡输入框
2、是否可以全用键盘操作,是否有快捷键
3、输入账号,密码后按回车,是否可以登录
4、输入框是否可以以Tab键切换六、性能测试(Performance Test)
1、打开登录页面,需要几秒
2、输入正确的账号和密码后,登录成功跳转到新页面,不超过5秒七、数据库校验测试
1、登录成功之后,查看数据库,是否正确落库(多次点击时会出现两条相同的数据)
2、前端校验(按钮加载中,请求中不可再次点击),后端也要校验(提示不能重复)