详解在SpringBoot中使用MongoDb做单元测试的代码

先评价: 功能倒是不错,但是总觉得耽误时间

先引入pom依赖

<dependency>
  <groupId>org.springframework.boot</groupId>
  <artifactId>spring-boot-starter-test</artifactId>
  <scope>test</scope>
 </dependency>

代码1

public class MongoUser implements Serializable{
 private static final long serialVersionUID = 1L;
 @Id
   private String id;
   private String name;
   private String age;

   public String getId() {
     return id;
   }

   public void setId(String id) {
     this.id = id;
   }

   public String getName() {
     return name;
   }

   public void setName(String name) {
     this.name = name;
   }

   public String getAge() {
     return age;
   }

   public void setAge(String age) {
     this.age = age;
   }

   @Override
   public boolean equals(Object o) {
     if (this == o) return true;
     if (o == null || getClass() != o.getClass()) return false;
     MongoUser user = (MongoUser) o;
     return Objects.equals(id, user.id) &&
         Objects.equals(name, user.name) &&
         Objects.equals(age, user.age);
   }

   @Override
   public int hashCode() {
     return Objects.hash(id, name, age);
   }
}

代码2

@RunWith(SpringRunner.class)
@SpringBootTest
@Transactional
public class ApplicationTests {

 @Autowired
 private RedisService redisService;

 @Autowired
 private UserDao userDao;

 @Autowired
 private JdbcTemplate jdbcTemplate;

 @Autowired
 private MongoTemplate mongoTemplate;

 @Test
  public void hello() {
    System.out.println("hello world");
    redisService.setObjectJSON("test", "1");
    System.out.println("使用了redisservice");
    User user = userDao.find("id=?", 1l).first();
    System.out.println("打印出了一个用户名"+user.userName);
    List<Map<String,Object>> queryForList = jdbcTemplate.queryForList("select id,user_name from c_user where id<2");
    for (Map<String, Object> map : queryForList) {
  Object object = map.get("id");
  System.out.println(object);
  Object object2 = map.get("user_name");
  System.out.println(object2);
 }
    MongoUser mongoUser2 = new MongoUser();
    mongoUser2.setId("1");
    mongoUser2.setName("小明");
 mongoTemplate.insert(mongoUser2);
    List<MongoUser> findAll = mongoTemplate.findAll(MongoUser.class);
    for (MongoUser mongoUser : findAll) {
  System.out.println("id="+mongoUser.getId());
  System.out.println("id="+mongoUser.getName());
 }
  }

 public static void main(String[] args) {
 HashMap<String,Object> hashMap = new HashMap<String, Object>();
 hashMap.put("a", 1);
 hashMap.put("b", 2);
 Set<String> keySet = hashMap.keySet();
 for (String string : keySet) {
  System.out.println(string);
  Object object = hashMap.get(string);
  System.out.println(object);
  System.out.println("================");
 }
 }

}

