分分28官网|分分28开奖网

漫谈:蜗牛学院倾情奉献:软件测试最全专业术语
作者:强官涛   类型:测试开发    类别:漫谈   日期:2017-12-08    阅读:2227 次   消耗积分:0 分
  1. 项目型软件:

项目型软件是指本软件是针对专门的客户进行定制开发,软件需求由客户(甲方)指定和确认,软件版权和源代码,文档等归甲方所有,只针对甲方收费,软件的研发和验收只为甲方负责。比如蜗牛创想为成都乐圈科技,雅安无线电管理中心等企业客户定制开发的软件均称为项目型软件。项目型软件有明确的研发周期,客户验收通过并付费后即表明本项目结束,所以项目的研发风险相对较低,当然,另外一方面其利润空间也相对不高。

 

  1. 产品型软件:

产品型软件是指本软件是针对大众需求进行研发,软件需求通常最开始由研发团队或运营团队根据市场可能的需求进行构思和设计,客户群体也是由市场团队或研发团队进行市场定位后确定。产品在没有正式上市运营之前无法收费,产品上市后继续根据用户的反馈进行产品改进和优化。产品可以选择收费或免费策略。目前我们看到的手机APP,游戏,QQ,微信,杀毒软件,办公软件,操作系统等等各类可下载的软件产品均属于产品型软件。产品型软件没有明确的周期可言,只要市场有需求,可以无限制地一直改进下去。比如我们看到的Windows操作系统,QQ或微信,美图秀秀之类的软件产品,并没有固定的周期,一直在更新和完善功能,以保持产品的用户数和市场竞争力。

 

  1. 单元测试 (Unit-Testing):

软件测试的早期阶段,主要专注于代码逻辑的实现,测试对象为单独的API(方法),其测试目标为保证每一个代码单元被正确实现,测试用例设计的目标是覆盖尽可能多的代码路径,通常采用路径覆盖法来判断测试代码的执行效果。

 

  1. 集成测试 (Integration-Testing):

软件测试的中期阶段,主要专注于API与API之间(比如A调用B,B调用C),或者模块与模块之间(比如登录模块与操作模块,操作模块与权限模块),甚至子系统与子系统之间的接口(比如淘宝网与支付宝,淘宝网与物流跟踪系统)。测试目的是确保代码单元进行集成后相互之间可以协同工作,典型的应用场景还包括Web前端页面与服务器后台页面之间的集成等。

 

  1. 系统测试 (System-Testing):

软件测试的晚期阶段,主要专注于整个系统进行集成后的整体功能,从一个软件系统层面进行整体测试分析,设计与执行。系统测试阶段结束后并且对发现的BUG已经修复完成,则软件产品基本可以准备交付或发布。

 

  1. 验收测试 (Acceptance-Testing):

软件测试的交付阶段,当项目型软件完成系统测试后,便可以交付给客户进行软件的验收。通常验收测试由客户方完成,客户根据明确的需求文档对软件的功能,性能,安全,兼容,可靠,可用待方面进行一一确认。有问题则继续改进问题,再进行验收,如果验收通过,则本项目宣告结束。

 

  1. Alpha测试:

Alpha测试也简写为α测试,也被称之为“内测”,是专门针对产品型软件的一种测试手段,通常研发团队或邀请部分优质客户来到研发现场对软件进行测试,发现问题及时讨论解决。所以它是一种可控的测试手段,而且有固定的测试方法和套路。

 

  1. Beta测试:

Beta测试也简写为β测试,也被称之为“公测”,是专门针对产品型软件的一种测试手段,通常我们会将已经开发完成的软件交付给用户使用,用户不必在研发现场,而是正常使用该软件,发现问题后向研发团队反馈,对产品进行改进。所以它是一种不可控的测试手段,我们无法明确知道用户会怎么使用软件产品,所以有些软件会跟踪记录用户行为,用以改进产品。β测试的产品不能向用户收费。

 

  1. Gamma测试:

Gamma测试也叫γ测试,通常是产品型软件正式上市发布前的最后一轮测试,之所以叫γ测试,是取Release Candidate的R作为标记,即候选发布版本。这个时候的测试通常由整个软件产品研发团队包括项目经理,需求分析师,测试人员,开发人员等所有人在内进行探索性测试,不依赖于测试用例和文档,也不太多关注需求,而是把全体成员扮演成用户的角色来进行测试。

 

  1. 白盒测试:是一种测试方法,主要关注代码逻辑,直接对代码部分进行测试,可以测试代码块,或某一个独立的API,或者是某个模块均可。通常我们在单元测试阶段会更多地使用白盒测试方法。

 

  1. 灰盒测试:是一种测试方法,主要关注接口之间的调用,通常在集成测试阶段会更多地使用灰盒测试方法。灰盒测试方法不关心代码的具体实现和代码逻辑,所以它不是纯粹的白盒测试,同时它也不关注界面的实现,所以它也不是纯粹的黑盒测试。它关注的是接口,我们利用代码来调用接口而不是利用界面操作来调用。从测试的角度来看可以这样理解:灰盒测试是利用白盒测试的方法进行的黑盒测试,也可以说成是利用黑盒测试方法进行的白盒测试,可以偏白一些,也可以偏黑一些。我们只关注接口传入的参数类型和返回值,所有黑盒测试的用例设计方法均适用。同时我们是绕开了界面的操作,而直接写代码来调用接口。这就是灰盒测试。

 

  1. 黑盒测试:理解了白盒测试和灰盒测试,黑盒测试的理解相对容易。不关注代码,也不关注接口,而是关注界面。像一个普通用户一样来使用和测试软件。只关注功能的实现,关注用户使用场景,关注需求,关注使用体验。

 

  1. 基于协议的测试:

基于代码的测试通常称之为白盒测试,基于接口的测试通常称之为灰盒测试,基于界面的测试通常称之为黑盒测试,而基于协议的测试其实也是一种偏黑的接口测试。对于网络应用系统来说,前端和后端之间的通信一定需要通过协议完成,所以我们可以绕开前端的界面而直接向后端发送协议数据包来完成相应的操作和接口调用,从而达到测试的目的。后续项目中我们将花费大量时间来完成基于协议的测试,比如功能性测试,安全性测试和性能测试等,都将基于协议来完成。

 

  1. 静态测试:

不启动被测对象的测试,比如代码走读,代码评审,文档评审,需求评审等测试工作被称为静态测试。

 

  1. 动态测试:

启动被测试对象的测试,比如白盒测试,灰盒测试,黑盒测试等,都需要将被测对象启动和调用才能达到测试的目的。

 

  1. 手工测试(Manual-Testing):

指不依赖于代码,而是完全依赖于人的操作来进行的测试。我们知道测试的重点和难点在于测试的分析和设计,而通常所说的手工测试是指测试的执行。通常用于黑盒测试方法或系统测试阶段。

 

  1. 自动化测试(Automation-Testing):

指利用测试脚本来驱动被测对象完成的测试,我们的工作重点在于开发测试脚本,需要具备较强的程序设计能力。

注:基于代码或基于接口的测试天然的就是自动化测试。而基于黑盒测试的方法可以手工完成,也可以自动化完成,后面的项目中使用Selenium来完成的基于界面的测试便是黑盒测试自动化。


版权所有,转载本站文章请注明出处:蜗牛学院在线课堂, http://www.mountsinaibaptistchurch.org/note/49
上一篇: 漫谈:未来10年,程序员的工资会怎么样?
下一篇: 漫谈:Arrange the divorce before the marriage-云服务测试之路
提示:登录后添加有效评论可享受积分哦!