在正式发布产品之前往往要先发布一些测试版,让用户能够反馈出相关信息,或者找到存在的Bug,以便在正式版中得到解决。

  特别是在有客户参加的情况下,对系统进行测试可能会出现一些我们没有考虑的情况,还可以解决一些客户实际关心的问题

不同的测试技术区分

覆盖测试技术

  说明:测试覆盖率可以看出测试的完成度,在测试分析报告中可以作为量化指标的依据,测试覆盖率越高效果越好。

  覆盖测试可以是程序代码的执行路径覆盖,亦可以是功能实现的步骤覆盖(可以理解成流程图的路径覆盖)。

  该技术可以用在任何测试阶段,包括单元测坏死、集成测试、系统测试。

  使用该技术时可以使用以上的任何测试方法和测试技术。

白盒测试和黑盒测试技术

  白盒测试技术 (White Box Testing)该技术主要的特征是测试对象进入了代码内部,根据开发人员对代码和对程序的熟悉程度,对有需要的部分进行在软件编码阶段,开发人员根据自己对代码的理解和接触所进行的软件测试叫做白盒测试。这一阶段测试以软件开发人员为主,使用Xunit系列工具进行测试,可以包括很多方面如功能性能等。

  黑盒测试 (Black Box Testing)测试的主体部分黑盒测试的内容主要有以下几个方面,但是主要还是功能部分。主要是覆盖全部的功能,可以结合兼容,性能测试等方面进行,包括的不同测试类型请参考以上内容。

手工测试和自动化测试

  手工测试(Manual Testing):即依靠人力来查找Bug。方法可以参考上边的测试,也可以根据对实现技术及经验等进行不同的测试。

  自动测试(Automation Testing)使用有针对工具实行。可以作出自动化测试的计划,对可以进行自动化测试的部分编写或者录制相应的脚本,可以加入功能,容错,表单提交等,可以参考MI,Rational或者其他类测试工具说明.

  根据权威的软件测试经验,手工测试还是主要的测试方法,自动测试不够灵活,在这里不再详述。微软的测试过程80%还是手工完成。

  自动测试永远也代替不了手工测试,但是手工测试的工作量很大是不争的事实。

根据RUP标准按阶段区分测试

  单元测试在上边有详细的叙述,还有针对单元测试和集成测试的论述,请参考。

  集成测试分为功能集成测试和系统集成测试,相互有调用的功能集成,在系统环境下功能相互调用的影响等,使用方法可以任意选用上面的内容。注重功能方面。

  系统测试在功能实现的基础上,可以加入兼容性,易用性,性能等等

  验收测试可以包括Alpha和Beta测试,在这里就不再详述。

存在风险及解决方法

  说明:测试不能找出所有的问题,只是尽量将问题在开发阶段解决大多数的问题而已。 
测试风险如下:

  软硬件的测试环境提供上也对测试结果有很大的影响。 
  测试团队的水平,经验,合作效果等 
  整个开发流程对测试的重视程度,测试的进入时间等 
  由于测试环境操作系统,网络环境,带宽等情况可能产生的测试结果可能不同这是就需要经验以及对测试环境的保护等方面下一些功夫。

软件缺陷的原则

  软件缺陷区别于软件bug,它是在测试过程中出现的对系统有影响的,但是在设计中没有的或者对修改后的bug测试和开发人员有不同意见等 
  软件未达到产品说明书标明的功能。 
  软件出现了产品说明书指明不会出现的错误。 
  软件功能超出产品说明书指明范围。 
  软件未达到产品说明书虽未指出但应达到的目标。 
  软件测试员认为软件难以理解、不易使用、运行速度缓慢,或者最终用户认为不好。

文档测试

  产品说明书属性检查清单 
  完整.是否有遗漏和丢失?完全吗?单独使用是否包含全部内容? 
  准确.既定解决方案正确吗?目标明确吗?有没有错误? 
  精确,不含糊,清晰.描述是否一清二楚?还是自说自话?容易看懂和理解吗? 
  一致.产品功能能描述是否自相矛盾,与其他功能有没有冲突? 
  贴切.描述功能的陈述是否必要?有没有多余信息?功能是否原来的客户要求? 
  合理.在特定的预算和进度下,以现有人力,物力和资源能否实现? 
  代码无关.是否坚持定义产品,而不是定义其所信赖的软件设计,架构和代码? 
  可测试性.特性能否测试?测试员建立验证操作的测试程序是否提供足够的信息?

  产品说明书用语检查清单

  说明对问题的描述通常表现为粉饰没有仔细考虑的功能----可归结于前文所述的属性.从产品说明书上找出这样的用语,仔细审视它们在文中是怎样使用的.产品说明书可能会为其掩饰和开脱,也可能含糊其词----无论是哪一种情况都可视为软件缺陷.

  总是,每一种,所有,没有,从不.如果看到此类绝对或肯定的,切实认定的叙述,软件测试员就可以着手设计针锋相对的案例.

  当然,因此,明显,显然,必然.这些话意图诱使接受假定情况.不要中了圈套.

  某些,有时,常常,通常,惯常,经常,大多,几乎.这些话太过模糊."有时"发生作用的功能无法测试.

  等等,诸如此类,依此类推.以这样的词结束的功能清单无法测试.功能清单要绝对或者解释明确,以免让人迷惑,不知如何推论.

  良好,迅速,廉价,高效,小,稳定.这些是不确定的说法,不可测试.如果在产品说明书中出现,就必须进一步指明含义.

  已处理,已拒绝,已忽略,已消除.这些廉洁可能会隐藏大量需要说明的功能.

