1、软件测试的定义
(1)熟悉、分析产品(PRD)的逻辑
(2)新增产品功能是否对之前版本的功能有较大的影响
(3)如果觉得需求不合理应及时提出来
(4)站在用户和程序的角度上觉得不好的地方
(5)尽早介入,理清更多程序的逻辑
(6)进行PRD审核过程中有不理解或者不合理的地方及时提出。
2、软件测试的目的
(1)在测试执行过程中善于发现错误
(2)提高软件的质量和易用性,使用户使用方便
(3)一个好的测试用例是发现至今未被发现的问题
(4)一个好的测试是发现了未被发现的错误
3、软件测试的对象主要包括:程序,数据和文档,更多检查的是文档,文档满足了产品(PRD)的需求,包含了:UI界面,程序的内部交互,页面的提示信息等。
4、软件测试的原则
(1)测试的标准应基于用户需求上,达到用户需求的结果
(2)做好软件测试计划,要有组织,有计划,有步骤的进行,严格按照测试计划来执行
(3)软件测试应处于尽早测试和不断测试原则,在需求分析和设计阶段就应该编写测试计划和文档,有利于测试和开发的效率,避开测试中存在的风险,利于测试人员尽早的发现缺陷,降低错误的修复成本,利于提高软件的质量。
(4)测试前定义一个好产品的评判标准,根据测试的结果,对产品的质量进行分析和评估
(5)测试完成后应和同事交互评审,防止发现自己发现不了的问题。对于程序员的编码水平有不同的测试方法
(6)检查预期结果和实际结果需一致,不一致的应提交BUG
(7)时间和资源有限,不能进行穷举测试,找合适的测试方法达到更好的测试效果,保留测试设计和说明文档,利于重复使用。
5、软件测试的分类
单元测试:称unit Test,代码写完之后,对最小模块的代码进行测试,属于白盒测试。不同编程语言有对应的测试框架,如java里面的Junit和TestNG框架,PYthou里面的unit Test和PYtest测试框架
集成测试:把单个模块聚集到一块,进行模块于模块之间功能性的的测试,黑盒测试盒白盒测试的结合
系统测试:将软件看成一个系统的测试,对功能、性能以及软硬件的环境进行进行测试,(黑盒和自动化测试)。测试内容:功能、性能、界面、可靠性、易用性、兼容性、安全性等。
验收测试:验收测试是部署软件之前的最后一个测试操作,,是技术测试的最后一步,也成交付测试。