第2期康帕斯训炼赢 —《测试在产品开发环节发挥的作用》
讲师:安舜(有赞工程师)
内容:
一、落尘介绍测试的分类
二、渔人介绍过往测试经历
功能测试和性能测试
自动化和非自动化测试
测试工具:Apache的 Jmeter 免费的图形界面 使用者众,适用性能和接口等的测试
Apache的bench 命令行工具,轻便型
三、熊猫分享费用系统研发经历
1.要建立信任
2.要分析搭档思维
3.达成共识,同样的“评审通过”在产品和开发的理解应该是一样的
四、安舜分享测试经验
(一)软件测试方法
两类测试方法:黑盒测试和白盒测试
1.黑盒测试:已知产品的功能设计规格,可以进行测试证明每个实现了的功能是否符合要求。又称功能测试或数据驱动测试。黑盒测试主要是为了发现以下几类错误:
(1)是否有不正确或遗漏的功能?
(2)在接口上,输入是否能正确的接受?能否输出正确的结果?
(3)是否有数据结构错误或外部信息(例如数据文件)访问错误?
(4)性能上是否能够满足要求?
(5)是否有初始化或终止性错误?
2.白盒测试:已知产品的内部工作过程,可以通过测试证明每种内部操作是否符合设计规格要求,所有内部成分是否以经过检查。又称结构测试或逻辑驱动测试。
白盒测试主要是对程序模块进行如下检查:
(1)对程序模块的所有独立的执行路径至少测试一遍。
(2)对所有的逻辑判定,取“真”与取“假”的两种情况都能至少测一遍。
(3)在循环的边界和运行的界限内执行循环体。
(4)测试内部数据结构的有效性,等等。
3.灰盒测试:介于黑盒与白盒之间的一种测试,灰盒测试关注输出对于输入的正确性,同时也关注内部表现,但这种关注不象白盒那样详细、完整,比白盒测试效率会更高。)
4.白盒测试分静态分析法和动态分析法
静态分析法:语句、条件、判定、多条件覆盖
动态分析法:逻辑覆盖和路径覆盖
白盒测试常见的测试点:
程序逻辑是否正确;
参数对象检查;
错误码是否正确;
接口返回结果检查;
异常逻辑是否能正常处理;
日志是否保存,包括正常的日志请求和错误日志。
(二)软件测试流程
测试需求确认
测试计划制定
测试方案设计
测试方案评审
测试执行
缺陷跟踪
测试报告
软件上线
(三)对网吧钉钉项目测试工作的建议
好的软件质量不会带来好的口碑
坏的软件质量一定会带来坏口碑
产品的文档设计要求完整:功能使用、业务逻辑、业务场景
测试开发的比例:5:1,正常3:1
(四)现在遇到的问题
没有测试流程
测试资源不足
没有质量意识
测试团队背锅
不知道如何开展测试
(五)建议
建立适合自己公司的测试流程;
提高开发、产品的质量意识;
测试资源不足,优先保证核心业务的测试;
制定开发提测标准;
产品是否上线,测试具有一票否决权。
五、Q&A
1、测试日期:开发完后去评估
2、功能性测试如何提升到能精准判断bug问题:需要熟悉代码,使用白盒测试进行逻辑、接口的测试
3、测试时间的保障:测试自己去评估,开发(自测)3天测试1天的评估标准,
4、日志保存的重要性
5、上线后的bug,主要是体验上的问题
6、针对不同真实环境,出现不同的问题,建议多准备预发环境,搭建预发环境(白名单测试用户)
7、查到bug是及时反馈还是批量反馈?——及时
8、bug的优先级如何评估:根据场景、业务重要性
9、缺陷跟踪用什么工具:bug free lira kludge
10、接口测试工具:
11、针对网吧钉钉测试现状的建议:测试覆盖核心应用
12、对于bug管理的方法?:开发的bug奖励与惩罚
13、外包技术如何验收:有自己的测试去跟进,用自己的环境跑一遍
14、好的测试应该有什么特性:有测试否定权,根据bug统计数据,熟悉业务,经验判断
15、以往出现的bug复盘
16、对于目前开发团队和测试如何开展工作:如果开发能力特别强的情况下,可以让开发自测。
17、黑盒子即功能测试,白盒子即基于代码测试。
课下的讨论会上,同学们各抒己见,相互学习,分享经验,受益匪浅。