项目背景
作为长期专注于区块链底层平台设计和研发的专业团队,趣链科技对产品质量尤其重视。软件测试可以说是平台的质量保证的最关键一环。
底层的技术平台通常会提供对外交互的SDK,在测试环节中,可以通过SDK对系统进行集成测试,从而验证系统的各项功能是否能够正常使用。
Java SDK是软件开发中应用最广泛的一类,以在BitXMesh项目测试的实践为背景,介绍Java SDK集成测试的一些心得体会。
系统提供的功能主要有如下几点:
资源库中资源管理,包括文件/数据库/模型/Restful接口等
联邦计算
跨节点资源获取和展示
系统和用户管理
起初测试工具较为零散,新增模块或者功能之后往往趋向新建一个小的测试项目进行测试。但是随着功能和客户越来越多,质量保证的要求不能放松,构建一个完善的测试项目成为必然要求。
本文以该项目为例,详细介绍测试项目的分析、规划、实现、具体模块示例以及最终形成的测试报告。
测试项目分析
在测试项目中,最核心的一个环节就是测试用例设计,要想设计出优雅的测试用例,首先要对项目本身有充分的了解,根据对项目的功能和代码结构分析,将测试项目用例结构分为以下三类:
用户权限相关测试:验证不同类型的用户对模块操作的权限正常
异常数据测试:包括数据异常和功能逻辑异常
正常功能测试
单独的用例实现起来难度不大。
但要充分考虑到后续维护,特别是权限测试和异常测试两方面。
因此在设计测试用例的时候要秉承以下两点原则:
优化代码结构,减少代码冗余,增加可读性;
测试用例数据和测试代码分离,方便后面单独维护测试用例。
测试项目规划
<