软件 = 程序 + 数据 + 文档
软件生命周期
问题的定义及规划(开发方与需求方讨论)、需求分析、软件设计、软件编码、软件测试(单元测试、集成测试、系统测试、验收测试)、运营维护阶段
软件测试的定义
使用人工或自动的手段来运行或测量软件系统的过程,目的是检验软件系统是否满足规定的需求,并找出与预期结果之间的差异。
软件测试的目的
从用户角度看的目的:通过软件测试发现隐藏的错误和缺陷,考虑是否可以接受该产品。从开发者角度看的目的:表明软件产品不存在错误,验证软件实现了所有用户的要求。从测试人员角度看的目的:发现错误,预测错误,提供软件可靠性错误,对软件做出评价。
①帮助开发人员、测试工程师发现问题、分析问题。
②减少软件的缺陷数目或者降低软件缺陷的密度。
③提高软件的可靠性
④评估软件的性能指标。
⑤增加用户对软件的信心。
⑥测试的最终目的是尽快尽早地发现在软件中的缺陷,通过修正各种错误和缺陷提高软件质量,回避软件发布后由于潜在的软件缺陷和错误造成的隐患所带来的商业风险
软件测试分类