学习软件测试的基础知识有什么
软件测试的流程大概包括:需求分析、测试计划编写、设计测试用例、实施测试(主要包括搭建测试环境、执行冒烟测试、正式测试、回归测试)、编写测试报告、编写BUG报告单、跟踪BUG修复情况等。
此外,想做好软件测试工作还需要具备良好的沟通能力、懂得各种测试阶段所使用的测试方法。
这里,咱们需要重点探讨一下软件测试的方法,它是软件测试人员需要具备的核心能力:
单元测试:单元测试是对软件中的基本组成单位进行的测试。目的是检验软件基本组成单位的正确性。
集成测试:集成测试是在软件系统集成过程中所进行的测试。目的是检查软件单位之间的接口是否正确。
系统测试:系统测试是对已经集成好的软件系统进行彻底的测试,以验证软件系统的正确性和性能等是否满足需求。
验收测试:验收测试是部署软件之前的较后一个测试操作。验收测试的目的是确保软件准备就绪,并能上线。
黑盒测试:只关心软件的输入数据和输出结果。不考虑内部逻辑结构,主要针对软件界面和软件功能进行测试。
白盒测试:研究里面的源代码和程序结果。通过测试来检测产品内部动作是否按照设计规格说明书的规定正常进行,检验程序中的每条通路是否都能按预定要求正确工作。
灰盒测试:灰盒测试介于黑盒测试与白盒测试之间。
手动测试:由人工去执行测试用例,通过人工操作,查看返回结果是否符合预期结果。
自动化测试:把以人为驱动的测试行为转化为机器执行的一种过程。为了节省人力、时间或硬件资源,提高测试效率,便进行自动化测试。
功能测试:测试实际的功能是否符合用户的需求,围绕软件的功能点进行测试。功能测试又可分为很多种:逻辑功能测试、界面测试、易用性测试、安装测试、兼容性测试等。
性能测试:性能测试是通过自动化的测试工具模拟多种正常、峰值以及异常负载条件来对系统的各项性能指标进行测试。
界面测试:界面类测试是验证软件界面是否符合客户需求,包括界面布局是否美观、按钮是否齐全等。
文档测试:以需求分析、软件设计、用户手册、安装手册为主,主要验证文档说明与实际软件之间是否存在差异。
α测试:指对软件较初版本进行测试。软件较初版本一般不对外发布,在上线之前,由开发人员和测试人员或者用户协助进行测试。测试人员记录使用过程中出现的错误与问题整个测试过程是可控的。
β测试:是指对上线之后的软件版本进行测试,此时软件已上线发布,但发布的版本中可能会存在较轻微的Bug,由用户在使用过程中发现错误与问题并进行记录,然后反馈给开发人员进行修复。
回归测试:当测试人员发现缺陷以后,会将缺陷提交给开发人员,开发人员对程序进行修改,修改之后,测试人员会对修改后的程序重新进行测试,确认原有的缺陷已经消除并且没有引入新的缺陷,这个重新测试的过程就叫作回归测试。回归测试是软件测试工作中非常重要的一部分,软件开发的各个阶段都会进行多次回归测试。
随机测试:随机测试是没有测试用例、检查列表、脚本或指令的测试,它主要是根据测试人员的经验对软件进行功能和性能抽查。随机测试是根据测试用例说明书执行测试用例的重要补充手段,是增加测试覆盖完整性的有效方式和过程。