怎样保证测试的质量
1.不同的测试类型的结合,功能,性能,兼容性等,增加测试覆盖面,确保测试质量。
2.熟悉测试需求,测试目标,理解需求,设计测试用例。
3.用例的质量,对被测对象深入分析,功能进行细分,需求覆盖所有测试点,补充异常的测试点,复杂模块进行评审,提高测试点的覆盖面和测试用例的质量。
4.执行的质量,随时跟进测试进度,注意各类环境,各模块之间的交叉、关联,发现潜在问题。
5.缺陷管理,记录bug,跟踪管理缺陷,对遗留缺陷进行分析。
6.版本控制,建立主干分支,版本有问题可以随时恢复。
7.测试评估,对结果进行分析,讨论上线的风险,制定发生问题的解决方案。
一.深入了解需求,根据需求制定测试策略
1.测试范围和计划相比的偏差。
制定测试后,测试执行的进度情况,适当调整测试节奏,保证项目进度.
2.本版本的测试目标。
和产品沟通,了解产品具体实现的目标,并根据测试目标制定测试计划,编写测试用例.
3.需要重点关注的内容。
和产品沟通,确定重点功能,对比较重要的功能制定对应的测试场景,并重点测试.
4.测试用例的选择。
用最少的测试用例,覆盖最广的测试功能点.
5.测试执行顺序。
根据开发交付的可测试产品,制定好测试执行的顺序.
6.接收测试策略。
开发提测后,应该有对应的冒烟测试,如果提测功能没有实现,或者已有功能失效,要打回重新编码.
7.回归测试策略。
建立有效率的回归测试策略,使用适当的自动化测试框架,有效提高测试效率.
8.探索测试策略。
根据产品需求,进行探索性测试,会发现仅执行测试用例更多的bug.
9.自动化测试策略。
把功能界面变动比较小的产品,建立自动化测试框架,包括UI自动化和接口自动化.
二.跟踪测试缺陷,把握产品版本
1.使用缺陷管理工具,跟踪缺陷
使用缺陷管理工具,比如bugfree/禅道等,记录bug,跟踪缺陷,对遗留缺陷进行分析.
2.做好代码的版本控制
代码都有版本管理工具,比如svn/git等,应该把开发环境,测试环境,生产环境分别建立分支。只有把测试通过的代码合并到主线(master),主线上的代码才可以发布到生产环境.
这里最好引入持续集成工具,比如jenkins,如果发布到生产环境的代码出现问题,可以及时回滚到前一版本,保证线上系统正常运行.
三.测试分层
1.代码层
主要是进行白盒测试,对代码进行review,审核.
2.接口层
由于UI层变化比较快,对接口有效进行测试,可以大大提升测试效率.如果短时间不能建立自动化测试框架,可以先使用接口测试工具,进行主要接口的测试.
3.UI层
对于变动比较小,业务流程基本不变动的系统,可以引入UI自动化,进行回归测试和验收测试.
四.压力测试和安全性测试
1.压力测试
选取系统常用的场景,预测并发数量,并模拟高并发测试,根据测试数据,发现系统缺陷.
2.安全测试
探索发现系统可能被黑客或者竞争对手利用的漏洞,测试隐藏风险.
五.质量评估
根据测试出来的问题,整理出文档,告知各个项目管理负责人,确定哪些缺陷必须解决,哪些bug可以下一个版块再解决,讨论上线的风险,制定发生问题的解决方案
SpringBoot+Nginx架构的主要组件
External 组件 -- Airflow
External Service -- T24
External 组件 -- 消息队列中间件 SolaceNotification(push,sms,email)
External 组件 -- Keycloak
External Service -- DMS(documents-srv)