通常软件测试是指使用人工或自动化手段来运行或测试某个程序或系统,以检查其是否满足规定的需求或弄清楚预期结果与实际结果之间的差异。 而朱少民在《软件测试的道法术器》中给出了“软件测试”一个新的公式: 测试 = 检测 + 试验 这里测试中的“测”指的是检测,测试中的“试”指的是试验。再进一步的解释就是对已知的部分进行检测和对未知的部分进行试验。
已知的部分,是指测试目标、测试需求和测试的验证准则等都是明确的,即待测试的功能特性是清楚的,具有良好的可测试性。实际上,这一部分是软件测试相对容易实现的。毕竟,软件的功能、性能、接口以及质量特性在需求文档中已经得到清晰的描述,测试人员根据已知的情况设计测试用例还是比较容易的。
未知的部分,可能存在两种情况,一是测试需求是不明确的,即产品的功能需求定义不清楚或者不稳定;一是为了验证软件的健壮性,需要进行探索性测试,找出软件潜在的Bug。对于未知的部分,很难直接进行验证,必须要通过不断地试验才行。 软件测试之所以分为对已知的部分进行检测和对未知的部分进行试验,是因为测试的输入就具有两重性——确定性和不确定性。当输入不确定时,即使需求是明确的,软件的输出也是未知的,测试就只能是对未知部分进行试验。 “测试=检测+试验”这个公式还意味着:测试=(基于确定性模型)自动化测试+探索性测试。 这正是: 测试有了新公式,已知检测未知验 参考书目:软件测试之道:那些值得借鉴的实践案例,作者:麦思博(北京)软件技术有限公司,出版社:电子工业出版社 |
|