1.服务提供者:对外提供接口服务方;
2.服务消费者:调用远程服务方提供方;
3.服务注册中心:负责服务地址的注册与查找,服务提供者和消费者只在启动时与注册中心交互
4.服务监控中心:负责统计各服务调用次数,调用时间等。
服务提供者向注册中心注册其提供的服务,并汇报调用时间到监控中心;服务消费者向注册中心获取服务提供者地址列表,并根据负载算法直接调用提供者,同时汇报调用时间到监控中心。
简单说来,测试桩就是测试人员为了模拟客户端向接口服务端发送请求并接收返回信息,而编写的一段测试代码。对dubbo接口来说,就是模拟了消费者向提供者发送请求并接收返回信息。
如何在测试桩中调用接口服务
hessian接口的客户端,是通过服务方提供的url得到接口层的服务,并利用HessianProxyFactory类中的create方法创建了一个HessianProxy代理类的目标类,然后通过调用目标对象的对应方法,达到请求接口并获取相应返回信息的目的。其中具体如何实现,有兴趣的童鞋可以自行研究Hessian源码,我们就不做详述了,因为这与今天的话题无关。
而Dubbo接口的消费者,则是通过ClassPathXmlApplicationContext获得consumer.xml,从而引用提供者provider.xml中定义的Bean实例(对象),然后通过调用Bean对象的对应方法,达到请求接口并获取相应返回信息的目的。
接下来笔者将要带着大家进入实操阶段,学习利用LuckyFrame实现dubbo接口自动化。
1. 步骤总结
LuckyFrame平台实现Dubbo接口自动化的方式,与实现hessian接口自动化的方式是一样的
实际上,LuckyFrame平台实现Dubbo接口自动化的方式,与实现hessian接口自动化的方式,基本步骤一般无二。
我们先来复习下,LuckyFrame是如何实现hessian接口自动化的:
第一步:编写java接口测试桩;
第二步:基于上面所编写测试桩,创建测试用例;
第三步:创建测试计划,将测试用例添加到测试计划中;
第四步:给测试计划新建调度任务,并将测试驱动桩打成jar包导入到客户端;
第五步:执行调度任务。
2. 准备工作
在进入第一个步骤编写测试桩之前,我们需要知道接口提供者的一些信息
定义的接口
实现接口的类
provider.xml配置
3. 具体操作
这一部分具体介绍“步骤总结”中提到的编写测试桩,以及创建测试用例
编写dubbo接口测试桩
测试人员导入Dubbo框架需要的JAR包、以及服务提供方提供的接口和接口引用POJO的JAR包,然后编写测试代码,模拟接口消费者调用接口服务:
调用接口的测试代码
消费者的consumer.xml配置
创建dubbo测试用例
“包|定位路径”:输入测试桩的类路径,填写格式为“包路径.类名”。例如:包路径为com.consumer,类名为Dubbotest,则此处填写“com.consumer.Dubbotest”
“方法|操作”:输入测试桩的方法名,如上面例子中的testdubbo
“参数”:输入接口请求参数,如上面的例子,我们可以在这里输入“测试请求”
“步骤动作”:一般留空,也可以“n*Wait”的格式输入,表示执行此步骤后等待n秒
“预期结果”:输入我们期望的接口返回信息
接口用例创建好了,接下来的创建测试计划、调度任务以及执行调度任务,笔者在之前的文章中已经详细地介绍过,这里也就不再赘述。
以上就是极悦小编介绍的"Dubbo接口自动化学习",希望对大家有帮助,如有疑问,请在线咨询,有专业老师随时为您服务。
你适合学Java吗?4大专业测评方法
代码逻辑 吸收能力 技术学习能力 综合素质
先测评确定适合在学习