软件测试 | 测试要素在软件生命周期的目标和内容

软件测试 作业三

测试要素

测试要素描述测试的主要目标。

  • 一个测试要素由若干个测试事件组成,用于验证该测试要素所描述的测试目标是否已经达成。

  • 一个测试事件描述了测试条件和可能发生的事件。

在SDLC 的不同阶段,每一个测试要素所进行的测试内容有所不同,由不同的测试事件构成。

15项测试要素的解释(测试目标)

(1) 可靠性:系统在规定的时间内可以正常运行。

(2) 授权:特殊的授权可以执行一个特殊的操作。

(3) 文件完整性:文件被正确使用,恢复和存储的数据正确。

(4) 进程追踪:能够证实运行进程处在正常工作状态。

(5) 系统运行的连续性:发生非致命性问题后,系统仍然有能力继续运行关键的任务。

(6) 服务级别:系统有紧急情况发生时,程序的输出结果不经 过处理或进行简单的处理后可以直接使用。

(7) 存取控制:防止系统被误用(意外或者有意的)。

(8) 方法论:采用选择的方法论实现系统

(9) 正确性:数据输入、过程处理和输出的正确性。

(9)ʹ 一致性:确保最终设计和用户需求完全一致。

(10)易用性:多数人认为易于使用。

(11)可维护性:出现问题时易于定位,并且进行修改。

(12)可移植性:数据或者程序易于移植到其它系统上。

(13)耦合性:系统中的组件易于联接。

(14)性能:系统资源的占用率、响应时间、并发处理等能力。

(15)易操作性:容易操作。

实际分析

选取一个测试要素与实际项目进行分析

测试要素:存取控制

测试项目:王者手册

这是一个展示”王者荣耀”英雄,装备,技能,铭文的Android APP

需求阶段

定义系统的存取策略

因为是一个本地的展示类APP,所以数据采用本地存储的方式

开始把需要的数据导入,以后对数据的增添改查就在本地操作

设计阶段

设计存取过程

因为有很多类型(英雄,铭文等),也有很多属性(名称,图标,定位等),使用文件的话解析会比较麻烦,所以选用数据库存储

而且考虑到移动端的性能问题,所以使用轻量数据库SQLite

启动的时候把数据从数据库中读取到内存中显示在控件里

如果进行了修改也会同步写进数据库中

编程阶段

实现存取过程

实现一个HeroSQLiteHelper,继承自SQLiteOpenHelper,这是AndroidSQLite进行封装的一个工具类

重写里面的onCreateonUpgrade等方法,并且封装自定义的增添改查方法,如addHerogetAllHeroes等方法。

涉及到页面的跳转的时候,只在其中一个页面有SQLiteHelper对象,其它页面的操作在内存中,最后返回主页面再修改数据库(所以要保证进行操作之后都会返回主页面)

测试阶段

符合性测试

对各个类别的数据进行添加,修改,删除,查询,判断是否

  • 数据不正确
  • 数据不完整
  • 类型不一致
  • 无法查询

安装阶段

集成期间的存取控制

判断英雄的数据库中的属性“推荐装备”的数据有没有正确映射装备的数据库

对安卓不同机型不同系统版本的正确适配

维护阶段

保存安全级别

能够正确处理

  • db文件丢失
  • db文件被其他线程访问
  • 数据的加密
  • 数据库的自动备份与恢复
  • 数据库的日志保存

参考资料

蔡老师课件

感谢资助辣条吃!