测试

这篇文章是在投递烽火通信产品测试岗后学习使用的。

C/S :Client/Server结构。降低系统通讯开销,充分利用两端额硬件环境。
B/S :Browser/Server结构。通过浏览器多种脚本语言,实现原来需要复杂专用软件才能实现的功能。一部分事物逻辑在前端实现,主要事务逻辑在后端实现。节约开发成本。

C/S, B/S区别:

  1. 运行环境不同。C/S建立在局域网基础上,对运行的系统有要求。B/S建立在广域网基础上。只对浏览器有要求。
  2. 安全要求不同。C/S面对较为固定的用户群,对信息安全的控制力很强。高度机密的信息系统采用C/S结构更为合适。B/S面对不可知的用户群,对安全控制能力较弱。
  3. 程序架构不同。C/S程序更注重流程,对权限多层次校验,对系统运行速度较少考虑。B/S更加追求安全和访问速度。
  4. 软件重用不同。C/S程序的重用性不如在B/S要求下的构件的重用性好。B/S要求构件具有相对独立的功能,可以实现更好地重用。
  5. 系统维护不同。C/S由于整体性考虑,处理出现的问题和系统升级慢、难。B/S构件可实现无缝升级,将系统维护开销减到最小。
  6. 用户接口不同。C/S多建立在Windows平台,表现方法有限,对程序员要求较高。B/S建立在浏览器上,有更加丰富和生动的方式和用户交流,开发难度和成本降低。

软件需求

  1. 需求分类:
    A:业务需求:反映组织机构或客户对系统、产品高层次的目标要求,会在项目视图和范围文档中予以说明。
    B:功能需求:定义了开发人员必须实现的软件功能,使得用户能完成他们的任务,从而满足业务需求。
    C:用户需求:描述了用户使用产品必须要完成的任务,在使用实例文档或方案脚本说明中予以说明。
  2. 进行需求分析的目的:
    A. 将用户需求转变为功能需求。对测试范围、处理分支、业务场景进行度量,明确其功能点对应的输出、处理和输出。
    B. 将隐式需求转为明确。
  3. 测试活动5要素
    什么需求、怎么测、时间、人数、环境(测试技能、工具、背景知识、风险)
  4. 测试需求分析
    A. 确认功能:(业务功能,辅助功能,数据约束,易用性需求,编辑约束,参数需求,权限需求,性能约束)
    B. 分析场景:(考虑场景的调用者,调用前提和约束;考虑系统内部各场景之间的交互,形成业务流程图。)
    C. 挖掘隐形需求:

测试用例,应该包含以下信息:

1) 软件或项目的名称
2) 软件或项目的版本(内部版本号)
3) 功能模块名
4) 测试用例的简单描述,即该用例执行的目的或方法
5) 测试用例的参考信息(便于跟踪和参考)
6) 本测试用例与其他测试用例间的依赖关系
7) 本用例的前置条件,即执行本用例必须要满足的条件,如对数据库的访问权限
8) 用例的编号(ID),如可以是软件名称简写-功能块简写-NO.。
9) 步骤号、操作步骤描述、测试数据描述
10) 预期结果(这是最重要的)和实际结果(如果有BUG管理工具,这条可以省略)
11)开发人员(必须有)和测试人员(可有可无)
12)测试执行日期

2、实例

该测试案例是以一个B/S结构的登录功能点位被测对象,该测试用例为黑盒测试用例。假设用户使用的浏览器为IE6.0 SP4。

功能描述如下:
1.用户在地址栏输入相应地址,要求显示登录界面;
2.输入用户名和密码,登录,系统自动校验,并给出相应提示信息;
3.如果用户名或者密码任一信息未输入,登录后系统给出相应提示信息;
4.连续3次未通过验证时,自动关闭IE。

表4-1登录界面测试用例

用例ID XXXX-XX-XX
用例名称 系统登录
用例描述

  1. 系统登录
  2. 用户名存在、密码正确的情况下,进入系统
  3. 页面信息包含:页面背景显示
  4. 用户名和密码录入接口,输入数据后的登入系统接口

用例入口 打开IE,在地址栏输入相应地址,进入该系统登录页面

测试用例ID 场景 测试步骤 预期结果 备注


通用测试用例写作规范

一个好的测试用例必须包含足够的内容,将这些内容可以拆分为八个要素:用例编号、测试项目、测试标题、重要级别、预置条件、测试输入、操作步骤、预期输出。


黑盒测试、白盒测试

  1. 白盒测试:是一种测试用例设计方法,在这里盒子指的是被测试的软件,白盒,顾名思义即盒子是可视的,你可以清楚盒子内部的东西以及里面是如何运作的,因此白盒测试需要你对系统内部的结构和工作原理有一个清楚的了解,并且基于这个知识来设计你的用例。
  2. 白盒测试技术一般可被分为静态分析和动态分析两类技术。
    A. 静态分析主要有:控制流分析技术、数据流分析技术、信息流分析技术。
    B. 动态分析主要有:逻辑覆盖率测试(分支测试、路径测试等),程序插装等。
  3. 白盒测试优点:迫使测试人员去仔细的思考软件的实现;可以检测代码中的每条分支和路径;揭示隐藏在代码中的错误;对代码的测试比较彻底;最优化。
  4. 白盒测试缺点:昂贵;无法检测代码中遗漏的路径和数据敏感性错误;不验证规格的正确性。
  5. 黑盒测试又叫功能测试,这是因为在黑盒测试中主要关注被测软件的功能实现,而不是内部逻辑。在黑盒测试中,被测对象的内部结构,运作情况对测试人员是不可见的,测试人员对被测产品的验证主要是根据其规格,验证其与规格的一致性。
  6. 在绝大多数没有用户参与的黑盒测试中,最常见的测试有:功能性测试、容量测试、安全性测试、负载测试、恢复性测试、标杆测试、稳定性测试、可靠性测试等。
  7. 单元测试(Unit Testing)是对软件基本组成单元进行的测试,如函数或是一个类的方法。这里的单元,就是软件设计的最小单位。
  8. 测试用例(Test Case)是为某个特殊目标而编制的一组测试输入、执行条件以及预期结果,以便测试某个程序路径或核实是否满足某个特定需求。也指对一项特定的软件产品进行测试任务的描述,体现测试方案、方法、技术和策略。内容包括测试目标、测试环境、输入数据、测试步骤、预期结果、测试脚本等,并形成文档。