关于软件测试的小知识

所谓测试,就是为发现错误而执行程序的过程。
一、软件测试三个重要的测试原则:
 1.软件测试是为发现错误而执行程序的过程;
 2.一个好的测试用例具有较高的发现某个尚未发现的错误的可能性;
 3.一个成功的测试用例能够发现某个尚未发现的错误。
黑盒测试技术16页
白盒测试----〉编码测试
二、穷举路径测试就如同穷举输入测试,非但不可能也不切合实际。
假如穷举测试后程序还可能存在错误的原因:
    1、即使穷举路径测试也决不能保证程序符合设计规范。
    2、程序可能因为缺少某些路径而存在问题。
    3、穷举测试可能不会暴露数据敏感错误。
尽管穷举输入测试强于穷举路径测试,但两者都不是有效地方法。
三、软件测试的重要原则:
1、测试用例中一个必须部分是对预期输出或结果进行定义。
2、程序员应当避免测试自己编写的程序。
3、编写软件的组织不应当测试自己编写的软件
4、应当彻底检查每个测试的执行结果
5、测试用例的编写不仅应当根据有效和预料的输入情况,而且也应当根据无效和未预料的输入情况
6、检查程序是否“未做其应该做的”仅是测试的一半,测试的另一半是检查程序是否“做了其不应该做的”
7、应避免测试用例用后即弃,除非软件本身就是一个一次性的软件
8、计划测试工作时不应默许假定不会发现错误
9、程序某部分存在更多错误的可能性,与该部分已发现错误的数量成正比
10、软件测试是一件极富创造性、极其智力挑战性的工作
一个测试用例必须包括:
 1、对程序的输入数据的描述。
 2、对程序在上述输入数据下的正确输出结果的精确描述。
保留测试用例,当程序其他部件发生更动后重新执行,这就是我们所谓的“回归测试”。
非基于计算机测试的过程即人工测试。
人工测试在程序开始编码之后、基于计算机的测试开始之前使用。
代码检查与走查是两种主要的人工测试方法。
代码走查的优点:
         1、一旦发现错误,就能在代码中对其进行精确定位,从而降低调试(错误修正)的成本
         2、通过这个过程通常可以发现成批的错误,这样错误就可以一同得到修正。
         3、基于计算机的测试通常只能暴露出错误的某个表征(程序不能停止,或打印出了一个无意义的结果),错误通常是逐个地被发现 并得到纠正的。
代码走查/检查与计算机的测试时互补的。缺少其中任何一种,错误检查的效率都会降低。
所谓代码检查,是以组为单位阅读代码,它是一系列规程和错误检查技术的集合。
代码检查小组成员:程序员(非编码人员)、编码人员、程序设计人员、测试专家。
协调人的职责:
        1、为代码检查分发材料、安排进程。
        2、在代码检查中起主导作用。
        3、记录发现的所有错误。
        4、确保所有错误随后得到改正。
代码检查时活动:
        1、由程序编码人员逐条语句讲述程序的逻辑结构。
        2、对着历来常见的编码错误列表分析程序。
代码检查会议的理想时间应在90---120分钟,每小时大约150行代码。
数据引用错误:
1、是否有引用的变量未赋值或初始化
2、对于所有的数组引用,是否每一个下标的值都在相应维规定的界限之内
3、对于所有的数组引用,是否每一个下标的值都是整数
4、对于所有的通过指针或引用变量的引用,当前引用的内存单元是否分配
5、如果一个内存区域具有不同属性的别名,当通过别名进行引用时,内存区域中的数据值是否具有正确的属性。
6、变量值的类型或属性是否与编译器所预期的一致。
7、在使用的计算机上,当内存分配的单元小于内存可寻址的单元大小时,是否错在直接或间接的寻址错误。
8、当使用指针或引用变量时,被引用的内存的属性是否与编译器所预期的一致
9、假如一个数据结构在多个过程或子程序中被引用,那么每个过程或子程序对该结构的定义是否都相同
10、如果字符串有索引,当对数组进行索引操作或下标引用,字符串的边界取值是否有“仅差一个”的错误。
11、对于面向对象的语言,是否所有的继承需求都在实现类中得到满足
简单的测试用例的作用:提供了启动代码走查和质疑程序员逻辑思路及设想的手段。
桌面检查
同行评分是一种依据程序整体质量、可维护性、可扩展性、易用性和清晰性对匿名程序进行评价的技术。目的是为程序员提供自我评价的手段。
白盒测试测试关注的是测试用例执行的程度或覆盖程序逻辑结构(源代码)的程度。完全的白盒测试是将程序中的每条路径都执行到。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值