1.首先在测试文件夹下新建一个测试基类BaseTest

BaseTest中的代码如下:

package wbl_ssm_blog.mapper;

import org.junit.Test;
import org.junit.runner.RunWith; import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.test.context.ContextConfiguration;
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
import org.springframework.test.context.web.WebAppConfiguration; // 加载测试运行基础环境 JUnit4
@RunWith(SpringJUnit4ClassRunner.class)
// 加载resources下面的所有源代码
@WebAppConfiguration("src/main/resouces")
// 加载mybatis所有的恶配置文件
@ContextConfiguration(locations={"classpath:mybatis/mybatis-config.xml",
"classpath:spring/spring-mybatis.xml"})
public class BaseTest{
protected Logger log = LoggerFactory.getLogger(getClass());
@Test
public void test(){
System.out.println("aaa");
}
}

然后再新建一个我们实际需要使用的测试类,这个测试类需要继承我们刚才新建的BaseTest。

package wbl_ssm_blog.mapper;

import org.apache.ibatis.io.Resources;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;
import org.junit.Before;
import org.junit.Test;
import org.springframework.beans.factory.annotation.Autowired;
import wbl_ssm_blog.entity.Article; import java.io.InputStream;
import java.util.ArrayList;
import java.util.Date;
import java.util.HashMap;
import java.util.List; import static org.junit.Assert.*; public class ArticleMapperTest extends BaseTest{ @Autowired
public ArticleMapper articleMapper ; @Test
public void findArticleBySome()
{
List<Article> articleList = articleMapper.findArticleBySome("的",10);
System.out.println(articleList.size());
for(Article article : articleList)
{
System.out.println(article);
}
} @Test
public void findArticleBySome01()
{
Article criteria = new Article();
criteria.setArticleTitle("操作");
criteria.setArticleViewCount(2);
List<Article> articleList = articleMapper.findArticleBySome01(criteria);
System.out.println(articleList.size());
for(Article article : articleList)
{
System.out.println(article);
}
} @Test
public void deleteById()
{
int returnResult = articleMapper.deleteById(36);
System.out.println(returnResult);
} @Test
public void insert()
{
Article article = new Article();
article.setArticleViewCount(10);
article.setArticleTitle("你好,这是测试文章的标题");
article.setArticleCommentCount(20);
article.setArticleContent("你好,这是测试文章的内容");
article.setArticleCreateTime(new Date());
article.setArticleUpdateTime(new Date());
article.setArticleIsComment(1);
article.setArticleLikeCount(20);
article.setArticleOrder(1);
article.setArticleStatus(1);
article.setArticleSummary("你好,这是测试文章的总结");
article.setArticleUserId(1); articleMapper.insert(article);
System.out.println(article.getArticleId());
} @Test
public void update()
{
Article article = new Article();
article.setArticleId(39);
article.setArticleTitle("你好,39号文章的标题被更新");
article.setArticleContent("你好,39号文章的内容被更新");
article.setArticleSummary("你好,39号文章的总结被更新"); articleMapper.update(article);
System.out.println(article);
} @Test
public void findAll()
{
HashMap<String,Object> cateria = new HashMap<String,Object>();
cateria.put("status",1);
cateria.put("userId",1);
// cateria.put("keywords","操作");
// cateria.put("categoryId",1);
cateria.put("tagId",1);
List<Article> articleList = articleMapper.findAll(cateria);
System.out.println();
// order by `article`.`article_order` DESC ,`article`.`article_id` DESC
} @Test
public void listAllNotWithContent()
{
List<Article> articleList = articleMapper.listAllNotWithContent();
System.out.println();
} @Test
public void countArticle()
{
int rows = articleMapper.countArticle(1);
System.out.println();
} @Test
public void countArticleComment()
{
int commentCount = articleMapper.countArticleComment();
System.out.println();
} @Test
public void countArticleView()
{
int viewCount = articleMapper.countArticleView();
System.out.println();
} @Test
public void getArticleByStatusAndId()
{
Article article = articleMapper.getArticleByStatusAndId(1,1);
System.out.println();
} @Test
public void pageArtilce()
{
List<Article> articleList = articleMapper.pageArtilce(1,5,10);
System.out.println();
} @Test
public void deleteBatch()
{
List<Integer> ids = new ArrayList<Integer>();
ids.add(40);
ids.add(41);
articleMapper.deleteBatch(ids);
} @Test
public void listArticleByViewCount()
{
List<Article> articleList = articleMapper.listArticleByViewCount(3);
System.out.println();
} @Test
public void getAfterArticle()
{
Article article = articleMapper.getAfterArticle(1);
System.out.println();
} @Test
public void getPreArticle()
{
Article article = articleMapper.getPreArticle(2);
System.out.println();
} @Test
public void listRadomArticle()
{
List<Article> articleList = articleMapper.listRadomArticle(3);
System.out.println();
} @Test
public void listArticleByCommentCount()
{
List<Article> articleList = articleMapper.listArticleByCommentCount(3);
System.out.println();
} @Test
public void updateCommentCount()
{
articleMapper.updateCommentCount(3);
System.out.println();
} @Test
public void getLastUpdateArticle()
{
Article article = articleMapper.getLastUpdateArticle();
System.out.println();
} @Test
public void countArticleByUser()
{
int articleCount = articleMapper.countArticleByUser(1);
System.out.println();
} @Test
public void findArticleByCategoryId()
{
List<Article> articleList = articleMapper.findArticleByCategoryId(1,3);
System.out.println();
} @Test
public void findArticleByCategoryIds()
{
List<Integer> ids = new ArrayList<>();
ids.add(1);
ids.add(2);
ids.add(3);
List<Article> articleList = articleMapper.findArticleByCategoryIds(ids,5);
System.out.println();
} @Test
public void listArticleByLimit()
{
List<Article> articleList = articleMapper.listArticleByLimit(3);
System.out.println();
}
}

