自动化功能测试和接口测试工具整理


自动化功能测试和接口测试工具整理

文章插图
 
【自动化功能测试和接口测试工具整理】对于自动化测试 , 原来谈这方面的内容比较少 , 但是现在我们做DevOps支撑平台的时候 , 在整个持续集成和交付的过程中 , 有一个重要的内容就是自动化测试 。自动化测试的覆盖面相当大 , 其中既包括了CS , BS和移动App的自动化测试分类;也包括了单元测试 , 接口自动化测试和UI自动化测试的分类 。
DevOps成熟度中测试管理概述
自动化功能测试和接口测试工具整理

文章插图
 
测试管理是一个过程 , 通过该过程 , 所有和测试相关的方法 , 流程 , 人员都被定义 。在产品投入到生产环境运行之前 , 通过测试过程验证产品的需求 , 尽可能地发现软件中的缺陷 , 从而提高软件产品的质量 。测试管理分为测试分层策略 , 代码质量管理和自动化测试三个维度进行表达 。
测试分层策略
自动化功能测试和接口测试工具整理

文章插图
 
先谈下有哪些测试分类的方法 , 在持续集成里面我们当然更加会强调自动化测试 , 因此可以理解为人工测试和自动化测试两类;也可以离开为代码级测试 , 接口测试和前端测试分离 。也可以理解为功能测试和非功能测试两类 。
当然也可以看到 , 在微服务架构下 , 我们希望我们本身的开发也是分层的 , 即中台模块+服务接口+前台功能 , 即我们通常说的前后端分离 , 在这种前后端分离的情况下 , 可以更加方便我们进行测试分层设计和自动化测试 。只要是厚中台+薄前台模式 , 那么就越容易实现测试过程的自动化 。
越是持续集成自动化承担越高 , 那么自动化测试的比重就会越大 。
可以看到首先在架构设计上就要做到前后端分离 , 中台+服务+前台 , 这种分离后可以更加方便后面进行后端代码和接口的自动化测试工作 。
可以看到在测试分层策略里面的四到五级描述里面 , 我们看到TDD测试驱动开发方面的内容 , 比如先写测试代码再写实现代码或者两者同时在进行等 。其次 , 我们还是要将在整个devops最佳实践里面 , 不仅仅开发过程是持续增量进行的 , 对于测试过程本身也是持续增量进行的 , 两者必须匹配 。
或者理想状态应该是没有独立的测试周期 , 开发完成的阶段往往就是测试也配套完成的时间点 。
代码质量管理
是软件研发过程中保证代码质量的一种机制 , 即在代码变更后 , 需要对代码进行检查 , 分析 , 并给出结论和改进建议 , 对代码质量数据进行管理 , 并可以对代码质量进行追溯 。主要包括了质量规约 , 检查方式 , 反馈处理三方面的内容 。
代码质量管理即我们常说的代码静态检查 , 其基于我们制定的代码质量规约进行 。质量规约是指对软件代码质量的要求和规范 , 其中包含了编码规范 , 复杂度 , 覆盖率 , 以及安全漏洞 , 合规性要求等多个方面的内容 。其中检查方式即包括了我们传统手工方面的检查和CodeReview , 也包括了运行相关的自动化检查工具进行检查 。
自动化测试
自动化功能测试和接口测试工具整理

文章插图
 
自动化测试是把以人为驱动的测试行为转化为机器执行的一种过程 , 在预设条件下运行系统或应用程序 , 执行测试并评估测试结果 , 以达到节省资源和人力 , 提高测试效率和准确性 , 主要包括了自动化设计 , 自动化开发 , 自动化执行和自动化分析 。
对于自动化测试可以看到 , 对于服务接口和代码级的自动化测试相对来说比较容易实现 , 但是对于前端和UI级的自动化测试相对来说就比较困难些 。因此对于前期实践 , 我们也是建议先实现接口服务和代码级的自动化测试 , 再来靠前端UI的自动化测试 。
对于性能测试由于可以提前录制脚本 , 相对来说自动化测试实现起来比较容易 。不论是那种类型的自动化测试都可以看到 , 实际上可以看到如下几个关键点 。


推荐阅读