序
做测试三年多,终于从一个测试工程师变成测试经理,虽然工资是拿的测试工程师的工资,干测试加管理的工作,最近带新人,确实很痛苦,真不想带人,不过既然带了就好好带吧。
下面总结出我对测试的理解,相关的测试想法跟一点点的测试经验,仅供大家参考。我所谈的内容全部为自己理解,许多定义可会不严谨。本文绝无半点抄袭,请读过的同行进来点评和指正。Anny在此先谢谢大家从百忙中抽出时间来读这些内容,非常感谢大家对我的批评与指正。
什么是软件测试
许多测试书籍都不能给软件测试定义比较严谨的概念,而我有怎能定义好呢?之前专门跟朋友谈论过这个话题,不过响应的人并不多。
在那次的讨论中我对软件测试提出了两层意义,第一层:验证软件可用;第二层:验证软件不可用。
大家看见我这样的定义会觉得比较矛盾,请听我详细描述。
第一层:验证软件可用,开发人员集合他们的思维跟想象,借助相关需求文档,设计文档设计出软件,可软件是否符合用户或者满足需求文档的要求呢?这是验证软件可用。个人觉得相关的测试有单元测试、集成测试、测试、β测试。
第二层:验证软件不可用,软件在使用的过程中,由于外在因素导致软件出错,那会是什么样的结果呢?为了防止这些以外因素导致的软件错误,就需要软件测试来验证,就是尽一切可能性导致软件不可使用。个人觉得这类测试没有固定形式,需要大家不断地积累。
关于软件测试的定义大家可以到网络上进行搜索,相信GOOLGE、百度等搜索引擎一定能帮助大家很快定位到需要的答案。
软件测试种类
根据测试种类分,软件测试分为,白盒测试、灰盒测试、白盒测试。在此我引入了灰盒测试的概念。下面对各测试模式进行描述。
白盒测试
从字面上解释白盒为,通过透明白盒子可以看到盒子内的东西。而白盒测试则可以这样理解,被测试模块被装在一个白盒子里,我们能清楚的看到代码是如何运转的,所以我们通过对白盒子里相关某块或者相关指标进行测试,得出相应的结果。即白盒测试。
灰盒测试
从字面上解释灰盒为,通过半透明盒子,只可以看到盒子里部分东西,或者模糊地看到一些东西。而灰盒测试则可以这样理解,被测试模块被装在半透明盒子里,我们通过能看清楚的某块或者相关指标进行测试,而我们看不清楚的地方,选用黑盒测试进行测试。
黑盒测试
从字面上解释黑盒为,通过黑色盒子我们看不到盒子内部东西,而黑盒测试则可以这样理解,被测试模块被装在黑盒当中,我们只能通过输入的信息和输出的信息来判断黑子里的代码是否满足要求。
根据测试性质分,软件测试分为功能测试、性能测试、UI测试、本地化测试等
功能测试
功能测试:测试软件的功能是否满足需求。功能测试主要黑盒测试为主。
许多公司进行功能测试的时候只是进行手工黑盒测试,目前用的较多的功能自动化测试工具是QTP,而目前市面上有许多免费开源的功能测试工具,大家可以搜索一下。