软件测试学习第一天(2023.7.1)
自学软件测试的第一天,在b站上找了柠檬班的课程,开始学了一节课感觉还不错。
学习网址:软件测试基础教学视频
一、软件测试的定义
为了发现程序中的错误而执行程序的过程。
二、软件测试的目的/软件测试工作的意义
1.为了发现程序存在的代码或业务逻辑错误。
2.为了检验产品是否符合用户需求。
3.为了提高用户的体验。
三、软件测试的原则(理解即可)
1.测试尽早介入。
2.所有的测试都应该追溯到用户需求。
3.程序员避免检查自己的错误。
4.二八原则,测试发生的80%的错误都在20%的模块中。
5.对错误要进行一个确认的过程,多试几遍。
6.制定严格的测试计划。
7.完全测试是不可能的,测试要终止。
8.妥善保存测试中的所有文档。
四、软件测试分类
1.按测试阶段划分:
①单元测试(开发自测)
②集成测试(一般是开发测,不同功能模块测)
③系统测试(整体测试)
④验收测试(正式验收测试,Alptha测试(内测),Beta测试(公测))
2.按测试技术划分:
①白盒测试(看的见代码逻辑结构)
②黑盒测试(看不见代码逻辑结构)
③灰盒测试(介于白盒和黑盒之间,知道逻辑无需全会代码)
3.按测试对象是否运行划分:
①动态测试(需要执行程序)
②静态测试(不需要执行程序,文档检查,代码检查,界面检查)
4.按不同的测试手段划分:
①手工测试(俗称:点点点)
②自动化测试(借助测试工具和测试代码测试)
5.按测试包含的内容划分:
①功能测试(测业务逻辑结构)
②界面测试(UI,外观,设计)
③安全测试(攻击-漏洞)
④兼容性测试(软件+硬件,app升级)
⑤易用性测试(主观、人性化)
⑥压力测试(测试系统的性能、可靠性、稳定性)
⑦负载测试(测试在超负荷环境中运行,程序是否能够承担)
⑧恢复测试(检查系统的容错能力)
6.其他测试:
①冒烟测试(硬件测试,核心业务功能测试)
②回归测试就(测试-修复bug-验证bug-其它代码未受到影响)
③探索性测试(靠自己的经验直觉随机测试)