然后就可以对mapper.xml文件中的方法进行测试了。

集成了SSM框架的系统怎么做测试?的更多相关文章

  1. 002杰信-陌生的maven-web项目整改成我们熟悉的Web架构;classpath的含义;ssm框架的整合;junit测试

    这篇博客的资源来源于创智播客,先在此申明.这篇博客的出发点是jk项目,传智的做法是Maven的web模板生成的,但是这样子的结构目录与我们熟知的Web项目的结构目录相差很大,所以要按照我们熟知的项目结 ...

  2. SSM框架学习之高并发秒杀业务--笔记2-- DAO层

    上节中利用Maven创建了项目,并导入了所有的依赖,这节来进行DAO层的设计与开发 第一步,创建数据库和表. 首先分析业务,这个SSM匡济整合案例是做一个商品的秒杀系统,要存储的有:1.待秒杀的商品的 ...

  3. SSM框架整合模板

    SSM框架整合--MAVEN依赖 spring方面(包含了springmvc): spring-webmvc:spring与mvc的整合依赖,主要包括spring的核心包和springmvc需要的包 ...

  4. SSM框架开发web项目系列(五) Spring集成MyBatis

    前言 在前面的MyBatis部分内容中,我们已经可以独立的基于MyBatis构建一个数据库访问层应用,但是在实际的项目开发中,我们的程序不会这么简单,层次也更加复杂,除了这里说到的持久层,还有业务逻辑 ...

  5. Spring MVC 学习总结(十一)——IDEA+Maven+多模块实现SSM框架集成

    一.SSM概要 与SSH(Struts/Spring/Hibernate/)一样,Spring+SpringMVC+MyBatis也有一个简称SSM,Spring实现业务对象管理,Spring MVC ...

  6. JAVAEE——宜立方商城01:电商行业的背景、商城系统架构、后台工程搭建、SSM框架整合

    1. 学习计划 第一天: 1.电商行业的背景. 2.宜立方商城的系统架构 a) 功能介绍 b) 架构讲解 3.工程搭建-后台工程 a) 使用maven搭建工程 b) 使用maven的tomcat插件启 ...

  7. 浅谈IDEA搭建SSM框架的集成

    前言 学习完MyBatis,Spring,SpringMVC之后,我们需要做的就是将这三者联系起来,Spring实现业务对象管理,Spring MVC负责请求的转发和视图管理, MyBatis作为数据 ...

  8. 浅谈IDEA集成SSM框架(SpringMVC+Spring+MyBatis)

    前言 学习完MyBatis,Spring,SpringMVC之后,我们需要做的就是将这三者联系起来,Spring实现业务对象管理,Spring MVC负责请求的转发和视图管理, MyBatis作为数据 ...

  9. 【SSM框架】Spring + Springmvc + Mybatis 基本框架搭建集成教程

    本文将讲解SSM框架的基本搭建集成,并有一个简单demo案例 说明:1.本文暂未使用maven集成,jar包需要手动导入. 2.本文为基础教程,大神切勿见笑. 3.如果对您学习有帮助,欢迎各种转载,注 ...

