C/S架构软件(Client/Server,客户端/服务器模式):桌面级应用 响应速度快,客户端需要安装专门的软件。比如QQ,微信。
B/S架构软件:(Browser/Server,浏览器/服务器模式)web可实现跨平台,比如百度,实验楼。
特点:每个阶段只执行一次,
优点:开发的每个阶段比较清晰,当前一阶段完成后,才开始要去关注后续阶段,避免后期大量返工的现象,还可以减少后期维护工作的人力和费用
缺点:不适应需求的变化,风险往往在后期显露。
在开发真实系统前,构造一个原型,在这个原型的基础上,逐渐完成整个开发的工作
优点:克服瀑布模型的缺点,减少由于软件需求不明确带来的风险。快速构建软件的原型,支持用户参与
缺点:不适合大型的系统的开发(适合小型的,灵活性高的系统)
螺旋模型的特点:引进风险分析活动
优点:很大程度是一种风险驱动的方法体系
缺点:采用螺旋型需要具有相当丰富的风险评估和专门知识。
敏捷开发
介绍:v模型是最具有代表意义的测试模型,最早是由Paul Rook在20世纪80年代后期提出的,由英国国家计算机中新,提出改进软件开发的效率和效果;
v模型本身软件开发中瀑布模型的变种,它反映了测试活动与分析和设计的关系
v模型标明了测试过程中本身存在的不同阶段,从左往右,描述了在开发过程和测试过程间的阶段对应关系。
优点:v测试v模型包含了底层测试又包含高层测试
缺点:当需求变更(变化)时将会导致返回工作量非常大,模型灵活性比较低。
w模型介绍:测试伴随着整个软件开发周期,并且测试的对象不仅仅是程序,需求和设计同样要测试。
优点:(1)强调测试伴随整个软件开发的周期,而且测试的对象不仅仅是程序,还包括需求和设计。
(2)更早的介入测试,能尽早得发现缺陷进行修复。
缺点:对于测试技术要就比较高,实践起来比较困难。
按测试阶段划分为:单元测试,集成测试,系统测试,验收测试。
按是否覆盖源代码分为:黑盒测试,白盒测试,灰盒测试。
按是否运行分为:静态测试盒动态测试。
按是是否自动化分为:人工测试和自动化测试。
按其他分为:冒烟测试,回归测试,随机测试,探索测试。
测试的目的:尽可能多的发现缺陷,比如功能的错误,性能低下,易用性差。
测试的思路:先假设程序存在什么缺陷,然后执行程序来发现缺陷。
测试类型:白盒测试,黑盒测试。
白盒测试:看得见的程序内部结构,测试源程序的逻辑结构和实现细节。白盒测试必须由开发人员独立执行,因为测试人员无法理解代码内部逻辑。
黑盒测试:看不见的程序内部结构,按照规格来测试程序是否符合要求。黑盒测试必须由独立测试小组执行,因为开发人员难以做到客观公正。
主要发现以下问题:是否有不正确或遗漏了的功能;在接口上,能否正确的接收输入,能否输出正确的结果; ·是否有数据结构错误或外部信息访问错误;性能上是否能够满足要求;是否有初始化或终止性错误; 黑盒测试需要在所有可能的输入条件和输出条件中确定测试数据,以检查程序是否都能产生正确的输出;有时测试数据量太大,是不现实的。
如:测试一个模块时,白盒测试:要对所有代码进行单步跟踪测试,关注的是程序的内部细节。黑盒测试:只需测试模块的接口是否要求,关注的是程序的外部实现。
公司的一个工作流程,以及测试人员的介入时机
原文:https://www.cnblogs.com/gaojunhui/p/14823042.html