如果...那么...(没有否则).找出有"如果...那么..."而缺少配套的"否则"结构的陈述.想一想"如果"没有发生会怎样.

Alpha 和Beta 测试的更多相关文章

  1. 1.4 测试各阶段(单元、集成、系统 、Alpha、Beta、验收)

    单元测试:单元测试是对软件基本组成单元(软件设计的最小单位)进行正确性检验的测试工作,如函数.过程(function,procedure)或一个类的方法(method).单元测试是一个方法层面上的测试 ...

  2. Alpha、 Beta、build、release测试

    alpha(内测) alpha测试是由一个用户在开发环境下进行的测试,也可以是公司内部的用户在模拟实际操作环境下进行的测试.alpha测试的目的是评价软件产品的FLURPS(即功能.局域化.可使用性. ...

  3. 软件测试 -- alpha测试和beta测试的区别

    alpha测试是在用户组织模拟软件系统的运行环境下的一种验收测试,由用户或第三方测试公司进行的测试,模拟各类用户行为对即将面市的软件产品进行测试,试图发现并修改错误. Beta测试是用户公司组织各方面 ...

  4. 转载:alpha测试和beta测试的区别;黑盒测试和白盒测试的区别;

    alpha测试版,有点相当于内部测试,一般开发人员在场   ,是由用户做测试,但开发人员在场,一般是请用户到开发现场去测试 beta测试版,完全交给用户,由用户做测试,返回测试报告,相当于发行前的一个 ...

  5. alpha测试和beta测试的区别

    alpha测试版,有点相当于内部测试,一般开发人员在场   ,是由用户做测试,但开发人员在场,一般是请用户到开发现场去测试  beta测试版,完全交给用户,由用户做测试,返回测试报告,相当于发行前的一 ...

  6. alpha测试和beta测试的区别是什么?

    1.测试时间不同: Beta测试是软件产品完成了功能测试和系统测试之后,在产品发布之前所进行的软件测试活动,它是技术测试的最后一个阶段. alpha测试简称“α测试”,可以从软件产品编码结束之时开始, ...

  7. Alpha测试与Beta测试

    粗略说一下Alpha测试与beta测试 1.Alpha测试 α测试是由一个用户在开发环境下进行的测试,也可以是公司内部的用户在模拟实际操作环境下进行的测试.α测试的目的是评价软件产品的功能.局域化.可 ...

  8. 冒烟测试、α测试、Beta测试、性能测试

    “冒烟测试”(也可称为showcase)这一术语描述的是在将代码更改嵌入到产品的源树中之前对这些更改进行验证的过程. 冒烟测试(smoke test)在测试中发现问题,找到了一个Bug,然后开发人员会 ...

  9. 软件测试之α测试和Beta测试

    实施验收测试的常用策略有三种,它们分别是: · 正式验收 · 非正式验收或Alpha 测试 · Beta 测试 因此,Alpha测试和Beta测试都属于验收测试.所谓验收测试是软件产品完成了功能测试和 ...

随机推荐

  1. IEnumerable和IEnumerator

    概述 IEnumerable和IEnumerator接口存在的意义:用来实现迭代的功能! public interface IEnumerable { IEnumerator GetEnumerato ...

  2. Android-Activity使用(2) -传值

    一.简单传值 1.修改MainActivity protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedIns ...

  3. Dashboard索引缺失、查询不到endpoint或counter

    触发graph的索引全量更新.补救手工操作带来的异常.触发方式为,运行curl -s "http://$hostname:$port/index/updateAll",其中$hos ...

  4. linux下安装编译php的curl扩展

    curl扩展的位置(需要编译的版本)/root/install/php-5.5.24/ext/curl 1.进入对应的扩展目录 # cd /root/install/php-5.5.24/ext/cu ...

  5. 用命令实现SQLServerr的备份与还原

    一.备份数据库,命令如下: USE master; GO BACKUP DATABASE mytest TO DISK='E:\disk\mytest.bak' /* mytest为数据库名称,'E: ...

  6. tomcat access log 参数

    %a - 客户端IP地址 %A - 本机IP地址 %b - 发送字节数,不含HTTP头 如果为空是  '-' %B - 同上 %h - 客户端机器名 (如果connector的enableLookup ...

  7. 实用命令dd

    1.命令简介 dd 的主要选项: 指定数字的地方若以下列字符结尾乘以相应的数字: b=512, c=1, k=1024, w=2, xm=number m if=file #输入文件名,缺省为标准输入 ...

  8. 20145320《Java程序设计》第二次实验报告

    20145320<Java程序设计>第二次实验报告 北京电子科技学院(BESTI)实验报告 课程:Java程序设计 班级:1453 指导教师:娄嘉鹏 实验日期:2016.04.12 15: ...

  9. redis入侵

    一.前言 前段时间,在做内网影响程度评估的时候写了扫描利用小脚本,扫描后统计发现,内网中60%开放了redis6379端口的主机处于可以被利用的危险状态,因为都是一些默认配置造成的考虑到本社区大部分开 ...

  10. Postgresql 帐号密码修改方法

    1.Linux环境下 #su  postgres -bash-3.2$psql -U postgres postgres=#alter user postgres with password 'new ...