`
Eileenlml
  • 浏览: 72868 次
  • 性别: Icon_minigender_2
  • 来自: 上海
社区版块
存档分类
最新评论

可测试性的具体体现

 
阅读更多

一. 功能测试

1. 安装测试:

1) 安装过程中对于缺省安装目录及任意指定的安装目录,是否都能正确安装;

2) 若是选择安装,查看能否实现其相应的功能;

3) 在所有能中途退出安装的位置退出安装程序后,验证此程序并未安装成功(没有程序组及程序项产生);

4) 软件安装后,对其它已经安装的软件是否有影响;

5) 裸机安装后,各功能点是否可用;

6) 安装前,安装程序是否判断可用磁盘空间大小,如果不能满足安装空间要求,安装程序能否继续;

7) 安装过程中查看 版权声明、版本信息、公司名称、LOGO等是否符合标准;

8) 安装过程中界面显示与提示语言是否准确、友好;

9) 重复安装时系统是否有提示、是否可以覆盖安装、是否可以升级安装、是否允许多版本共存;

10) 是否有注册码或硬件加密狗,在没有它们(或错误)存在的情况下能否顺利安装。

2.配置测试

1) 是否可以按照用户手册的说明,运行于多种操作系统(Windows 各版本 、Unix 、Linux 等);

2) 按系统最低要求进行软件的安装配置,查看能否正常实现各种功能;

3) 数据源等信息配置不正确时能否给出提示信息;

4) 是否可以按照用户手册的说明,支持多种数据库。

3. 卸载测试

1) 卸载后注册表中的注册信息及相关的程序安装目录是否能完全删除掉;

2) 卸载过程中完全删除共享文件后,看其它程序能否正常运行;

3) 卸载后,是否对其它已经安装的软件有影响;

4) 系统卸载后用户建立文档是否保留;

5) 软件卸载画面上的软件名称及版本信息是否正确;

6) 在所有能中途退出卸载的位置是否能正确退出;

7) 卸载过程中界面显示与提示语言是否准确、友好;

8) 卸载后安装此系统能否打开原来保存的文件,并一切运行正常;

9) 卸载程序如果要求重新启动机器,在重启动之间是否给用户提示以保存现有的己运行的程序的资料;

10) 是否可以选择组件进行卸载;

11) 卸载过程中,对意外情况的处理(掉电等)。

12) 在卸载过程中,是否有终止或者结束按钮。

4. 运行与关闭测试

1) 运行时是否与其它应用程序有冲突(内存冲突);

2) 是否可以同时运行多个程序;

3) 任务栏有无程序运行提示;

4) 若有未保存的数据,关闭系统时是否有提示;

5) 后台服务程序在点击关闭按钮时是否有确认提示;

6) 运行时是否过份占用系统资源、退出时能否完成释放占用的系统资源。

5. 服务程序的测试:

1) 系统是否限制服务器程序启动的数量,如不限制,同一范围内启动多个服务是否对系统有影响;

2) 服务程序能否长时间正常运行;

3) 外界异常后,服务程序的自动恢复能力(服务器掉电、网络中断后恢复、数据库异常后恢复…);

4) 在点击关闭按钮时是否有确认提示;

5) 应用程序与其他程序是否兼容(能否避免内存冲突)。

6. 系统管理(参数设置)

1) 参数设置后,能否正确的进行应用;

2) 设置错误参数,系统的容错能力;

3) 修改参数,对与之相关模块的影响;

4) 系统是否有默认的参数,A 有:默认的参数是否起到作用 ;B 没有:不设置,系统能否运行或者给出提示。

7. 用户、权限管理

1) 赋予一个人员相应的权限后,在界面上看此人员是否具有此权限,并以此人员身份登陆,验证权限设置是否正确(能否超出所给予的权限);

2) 删除或修改已经登陆系统并正在进行操作的人员的权限,程序能否正确处理;

3) 重新注册系统变更登陆身份后再登录,看程序是否能正确执行,具有权限是否正确;

4) 在有工作组或角色管理的情况下,删除包含用户的工作组或角色,程序能否正确处理;

5) 不同权限用户登录同一个系统,权限范围是否正确;

6) 覆盖系统所有权限设定;

7) 能否添加信息为空的用户(其中包括空用户名及空口令、空用户名非空口令、非空用户名及空口令);

8) 能否添加长用户名及长口令,如果允许,新用户能否正确登录;

9) 系统是否允许删除系统管理员这一特殊用户或修改系统管理员口令,删除或修改后系统的实际情况;

10) 登录用户能否修改自己的权限;

11) 添加用户(有标识或编号):标识相同,用户名不同;标识相同,用户名相同;标识不同,用户名相同;标识不同,用户名不同;

12) 登录用户能否修改本人(或其他人)的信息,删除本人(或其他人);

13) 修改用户的信息(包括权限,口令,基本信息等),对其他模块的影响;

14) 修改用户信息:修改后的用户信息和已经存在的用户信息相同;修改后的用户信息和已经存在的用户信息不同;

15) 不给用户授权,是否允许登录;

16) 改某些设置时,是否会影响具有上级权限及相同权限人员的设置;

17) 系统管理员修改了某些数据,以其他人员身份登录时数据是否改变;

18) 用户能否同时属于多个组,各个组的权限能否交叉;

19) 删除后重新添加的用户是否具有以前的权限;更改用户各项属性(包括权限)看对权限是否有影响。

8. 系统登录测试

1) 使用合法用户登录系统;

2) 用户名、口令错误或漏填时能否登陆;

3) 系统是否容许多次非法登陆,是否有次数限制;

4) 使用已登录账号登录系统系统能否正确处理;

5) 使用禁用帐号登陆系统能否正确处理;

6) 删除或修改后的用户用原用户登录;

7) 不输入用户名和口令,重复点“确定”和“取消”按钮,是否允许登录。

9. 注销

1) 注销为原模块、新模块系统能否正确处理;

2) 中止注销能否返回原模块、原用户;

3) 注销为原用户、新用户系统能否正确处理;

4) 使用错误的帐号、口令或无权限帐号、被禁用帐号进行注销。

10. 修改口令

1) 正常情况;

2) 输入错误的原口令或新口令与确认口令不一致系统能否正确处理;

3) 修改口令后,用原口令是否能登录(同时验证新口令是否有效);

4) 是否能修改其它用户的口令。

11. 右键功能

1) 右键菜单中的功能是否与菜单(或工具栏)中对应的功能一致;

2) 右键菜单中的功能能否正确实现;

3) 同一菜单下的热键是否相同。

12. 记录列表

1) 增加重复记录、空白记录,系统能否正确处理;

2) 修改后不保存(有保存按钮),系统能否正确处理;

3) 删除或修改正在使用信息,系统能否正确处理;

4) 删除级联记录的上游或下游记录,系统能否正确处理;

5) 删除记录时是否有提示;

6) 记录中包含的缺省系统信息能否删除和修改;

7) 记录列表能否及时反应记录的变化;

8) 记录变化之后系统相关信息能否及时更新;

13. 统计、查询

1) 对非法的时间范围系统能否正确处理;

2) 统计查询语句包含多个与或非条件时,系统能否正确处理;

3) 条件逻辑混乱,系统能否正确处理;

4) 多表查询统计及单表查询统计功能是否正确实现;

5) 分类查询、精确查询、无条件查询、组合查询能否完整列出满足条件的记录;

6) 能否按系统默认的条件进行查询;

7) 当统计时间段为当日、跨日、跨月、跨季、跨年度时,统计查询结果是否正确;

8) 当某些操作被别人取消后,设置条件段为取消前、取消后、包含取消操作的一段时间;

9) 以不同的权限登录时,统计、查询是否正确;

10) 在查询或统计大数据量时,系统是否允许终止操作;

11) 查询、统计按钮是否允许双击或更多的点击,系统做何反映;

12) 查询出的数据是否允许修改。

14. 文件操作

a、保存

1) 文件是否能够正确保存在在缺省位置或指定位置(本地、网络);

2) 系统能否正确处理长文件名、特殊字符文件名保存;

3) 文件能否保存为其它扩展名;

4) 如应用程序对文件名区分大小写,当这些文件在导出到介质中时,系统能否正确处理;

5) 介质空间已满时,系统是否给出提示。

b、打开

1) 打开文件是否正确显示上一次保存的内容;

2) 系统能否正确处理非系统默认扩展名的文件;

3) 文件能否被其他程序正确打开;

4) 打开对话框中,是否有默认扩展名的文件类型;

5) 打开对话框时,是否有默认的路径。

c、打印输出

1) 是否按所设置的格式打印;

2) 是否有打印预览,能否设置打印字体,打印效果是否合乎客户要求;

3) 打印预览的内容是否正确,内容是否能够进行拖拽操作,是否影响实际的打印;

4) 安装或不安装打印功能模块,对其它模块是否有影响;

5) 打印机未安装系统有无提示;

6) 打印中途能否进行正常的打印中断,是否可以选择打印的内容。

7) 能否进行本地或网络打印。

d、导入、导出功能

1) 导入的文件格式非要求时,系统如何处理;

2) 导入、导出的有效文件能否完整正确地显示并被使用;

3) 导出后的文件是否允许修改,如果允许,导入后能否使用;如不允许,系统有何限制;

4) 导入,导出是否可以选择路径;

5) 在客户端和服务器端进行导入,导出;

6) 在客户端和客户端之间进行导入,导出;

7) 在本地进行导入,导出;

8) 不同文件格式的导入,导出。

e、检入与检出

1) 单文件、多文件检入与检出;

2) 能否多次检入与检出;

3) 文件检出后其它人能对其做何操作。

15. 界面上对象的功能(文本框,下拉框,按钮,热键等等)

a、工具条

1) 工具条能否正常显示/隐藏;

2) 工具条按钮在不可用时是否置灰,例如在不置灰情况下,重复点击工具条上的按钮,看系统是否能够正常进行操作;

3) 可移动工具条在窗口中间位置其形状是否正确;

4) 工具条船坞状与非船坞状时其上按钮是否相同;

5) 工具栏上工具按钮功能是否能正常实现;

6) 工具按钮显示是否正确、友好、醒目易懂;

7) 工具栏上的工具按钮是否有鼠标悬停提示;

8) 工具栏上的工具按钮是否可以任意定制。

b、下拉列表

1) 列表记录的每一行是否显示完整;

2) 列表记录不能在一页中显示时,是否有纵向滚动栏;

3) 列表滚动栏上滑块能否自由滑动,对应内容显示是否正确;

4) 列表中内容能否自动排序。

c、窗口

1) 打开的窗口不确认关掉,能否再调其它窗口,且连续开窗口系统能否正确处理;

2) 窗口尺寸变化时窗口中控件能否自适应;

3) MDI中,子窗口的平铺、重叠、排列图标功能是否正确;

4) 窗口的标题、图标是否和菜单命令、按钮一致;

5) 子窗口和主窗口的属性是否正确;

6) 窗口中的上下左右滚动条是否能达到预览全部界面的效果。

d、文本框

1) 对输入域的必添项处理是否正确;

2) 输入域是否有长度限制;

3) 输入域如对某些字符禁止输入时,限制是否成功;

4) 中文、英文、空格,数字,字符,下划线、单引号 等所有特殊字符的组合;

5) 口令域

  • 口令为空格或包含空格、特殊字符(所有特殊字符的测试)时系统能否正常处理;
  • 口令位数是否有限制;
  • 口令与帐号相同,系统是否有提示;
  • 口为字典单词系统能否正确处理;

特殊的对系统安全性要求较高应该注意:

  • 口令应有最少位数限制;
  • 口令应为数值、大小写字母、特殊字符的组合;
  • 口令禁止设为空,不能和要被修改的口令一致;
  • 口令区分大小写;

6) 时间域

  • 年度超过4位;
  • 月份输入0或大于12;
  • 日期输入0或大于当前月份的天数;
  • 年度,月份,日期输入负数;
  • 时间输入大于或小于边缘值的数据;
  • 进行字符及汉字的输入,看程序能否正确处理;
  • 系统中所涉及时间是否取服务器时间;
  • 有范围的输入域,开始时间大于、小于、等于结束时间,系统能否正确处理;
  • 时间范围同当前时间的关系是否正确;
  • 是否包含缺省时间且缺省时间意义是否正确;
  • 系统对闰年,闰月的处理;
  • 对不同的时间格式(yyyy-dd-mm,yy-dd-mm,yyyy/dd/mm,yy/dd/mm等)是否允许输入;
  • 输入的时间在与之有关的模块中是否能正确的起到作用及对其他模块的影响;
  • 对时间点的测试。

7) 货币域

  • 输入负值、零、特大数、小数系统能否正确处理;
  • 系统对小数点后数位的控制是否正确;
  • 系统能否正确处理数值计算;
  • 输入非数值型数据(包括特殊字符),系统能否正确处理;
  • 系统能处理货币的种类。

8) 身份证(18或15位):

身份证中输入非法的年月日信息(包括超界数字及字符,汉字),程序能否进行检验并正确处理;

由身份证号码计算年龄,系统对出生年份末两位数是00的身份证号码能否正常处理;

在年龄和身份证均作为用户信息输入时,是否具有关联;

在身份证的输入中,是否允许输入字符”x”。

9) 电话号码

  • 输入特殊的电话号码,如119,110,800等看程序是否能正确处理;
  • 验证-,(,) * # 是否有真正含义;
  • 电话号码长度是否有限制;
  • 电话号码是否允许输入汉字,英文。

10) 关于时间的其它操作

  • 时间的跨月份、年度操作;
  • 12小时、24小时制的操作;
  • 客户机与服务器时间不同的操作(包括客户机与服务器两地时差不同);

11) 数据字段一致性

不同窗口中同一类数据输入域的数据接口是否一致(如添加用户及用户登录窗口对用户标识和口令的长度是否一致)。

e、图表曲线

首先,在一定的时间段观察曲线走势,如果有类似的软件可对比的话可以进行对比大体趋势,然后,再找关键点,对比关键点的数据。测试中,需要找到曲线的计算公式,找关键点进行计算。(进行对比是必要的,第一,可以节省一些不必要的工作量;第二,也有可能是编码人员所用的公式本身就有问题,而你所有测试所做的计算都是徒劳了。)

f、列表

1) 列表记录不能在一页中显示时,是否有纵向滚动栏;记录长度超过列表宽度时,是否有横向滚动栏;

2) 列表滚动栏上滑块能否自由滑动,滑块滑动时,对应内容显示是否正确;

3) 列表内容是否可直接输入;

4) 列表中每列数据能否按升序、降序排列;

16. 备份与恢复

1) 备份T日的数据,进行操作,然后恢复,查看恢复的数据是否正确;

2) 备份到不同介质上,并考虑介质空间已满的情况;

3) 用系统提供的恢复功能进行恢复:

  • 用数据库进行恢复;
  • 在备份和恢复还没有结束的时候,终止(掉电,网络不通等)备份和恢复;
  • 有操作的时候,进行备份和恢复;
  • 没有任何操作的时候,进行备份,恢复;
  • 部分备份,全部备份,部分恢复,全部恢复有选择的备份和恢复;

4) 进行备份,恢复操作是否有权限限制 A 有: 分别用有权限的用户和没有权限的用户进行操作 B 没有:单个用户进行备份,恢复;多个用户同时进行备份和恢复。

17.系统日志的处理

1) 系统能否正确记录日志信息;

2) 系统是否有清空日志的功能;

3) 系统是否有导出日志的功能;

4) 当日志数据超过容量时,系统如何处理。

二.性能测试

具体用例不好设计,下面列出了一些有性能要求的测试点:

1) 查询

2) 保存

3) 统计

4) 刷新

5) 显示

6) 传输

7) 响应

8) 下载

打开网络上其它介质上的文件时,可制造网络拥挤情况下的文件打开操作。主要测试点,集中在几个点上。一是数据量小的时候主要的查询统计刷新等功能点;二是数据量积累到一定程度时的查询统计刷新时间,这里的一定程度是根据实际的项目和客户需求来定的。

三.极限压力测试

1) 接收大数据量的数据文件时间;

2) 大数据恢复时间;

3) 大数据导入导出时间;

4) 大批量录入数据时间;

5) 大数据量的计算时间;

6) 多客户机同时进行某一个提交操作;

7) 采用测试工具软件;

8) 编写测试脚本程序;

9) 大数据量的查询统计时间。

四. 容错测试

1) 通过断开网线的强制性停止数据传输以及重新将网线接上,查看提示信息及对系统的影响;

2) 系统断电,恢复后查看对系统的影响程度;

3) 死机后,看程序如何处理;

4) 服务器DOWN掉,客户端程序如何处理。

五.并发测试

1) 登录的并发操作:多人同时登录系统,使用不同或相同账号;

2) 提交的并发操作:多人同时提交相同的工作项、不同的工作项;

3) 对数据库操作的并发操作:多人同时从数据库中读出(或向数据库导入) 相同文件、不同文件。

************************

附:一些容易出错的地方

************************

一. 有关新建和修改

1. 创建或修改的内容为已经存在的内容,系统是否有提示;

2. 修改正在使用的数据。

二. 删除

1. 应有确认提示;

2. 若删除的内容在文件或数据库中,应作实际校验;

3. 删除正在使用的数据;

4. 考虑删除数据的相关数据是否同时被删除;

5. 重新使用已删除的数据。

三.关于提示信息的验证

有些操作系统会给出成功(有时没有成功提示)或失败的提示,一定要验证提示的正确性(尤其是一些重要操作,如修改口令),即用其它方法检查所作的操作是否真正成功或失败。

四.关于考虑硬盘空间已满的情况

1. 数据存储和备份;

2. 生成文件;

3. 拷贝文件

五.关于修改系统时间

对于和时间有关的业务,测试时考虑修改系统时间对系统的影响。

六.对于响应速度慢的按钮进行连续点击;或中途取消,再继续…

七.凡是支持并发过程的功能,一定要做并发测试(手工进行或利用工具);

八.打印功能(能否正确打印,打印效果与预览是否一致)

九.系统初始化

1) 如果系统安装后需要进行初始化,初始化过程是否正确;

2) 如果系统安装后不需要进行初始化,安装后的默认设置是否正确、适当。

十.版权声明是否符合标准,如果有公司的logo,图标是否正确(最容易测试的地方,也是最容易被忽略的地方)

十一.如果捆绑硬件,如果可能的话,在测试我们的软件产品前要对硬件的性能、稳定性进行严格测试。(包括大数据量的传输入等)

十二.备份与恢复

1) 备份与恢复过程本身的正确性;

2) 备份内容的正确性(通过事先准备的测试数据在恢复后验证);

3) 备份与恢复过程中对异常情况的处理(掉电、网络不通等);

4) 在原始机上的恢复;

5) 在非原始机上的恢复;

6) 在裸机(只有操作系统和必要的数据库或第三方产品)上的恢复;

7) 在一台机器上进行若干次的备份与恢复;

8) 如果是支持多数据库的软件,备份与恢复是容易出错的地方。

需要严格把握的错误类别:

在整个测试过程中对每条问题都制定有错误归类,现按照问题的严重程度,把问题主要分为四类:

A:严重影响系统运行:导致系统出现不可预料的严重错误的问题,例如:运行过程中出现页面或页面无法显示、死机等;

B:影响系统运行:系统中重要的功能出现运行错误,例如:导致用户必须重新登录的问题,导致个别用户不可用的问题;

C:不影响系统运行但必须修改:系统中基本的操作或功能没有实现或实现有误的问题,以及不符合常规的操作界面的问题;

D:所提建议:不影响系统运行,对系统的可用性等提示的建议性的问题。

分享到:
评论

相关推荐

    可测试性的部分具体体现

    可测试性的具体体现主要涵盖以下几个方面: 1. **安装测试**: - 安装过程需要检查程序是否能在不同的安装路径下正常运行,包括默认路径和自定义路径。 - 验证选择性安装的选项,确保每个组件的功能都能正常工作...

    主板兼容性测试规划

    1. **安装WinXP系统**:进行基本功能测试,包括软硬件结合测试、硬盘兼容性测试、光驱兼容性测试、CPU兼容性测试、内存兼容性测试、PCI-E兼容性测试、电源兼容性测试、软件兼容性测试、硬件兼容性测试、无盘/网络...

    测试用例实例(含:功能测试用例、性能测试用例、兼容性测试用例)

    对于文档中提到的兼容性测试,虽然没有给出具体的测试用例细节,但可以假设它涵盖了上述兼容性测试的关键点。 **总结**: 通过上述分析,我们可以看到功能测试、性能测试和兼容性测试是软件测试的重要组成部分。每...

    压力测试和服务器稳定性测试

    服务器稳定性测试主要关注的是系统在长时间运行下的表现,尤其是对于那些需要7×24小时不间断服务的应用场景。这种测试旨在评估服务器能否在长时间内保持稳定的运行,以及在出现故障时的恢复能力。 **任务A描述**:...

    软件兼容性测试

    具体到软件兼容性测试的内容,我们可以将其细化为以下几个方面: 1. 操作系统/平台的兼容性:这是最基本也是最常见的一类测试,测试软件在不同操作系统(如Windows、macOS、Linux)及不同版本(例如Windows的不同...

    软件可靠性测试及其实践

    本文将深入探讨软件可靠性测试的概念、过程及其实践中的关键问题,并通过一个具体的案例介绍如何实施软件可靠性测试。 #### 二、软件可靠性测试的概念 “软件可靠性测试”是一种特定类型的软件测试,其目标是为了...

    手机可靠性测试用例

    手机作为现代人生活中不可或缺的一部分,其质量和性能的稳定性至关重要。为了确保手机在各种环境和使用场景下的可靠性和耐用性,制造商通常会执行一系列严格的测试。本文将根据提供的文件信息,详细解析手机可靠性...

    显卡压力稳定性测试 for LINUX

    本次测试针对HW3.1显卡进行了为期75小时的长时间压力测试,具体时间为2019年2月12日10:00至2019年2月15日13:00。测试过程中,主要关注以下几项指标: - **温度变化**:记录显卡在高负载下的最高温度和平均温度。 - ...

    连接器测试与可靠性

    在讨论电子连接器的可靠性测试时,首先需要明白其测试的主要目的,即评估连接器在实际工作状况下的性能表现。为了正确选择或设置测试内容,必须先理解可能影响连接器失效的多种机理。失效机理大致可分为两类:一类是...

    JESD219 固态硬盘耐久性测试

    - **测试流程**:明确了耐久性测试的具体步骤和执行顺序。 - **结果评估**:提供了评估测试结果的方法和标准。 - **应用指南**:针对不同类型的SSD提出了具体的测试建议。 #### 三、SSD耐久性测试关键知识点 #####...

    软件测试工具中可测试性的具体体现

    软件测试工具中可测试性的具体体现一.功能测试1.安装测试:1)安装过程中对于缺省安装目录及任意指定的安装目录,是否都能正确安装;2)若是选择安装,查看能否实现其相应的功能;3)在所有能中途退出安装的位置退出...

    国产32位单片机兼容性测试非权威报告- AT32F403兼容性测试篇.pdf

    - 兼容性测试对量产产品准备的重要作用,确保产品设计的灵活性和未来的可升级性。 报告还体现了在技术领域中对国产芯片的逐渐认可和使用,以及在实际应用中对性能和稳定性的需求,从而驱动国内厂商不断改进其芯片的...

    结合测试工艺与测试模对PACK 安规测试、EOL测试、充放电测试梳理 并且针对具体测试项,分析其测试原理

    本文将围绕PACK的安规测试、EOL测试以及充放电测试进行深入探讨,并对具体测试项进行分析。 #### 二、PACK测试背景与目的 **PACK**(Battery Pack)是指将多个单体电池按照一定的排列方式组合起来,并通过机械结构...

    测试用例 测试阶段3 模板汇总1500条(功能、性能、兼容性).zip

    在“测试需求用例.docx”文档中,我们可能找到针对各个功能点的具体测试步骤和预期输出,确保系统功能的正确性和完整性。例如,登录功能、数据处理、用户界面交互等都会包含在内。 **性能测试用例**关注的是系统在...

Global site tag (gtag.js) - Google Analytics