目录
1.冒烟测试:
阶段: 通常在软件开发的早期阶段进行, 主要用于验证基本功能是否正常工作.
目的: 确保软件主要功能能够基本运行, 以便在后续的详细测试阶段发现更深层次的问题.
2.回归测试:
阶段:在软件开发的后期, 通常在每次代码修改或者新增功能后执行.
目的:确保已有的功能仍然能正常工作, 并且更新后没有引进新的错误. 目的是放置已有功能因为代码修改而出现问题.
虽然它们都属于系统测试 但是冒烟测试注重最基本的功能, 而回归测试关注全面的功能, 包括已有的功能和新添加的功能. 这两种测试类型在测试策略中起到了不同作用, 帮助确保软件质量和稳定性.
针对用户需求, 对通过系统测试的软件进行交付性测试, 以确定系统是否满足验收标准, 由用户或其它授权机构决定是否接收系统. 验收测试是部署软件之前的最后一个测试操作. 它是技术测试的最后一个阶段, 也称为交付测试. 验收测试的目的是确保软件准备就绪, 按照项目合同, 任务书, 双方约定的验收依据文档, 向软件购买方展示该软件系统满足原始需求.
测试阶段: 系统测试通过以后;
测试对象: 整个系统(包括软硬件);
测试人员: 主要是最终用户或者需求方;
测试依据: 用户需求, 验收标准;
测试方法: 黑盒测试;
测试内容: 同系统测试(功能... 各类文档等).
关于车企生产车到用户开上小汽车的过程中:
造车需要原材料, 如车轮, 发动机等零部件一般都是车企从别的制造商那里购买来的, 而不是自我生产. 此时就需要对买来的零部件进行检查, 看零部件是否符合造车标准(单元测试).
零件确认完毕, 接下来就是复杂的造车工艺, 将零部件集成起来构成了一辆车, 并初步检查拼出的车是否能正常运作(集成测试)
一辆车成型之后并不意味着就可以直接销售给客户了, 需要车企专业的测试人员进行详细而完整的测试(系统测试).
专业的测试人员对汽车测试完毕, 通过测试的汽车将会在车站或者4S店进行展示, 供用户进行选择和购买. 用户在选择汽车的过程中也会对车外观以及性能方面进行校验.(验收测试)
手工测试就是由人一个一个去输入测试用例, 然后观察结果, 和机器测试相对应, 属于比较原始但是必须的一个步骤.
就是在预设条件下运行系统或应用程序, 评估运行结果, 预先条件应包括正常条件和异常条件. 简单地说自动化测试是把以人为驱动的测试行为转换为机器执行的一种过程. 自动化测试比如功能测试自动化, 性能测试自动化, 安全测试自动化. 自动化测试按照测试对象来分, 还可以分为接口测试, UI测试等. 接口测试的ROI(产出投入比)要比UI测试高.
节省成本
提高测试人员执行的工作效率
保障软件的质量.
对测试人员技术要求高.
不能发散性测试
对测试人员技术要求没有自动化技术要求高
可以进行发散性测试
效率低
人员, 时间成本比起自动化都比较高
大型通用软件, 在正式发布前, 通常要进行α和β测试
α测试又叫内测或者叫α测, 其实都是一个含义.
α测试通常是公司内部的用户在模拟实际操作环境下进行的测试. α测试的目的是评价软件产品的FLURPS(即功能, 可使用性, 可靠性, 性能和支持). α测试不能由程序员或测试员完成.
β测试又叫公测或者b测.
β测试由软件的最终用户们在一个或多个场所进行, 这里就可以理解为: β测试是正是用户中的一部分, 他们在任意的场合使用软件, 目的是为了发现软件是否存在一系列的问题.
测试场所的不同: α测试是在公司内部进行测试的, 但是β测试是在用户环境下进行测试的. α测试的环境是受开发方控制的, 用户的数量相对较小, 时间比较集中. β测试的环境是不受开发方控制的, 用户数量相对比较多, 时间不集中.
测试执行时机不同: α测试先于β测试执行. 通常是α测试通过后, 再进行β测试.
测试持续时间长短不同: α测试时间没有β测试持续时间长.
第三方软件测试是指由独立的第三方公司或组织进行的软件测试活动.
不知你们是否听过这个理论: 比起一个程序的作者, 其它的程序员更容易在程序中发现问题, 因为他们的思考方式不同. 这里引入第三方测试类似这个理论.
通过第三方测试, 可以确保软件质量, 节省成本, 确保软件尽快上线.
按照测试地域划分, 一般会将测试分为国际化测试和本地测试.
简言之, 测试人员需要测试软件在不同语言和地区是否能够正常工作.
eg:墨西哥:

中国:

国际化测试需要关注软件的哪些特性:
布局
时间
日期
数字格式
货币
机器型号
......