smsService接口(dubbo接口)

package com.lakala.crosspay.jmeter.client.integration;

import com.lakala.crosspay.sms.api.SmsService;
import com.lakala.crosspay.sms.api.dto.SmsDTO;
import com.lakala.sh.framework.core.error.Result;
import com.lakala.sh.framework.core.utils.DateUtil;
import org.apache.commons.lang3.RandomStringUtils;
import org.apache.jmeter.protocol.java.sampler.AbstractJavaSamplerClient;
import org.apache.jmeter.protocol.java.sampler.JavaSamplerContext;
import org.apache.jmeter.samplers.SampleResult;

import org.apache.jmeter.config.Arguments;

import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;

import java.util.Date;

/**
 * SmsServiceSampleClient
 *
 * @author makarov
 * @desc
 * @date 2018/8/24
 */
public class SmsServiceSampleClient extends AbstractJavaSamplerClient {

    private ApplicationContext applicationContext;

    private long startTimestamp;

    private long endTimestamp;

    @Override

    public Arguments getDefaultParameters() {
        Arguments args = new Arguments();
        args.addArgument("Sid", "");
        args.addArgument("mobile","");
        args.addArgument("templateNo","");

        return args;
    }
    public void setupTest(JavaSamplerContext context) {
        applicationContext = new ClassPathXmlApplicationContext("classpath:remote-consumer.xml");
    }

    public SampleResult runTest(JavaSamplerContext javaSamplerContext) {
        SmsService smsService = (SmsService) applicationContext.getBean("smsService");
        getNewLogger().info("smsService:{}", smsService);
        SampleResult sampleResult = new SampleResult();
        sampleResult.sampleStart();
        try {
            startTimestamp = System.currentTimeMillis();
            SmsDTO smsDTO = new SmsDTO();
            smsDTO.setSid(RandomStringUtils.randomAlphanumeric(32));
            smsDTO.setMessage("{\"BATCH_NO\":\"" + DateUtil.format(new Date(), "yyyyMMdd") + RandomStringUtils.randomNumeric(6) + "\",\"CUSTOMER_NO\":\"CUST00000001\"}");
            smsDTO.setMobile("18516235811");
            smsDTO.setTemplateNo("481869683453067264");
            smsDTO.setType("01");
            Result<SmsDTO> result = smsService.sendSms(smsDTO);
            if (result.isSuccess()) {
                sampleResult.setSuccessful(true);
            } else {
                sampleResult.setSuccessful(false);
            }
        } catch (Exception e) {
            sampleResult.setSuccessful(false);
            getNewLogger().error("调用服务接口异常:", e);
        }
        sampleResult.sampleEnd();


        return sampleResult;
    }

    @Override
    public void teardownTest(JavaSamplerContext context) {
        endTimestamp = System.currentTimeMillis();
        getNewLogger().info("调用接口耗时:{}ms", endTimestamp - startTimestamp);
    }
}

猜你喜欢

转载自www.cnblogs.com/frankruby/p/9948056.html