随机推荐

  1. Commander基本使用

    随着NodeJs的不断发展,对于前端来说要做的东西也就更多,Vue脚手架React脚手架等等等一系列的东西都脱颖而出,进入到人们的视野当中,对于这些脚手架工具来讲也只是停留在应用阶段,从来没有想过脚手 ...

  2. 正则 \num 如:\1, \2 匹配的结果

    \num 匹配 num,其中 num 是一个正整数.对所获取的匹配的引用.例如,'(.)\1' 匹配两个连续的相同字符. 例子: 正则:/(a)(b)\1/.此表达式的意思大概是对第一个()匹配结果的 ...

  3. JS基础 浏览器弹出的三种提示框(提示信息框、确认框、输入文本框)

    浏览器的三种提示框 alert() //提示信息框 confirm() //提示确认框 prompt() //提示输入文本框 1.alert( ) 提示信息框 <script> alert ...

  4. MySQL MHA--故障切换模式(GTID模式和非GTID模式)

    GTID和非GTID故障切换模式选择 MySQL 5.6版本引入GTID来解决主从切换时BINLOG位置点难定位的问题,MHA从0.56版本开始支持基于GTID的复制,在切换时可以采用GTID模式和非 ...

  5. Windows环境下的MYSQL5.7配置文件定位

    1.MYSQL安装目录 select @@basedir; 2.MYSQL数据文件目录 select @@datadir; 3.相应地,配置文件在数据文件上一级目录中 4.停止MYSQL服务 net ...

  6. OAuth 2.0 的一个简单解释

    OAuth 2.0 是目前最流行的授权机制,用来授权第三方应用,获取用户数据. 这个标准比较抽象,使用了很多术语,初学者不容易理解.其实说起来并不复杂,下面我就通过一个简单的类比,帮助大家轻松理解,O ...

  7. 【Spring Boot】Spring Boot之自定义配置参数绑定到Java Bean

    一.@Value方式 1.我的配置文件:application-dev.yml # 自定义项目配置 startproject: pro1: pro2: pro3: pro4: lists: - ' - ...

  8. vue 使用moment

    1.下载 cnpm i moment --save 2.main.js  挂载 import moment from 'moment'//导入文件 Vue.prototype.$moment = mo ...

  9. C# CustomValidator

    当各种验证控件的验证类型都不能满足需要时可以使用CustomValidator验证控件,通过自定义验证函数来验证.直接看例子 <%@ Page Language="C#" A ...

  10. Thinkphp下实现D函数用于实例化Model格式

    * D函数用于实例化Model 格式 项目://分组/模块 * @param string $name Model资源地址 * @param string $layer 业务层名称 * @return ...