接口测试和spring的那点事
本文中主要说说spring跟接口测试的关联,因为本人用的接口测试框架跟spring有很大关联(可以理解为就是spring的框架,但是也融入了支付宝这边内容)所以聊下他的框架是什么样的。。
在环境准备这块因为用到了testNG和EclEmma(查看覆盖率的)及maven所以先在Eclipse中安装这些插件
大致框架介绍:
1、接口测试一般单独分为一个bundle,即命名 xxx-tester;
2、bundle下测试基类:每个系统都有一个接口测试的Base类,供每个接口在接口测试时调用,命名xxxTestBase.java(基类主要是加载该系统的jar包和一些xml文件,如: list.add("ebppcore-remote-client.xml");
list.add("ebppcore-itest-actions.xml");想必spring框架中也有类似的xml文件,下文会讲改xml文件的作用;
3、ats-config.properties链接数据库配置
4、sofa-log4j.properties日志级别输出
针对一个接口进行编码:
1、生成一个xxxxNormalTest.java和一个xxxNormal.csvwen文件,Normal文件继承基类,Normal内容:
@TCList(caseid = { "TC0001N01" }, casedesc = {}
@Test(dataProvider = "CsvDataProvider", description = "") CSV文件的驱动内容
//初始化测试用例执行上下文
FlowContext contextt = new FlowContext();
BizDataManagerRequest bizDataManagerRequest =BizreconUtil.checkDataCount(bizType, orgCode, subOrgCode, bizStartDate, bizEndDate, context);
contextt.setOutput(BizreconServiceTestKeys.BIZDATA_MANGER,
bizDataManagerRequest); //被测试对象构造以及入参
//执行测试用例
flowTestEngine.executeTest(contextt);
2、norm类中涉及了xxxServiceTestKeys.java和OweUtil.java,xxxServiceTestKeys.java根据自己需要的参数在文件中进行配置,OweUtil.java封装实现类
3、xxxAction.java作用:a、调用facade方法,b,构造方法中参数,c,返回结果给norm类
4、xxx-itest-actions.xml中定义上文的Action文件名,供下文引用
5、src/test/resources/testcase/xxx.XML介绍内容如下
<?xml version="1.0" encoding="GBK"?>
<testcases desc="testAction正常场景测试用例">
<testcase name="createBill" desc="创建订单正常场景测试">
<processor step="beforetest" desc="测试数据准备">
</processor>
<processor step="innerprocess" desc="业务服务调用">
<action flowseq="1" ref="createEbppBillAction" desc="测试组件1"/>
<action flowseq="2" ref="checkCreateBillAction" desc="测试组件2"/>
</processor>
<processor step="aftertest" desc="测试数据清理">
<action flowseq="1" ref="clearEbppBillAction" desc="清除数据"/>
</processor>
</testcase>
</testcases>
xml中引用了上文的Action
6、CSV中的文件和norm的java类参数一致;
7、在Normal类中通过testNG执行接口测试内容
8、通过EclEmma监控该脚本的覆盖率
分享到:
相关推荐
总结起来,接口测试对于保证Spring MVC应用的质量和稳定性至关重要。通过使用HTTPClient这样的客户端库,以及Postman这样的专业测试工具,开发者可以更便捷地进行接口测试,确保每个接口都能正常工作并满足性能要求...
完整spring boot 接口自动化测试工具开发...实现大部分接口测试场景;安装依赖、配置mysql数据,附带创建表sql脚本; sprint boot + mybatis + mysql。 实现多线程执行,支持数据缓存; 如有疑问,添加:“zhengge923”
博客链接 "<https://cndubian.iteye.com/blog/2146721>" 可能提供了更详细的实现步骤和示例代码,对于想要学习Spring MVC、Ehcache集成和接口测试的开发者来说是个宝贵的资源。 在"msm_kpi"这个压缩包文件中,可能...
### 普通JavaWeb项目调用Spring Cloud接口详解 #### 前言 在现代软件开发中,微服务架构已成为构建大型复杂系统的主流选择之一。Spring Boot 和 Spring Cloud 作为构建微服务的重要工具,其易用性和强大的功能受到...
### 接口测试白皮书知识点详述 #### 1. 接口测试的背景 ##### 1.1 什么是接口测试 接口测试是针对软件系统中不同组件之间交互进行的一种测试方法。它关注于检查数据如何在这些组件之间交换、传递以及控制管理的...
契约测试是一种接口测试方法,它关注的是服务间的交互,而不是服务的内部实现。通过定义双方之间的合同,服务消费者和提供者都可以独立地进行测试,确保在实际运行时能够正确交互。 2. **Spring Cloud Contract的...
这个压缩包提供的"spring扩展点测试示例代码"是一个实例,帮助我们理解如何在实践中利用Spring的扩展点进行自定义功能的实现。 首先,Spring的核心设计理念之一就是“依赖注入”(Dependency Injection,DI),它...
6. **CXF_Spring中的示例**:在提供的压缩包文件"CXF_Spring"中,可能包含了示例代码、配置文件以及相关文档,用于演示如何整合CXF和Spring进行SOAP接口开发。通过研究这些示例,开发者可以更好地理解和实践上述知识...
本文来自程序猿,本文主要介绍了SpringCloud微服务下服务接口调试及管理,什么样方式可以让微服务的接口管理变得更加容易些,希望对您的学习有所帮助。我们知道在微服务架构下,软件系统会被拆分成很多个独立运行的...
在Spring框架中,测试是确保代码质量和正确性的重要环节。"Spring相关测试1全部"这一主题涵盖了许多核心概念,这些都是理解和高效使用Spring框架的关键。以下是对这些知识点的详细阐述: 1. **注入属性值**:Spring...
这个“spring 的简单小测试”很可能是为了帮助开发者理解和实践Spring的基本概念和功能。 首先,Spring的核心特性之一是依赖注入(Dependency Injection,简称DI)。依赖注入允许对象之间的依赖关系被外部容器管理...
在测试方面,Spring Boot支持集成JUnit和Mockito等工具,方便进行单元测试和集成测试,确保接口的正确性。此外,通过Spring Boot的Actuator模块,可以实现健康检查、指标监控、审计日志等功能,提升系统的运维能力。...
4. **测试和调试**:确保编写了单元测试来验证Web Service接口的功能。你还可以使用工具(如SoapUI)进行功能测试和性能测试。 5. **注意兼容性**:根据描述,本教程适用于JDK 1.6或更高版本。请确保你的开发环境和...
总的来说,通过深入研究这样的Java项目源码,我们可以学习如何在Spring框架下组织和管理项目,如何进行接口测试,以及如何利用现代开发工具提高效率。这对于提升个人的Java编程技能和理解企业级项目开发流程具有重要...
在"SpringCloud微服务接口查询Demo"中,我们主要探讨的是如何利用SpringCloud来实现微服务之间的接口查询和交互,以便更好地理解和监控服务的运行状态。 1. **服务注册与发现**: SpringCloud的核心组件之一是...
这个集成演示项目旨在帮助开发者快速理解和实现基于Spring Boot的Activiti工作流应用,同时包含了单元测试以确保代码质量。 **Spring Boot** Spring Boot是Spring框架的扩展,它简化了创建独立、生产级别的基于...
在构建一个基于Springboot+Mybatis的接口自动化测试框架时,我们需要深入了解这两个核心技术和接口测试的基本原理。Springboot以其简洁的配置和快速的开发能力,成为现代Java Web应用的首选框架,而Mybatis则提供了...
通过查阅文档中的类、接口和方法,开发者可以迅速掌握Spring框架的使用,提升开发效率。由于作者承诺下载人数超过100人后会修订并发布新版本,这表明该文档将随着Spring框架的发展而不断更新,始终保持最新和最全面...