到此这篇关于详解在SpringBoot中使用MongoDb做单元测试的代码的文章就介绍到这了,更多相关SpringBoot MongoDb单元测试内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • 详解Spring Boot实战之单元测试

    本文介绍使用Spring测试框架提供的MockMvc对象,对Restful API进行单元测试 Spring测试框架提供MockMvc对象,可以在不需要客户端-服务端请求的情况下进行MVC测试,完全在服务端这边就可以执行Controller的请求,跟启动了测试服务器一样. 测试开始之前需要建立测试环境,setup方法被@Before修饰.通过MockMvcBuilders工具,使用WebApplicationContext对象作为参数,创建一个MockMvc对象. MockMvc对象提供一组工具

  • 详解SpringBoot之添加单元测试

    本文介绍了详解SpringBoot之添加单元测试,分享给大家,希望此文章对各位有所帮助 在SpringBoot里添加单元测试是非常简单的一件事,我们只需要添加SpringBoot单元测试的依赖jar,然后再添加两个注解就可搞定了. 首先我们来添加单元测试所需要的jar <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test<

  • springboot使用单元测试实战

    前言 springboot提供了 spirng-boot-starter-test 以供开发者使用单元测试,在引入 spring-boot-starter-test 依赖后: <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope>

  • 详解SpringBoot restful api的单元测试

    现在我们来利用Spring Boot来构建一个RestFul API,具体如下: 1.添加Springboot测试注解 @RunWith(SpringRunner.class) @SpringBootTest public class UserControllerTest { } 2.伪造mvc环境 // 注入Spring 工厂 @Autowired private WebApplicationContext wac; //伪造mvc环境 private MockMvc mockMvc; @Be

  • Spring Boot 2.X 快速集成单元测试解析

    一.实现原理 使用MockMvc发起请求,然后执行API中相应的代码,在执行的过程中使mock模拟底层数据的返回,最后结果验证. 二.常用注解介绍 @SpringBootTest是SpringBoot的一个用于测试的注解,通过SpringApplication在测试中创建ApplicationContext. @AutoConfigureMockMvc是用于自动配置MockMvc. @RunWith在JUnit中有很多个Runner,他们负责调用你的测试代码,每一个Runner都有各自的特殊功能

  • SpringBoot DBUnit 单元测试(小结)

    DBunit 是一种扩展于JUnit的数据库驱动测试框架,它使数据库在测试过程之间处于一种已知状态,如果一个测试用例对数据库造成了破坏性影响,它可以帮助避免造成后面的测试失败或者给出错误结果. DBunit通过维护真实数据库与数据集(IDataSet)之间的关系来发现与暴露测试过程中的问题.IDataSet 代表一个或多个表的数据.此处IDataSet可以自建,可以由数据库导出,并以多种方式体现,xml文件.XLS文件和数据库查询数据等. 基于DBUnit 的测试的主要接口是IDataSet,可

  • springboot单元测试两种方法实例详解

    这篇文章主要介绍了springboot单元测试两种方法实例详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 springboot的单元测试,这里介绍两种方式,一种是在测试类中添加注解:另一种是在代码中启动项目的main方法中继承接口(也可以写在其他方法中). 如 对查看数据库的连接池信息 进行单元测试 1. 在类上使用注解: @RunWith(SpringRunner.class) @SpringBootTest @RunWith(Sprin

  • 详解Spring Boot Junit单元测试

    Junit这种老技术,现在又拿出来说,不为别的,某种程度上来说,更是为了要说明它在项目中的重要性. 凭本人的感觉和经验来说,在项目中完全按标准都写Junit用例覆盖大部分业务代码的,应该不会超过一半. 刚好前段时间写了一些关于SpringBoot的帖子,正好现在把Junit再拿出来从几个方面再说一下,也算是给一些新手参考了. 那么先简单说一下为什么要写测试用例 1. 可以避免测试点的遗漏,为了更好的进行测试,可以提高测试效率 2. 可以自动测试,可以在项目打包前进行测试校验 3. 可以及时发现因

  • SpringBoot 单元测试JUnit的使用详解

    一.简介 JUnit是一款优秀的开源Java单元测试框架,也是目前使用率最高最流行的测试框架,开发工具Eclipse和IDEA对JUnit都有很好的支持,JUnit主要用于白盒测试和回归测试. 白盒测试:把测试对象看作一个打开的盒子,程序内部的逻辑结构和其他信息对测试人 员是公开的: 回归测试:软件或环境修复或更正后的再测试: 单元测试:最小粒度的测试,以测试某个功能或代码块.一般由程序员来做,因为它需要知道内部程序设计和编码的细节: 二.JUnit使用 1.pom.xml中添加JUnit依赖.

  • SpringBoot2种单元测试方法解析

    一 普通测试类 当有一个测试方法的时候,直接运行. 要在方法前后做事情,可以用before或者after. 假如有多个方法运行,则可以选择类进行运行. @RunWith(SpringRunner.class) @SpringBootTest public class TestApplicationTests { @Test public void testOne(){ System.out.println("test hello 1"); TestCase.assertEquals(1

随机推荐