Spring:测试Service类中方法

简介: Spring:测试Service类中方法

Maven坐标


<!-- JUNIT -->
<dependency>
   <groupId>junit</groupId>
   <artifactId>junit</artifactId>
   <version>4.11</version>
</dependency>
<!--test-->
<dependency>
   <groupId>org.springframework</groupId>
   <artifactId>spring-test</artifactId>
   <version>4.2.0</version>
</dependency>


业务代码

Spring配置类

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xmlns:aop="http://www.springframework.org/schema/aop"
       xmlns:context="http://www.springframework.org/schema/context"
       xmlns:tx="http://www.springframework.org/schema/tx"
       xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
            http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop.xsd
            http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd
            http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx.xsd"
       default-lazy-init="true">
    <!-- Activates scanning of @Autowired -->
    <context:annotation-config/>
    <!-- Activates scanning of @Service -->
    <context:component-scan base-package="com.fly.cloudpay.service"/>
</beans>


Service接口

package com.fly.cloudpay.service.user;
import com.fly.cloudpay.dao.entity.PayUserDO;
import java.util.Map;
/**
 * @Title: 缴费用户信息--Service
 * @ClassName: com.fly.cloudpay.service.user.PayUserService.java
 * @Description:
 *
 * @Copyright 2016-2018  - Powered By 研发中心
 * @author: 王延飞
 * @date:  2018-03-02 14:24
 * @version V1.0
 */
public interface PayUserService {
    /**
     * @Title: 新增用户信息
     * @methodName:  add
     * @param payUserDO
     * @return void
     * @Description:
     *
     * @author: FLY
     * @date:  2018-03-02 15:15
     */
    void add(PayUserDO payUserDO);
}


Service实现类

package com.newcapec.fly.service.user.impl;
import com.newcapec.fly.constant.ControllerConstant;
import com.newcapec.fly.dao.PayUserDao;
import com.newcapec.fly.dao.entity.PayUserDO;
import com.newcapec.fly.service.user.PayUserService;
import com.newcapec.util.map.MapBeanTransUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.beans.IntrospectionException;
import java.lang.reflect.InvocationTargetException;
import java.util.Date;
import java.util.Map;
/**
 * @version V1.0
 * @Title: 缴费用户信息--Service实现层
 * @ClassName: com.newcapec.fly.service.user.impl.PayUserServiceImpl.java
 * @Description:
 * @Copyright 2016-2018  - Powered By 研发中心
 * @author: FLY
 * @date: 2018-03-02 14:24
 */
@Service
public class PayUserServiceImpl implements PayUserService {
    private static final Logger log = LoggerFactory.getLogger(PayUserServiceImpl.class);
    @Autowired
    private PayUserDao payUserDao;
    /**
     * @param payUserDO
     * @return void
     * @Title: 新增缴费用户信息
     * @methodName: add
     * @Description:
     * @author: FLY
     * @date: 2018-03-02 15:15
     */
    @Override
    public void add(PayUserDO payUserDO) {
        log.info("【新增缴费用户信息】,接收参数:{}", payUserDO);
        payUserDao.save(payUserDO);
    }
}


Spring测试类

package service;
import com.fly.cloudpay.dao.PayUserDao;
import com.fly.cloudpay.dao.entity.PayUserDO;
import com.fly.cloudpay.service.user.PayUserService;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.test.context.ContextConfiguration;
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
/**
 * @Title:
 * @ClassName: service.ServiceTest.java
 * @Description:
 *
 * @Copyright 2016-2018  - Powered By 研发中心
 * @author: FLY
 * @date:  2018-03-01 11:35
 * @version V1.0
 */
@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(locations = {"classpath:spring/applicationContext-dao.xml",
        "classpath:spring/applicationContext-spring.xml"})
public class ServiceTest {
    @Autowired
    PayUserService payUserService;
    @Autowired
    private PayUserDao payUserDao;
    @Test
    public void payUserAddTest(){
        PayUserDO payUserDO = new PayUserDO();
        payUserDO.setPayUserIdNum("123456");
        payUserDO.setPayUserName("FLY");
        payUserDO.setBindTime(new java.util.Date());
        payUserService.add(payUserDO);
    }
}



目录
相关文章
|
8天前
|
Java
IDEA快捷测试方法可用性
IDEA快捷测试方法可用性
15 0
|
2月前
|
XML 存储 Java
Spring重要类解析
Spring重要类解析
21 0
|
6天前
|
测试技术 API Python
Appium控件交互策略:优化自动化测试效率的关键方法
该文介绍了如何使用Selenium与APP进行交互,包括点击、输入和状态判断等操作。例如,通过element.click()点击控件,element.send_keys()输入文本,以及element.is_displayed()检查元素是否可见。还展示了如何获取元素属性,如resource-id、text和class,并提供了Python代码示例来定位并操作APP元素,如滑动条的显示、可点击性检测及点击滑动条中心位置。在编写测试脚本时,应注意元素定位和状态验证以确保测试稳定性。
12 1
|
22天前
|
Java 测试技术
SpringBoot整合单元测试&&关于SpringBoot单元测试找不到Mapper和Service报java.lang.NullPointerException的错误
SpringBoot整合单元测试&&关于SpringBoot单元测试找不到Mapper和Service报java.lang.NullPointerException的错误
21 0
|
4天前
|
XML Java 数据格式
手写spring第七章-完成便捷实现bean对象初始化和销毁方法
手写spring第七章-完成便捷实现bean对象初始化和销毁方法
6 0
|
7天前
|
API 开发者
免费邮箱API发送邮件测试调试的方法和步骤
本文介绍了使用免费邮箱API如aoksend、Mailgun、SMTP2GO发送邮件的测试调试步骤:选择合适的API,获取访问密钥,配置邮件参数,编写测试代码,调试和测试,查看发送日志,以及优化改进邮件发送功能,确保其稳定运行。
|
8天前
|
XML 测试技术 数据库
深入理解自动化测试中的数据驱动方法
【4月更文挑战第23天】 在软件测试领域,为了提高测试效率和质量,自动化测试已成为不可或缺的实践。数据驱动测试(DDT)作为一种高效的自动化测试策略,它通过将测试逻辑与测试数据分离,允许测试人员以更灵活、可维护的方式设计用例。本文将探讨数据驱动方法的基本原理,实现方式以及在实际项目中的应用案例,旨在帮助读者深入理解并有效运用数据驱动方法来提升自动化测试的效率和质量。
|
21天前
|
自然语言处理 测试技术 持续交付
现代软件测试方法与挑战
传统软件测试方法在当前快速发展的软件开发环境下面临着诸多挑战,因此,现代软件测试方法的探索与应用显得尤为重要。本文将介绍几种现代软件测试方法,并探讨其在应对软件开发挑战方面的作用。
11 0
|
24天前
|
安全 测试技术
深入理解白盒测试:方法、工具与实践
【4月更文挑战第7天】 在软件开发的质量控制过程中,白盒测试是确保代码逻辑正确性的关键步骤。不同于黑盒测试关注于功能和系统的外部行为,白盒测试深入到程序内部,检验程序结构和内部逻辑的正确性。本文将探讨白盒测试的核心技术,包括控制流测试、数据流测试以及静态分析等方法,同时介绍当前流行的白盒测试工具,并讨论如何在实际项目中有效实施白盒测试。文章的目标是为软件测试工程师提供一份综合性指南,帮助他们更好地理解和应用白盒测试技术。
|
2月前
|
传感器 监控 算法
【软件设计师备考 专题 】模块测试的方法和实践
【软件设计师备考 专题 】模块测试的方法和实践
73 0