当前位置: 首页 > wzjs >正文

保洁网站模板网络推广理实一体化软件

保洁网站模板,网络推广理实一体化软件,服装公司名字大全,创业小项目一、前言知识 1.开发过程 需求分析->设计->开发->测试->上线 2.测试种类 单元测试(测试模块编码)、黑盒测试(测试功能是否满足需求)、白盒测试(测试程序内部的逻辑结构)、回归测试(提出的缺陷进行二次验证)、集成测试(测试主要的业务功能及模块间的整合性)、系…

一、前言知识

1.开发过程

需求分析->设计->开发->测试->上线

2.测试种类

单元测试(测试模块编码)、黑盒测试(测试功能是否满足需求)、白盒测试(测试程序内部的逻辑结构)、回归测试(提出的缺陷进行二次验证)、集成测试(测试主要的业务功能及模块间的整合性)、系统测试(测试整个产品系统)

二、单元测试的使用

1.引入相关依赖

<!-- 单元测试的依赖--><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-test</artifactId><scope>test</scope><exclusions><exclusion><groupId>org.junit.vintage</groupId><artifactId>junit-vintage-engine</artifactId></exclusion></exclusions></dependency><dependency><groupId>junit</groupId><artifactId>junit</artifactId><version>4.12</version><scope>test</scope></dependency>

2.编写单元测试方法

断言:判断程序结果是否符合预期 TestCase.assertXXX

package net.xdclass.demoproject;import junit.framework.TestCase;
import net.xdclass.demoproject.domain.Video;
import net.xdclass.demoproject.service.VideoService;
import org.junit.After;
import org.junit.Assert;
import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.autoconfigure.web.servlet.AutoConfigureMockMvc;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.test.context.junit4.SpringRunner;
import org.springframework.test.web.servlet.MockMvc;
import org.springframework.test.web.servlet.MvcResult;
import org.springframework.test.web.servlet.request.MockMvcRequestBuilders;
import org.springframework.test.web.servlet.result.MockMvcResultMatchers;import java.nio.charset.Charset;
import java.util.List;//1.配置
@RunWith(SpringRunner.class)  //底层用junit  SpringJUnit4ClassRunner
@SpringBootTest(classes={DemoProjectApplication.class})//启动整个springboot工程
@AutoConfigureMockMvc
public class VideoTest {@Autowired//会自动将VideoService对象注入到VideoTest对象中,相当于new VideoService()private VideoService videoService;//2.常用注解的使用@Before//在测试用例执行前执行public void testOne(){System.out.println("这个是测试 before");}@Test//测试用例public void testVideoList(){List<Video> videoList = videoService.listVideo();//判断videoList的大小是否大于0,如果大于0,则测试通过,如果小于0,则测试失败TestCase.assertTrue(videoList.size()>0);}@After//在测试用例执行后执行public void testThree(){System.out.println("这个是测试 after");}}

三、单元测试的应用

1.测试controller层登录方法

UserTest

package net.xdclass.demoproject;import junit.framework.TestCase;
import net.xdclass.demoproject.controller.UserController;
import net.xdclass.demoproject.domain.User;
import net.xdclass.demoproject.utils.JsonData;
import org.junit.Assert;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.test.context.junit4.SpringRunner;@RunWith(SpringRunner.class)  //底层用junit  SpringJUnit4ClassRunner
@SpringBootTest(classes={DemoProjectApplication.class})//启动整个springboot工程
public class UserTest {@Autowiredprivate UserController userController;@Testpublic void loginTest(){//模拟前端传递过来的参数User user = new User();user.setUsername("jack");user.setPwd("1234");//调用controller的login方法JsonData jsonData  = userController.login(user);//打印返回的json数据System.out.println(jsonData.toString());//断言TestCase.assertEquals(0,jsonData.getCode());}
}

2.测试service层视频列表

VideoTest

package net.xdclass.demoproject;import junit.framework.TestCase;
import net.xdclass.demoproject.domain.Video;
import net.xdclass.demoproject.service.VideoService;
import org.junit.After;
import org.junit.Assert;
import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.autoconfigure.web.servlet.AutoConfigureMockMvc;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.test.context.junit4.SpringRunner;
import org.springframework.test.web.servlet.MockMvc;
import org.springframework.test.web.servlet.MvcResult;
import org.springframework.test.web.servlet.request.MockMvcRequestBuilders;
import org.springframework.test.web.servlet.result.MockMvcResultMatchers;import java.nio.charset.Charset;
import java.util.List;@RunWith(SpringRunner.class)  //底层用junit  SpringJUnit4ClassRunner
@SpringBootTest(classes={DemoProjectApplication.class})//启动整个springboot工程
public class VideoTest {@Autowired//会自动将VideoService对象注入到VideoTest对象中,相当于new VideoService()private VideoService videoService;@Test//测试用例public void testVideoList(){List<Video> videoList = videoService.listVideo();//判断videoList的大小是否大于0,如果大于0,则测试通过,如果小于0,则测试失败TestCase.assertTrue(videoList.size()>0);}}

3.测试对外提供的接口

 VideoTest

package net.xdclass.demoproject;import junit.framework.TestCase;
import net.xdclass.demoproject.domain.Video;
import net.xdclass.demoproject.service.VideoService;
import org.junit.After;
import org.junit.Assert;
import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.autoconfigure.web.servlet.AutoConfigureMockMvc;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.test.context.junit4.SpringRunner;
import org.springframework.test.web.servlet.MockMvc;
import org.springframework.test.web.servlet.MvcResult;
import org.springframework.test.web.servlet.request.MockMvcRequestBuilders;
import org.springframework.test.web.servlet.result.MockMvcResultMatchers;import java.nio.charset.Charset;
import java.util.List;@RunWith(SpringRunner.class)  //底层用junit  SpringJUnit4ClassRunner
@SpringBootTest(classes={DemoProjectApplication.class})//启动整个springboot工程
@AutoConfigureMockMvc//自动注入MockMvc对象,用于模拟请求
public class VideoTest {@Autowired//会自动将VideoService对象注入到VideoTest对象中,相当于new VideoService()private VideoService videoService;@Autowiredprivate MockMvc mockMvc;//模拟请求@Test//测试用例public void testVideoListApi()throws Exception{//模拟请求:会返回一个MvcResult对象,里面包含了响应的状态码,响应的内容MvcResult mvcResult =  mockMvc.perform(MockMvcRequestBuilders.get("/api/v1/pub/video/list"))//访问接口的地址.andExpect(MockMvcResultMatchers.status().isOk()).andReturn();int status = mvcResult.getResponse().getStatus();//获取响应的状态码System.out.println(status);// 使用下面这个,增加编码说明,就不会乱码打印String result = mvcResult.getResponse().getContentAsString(Charset.forName("utf-8"));System.out.println(result);}
}

四、小结 

          单元测试的实质就是通过加入测试工具依赖,然后使用注释和断言来配合验证不同取值下功能模块的输出结果与预期结果是否一致。

 

http://www.dtcms.com/wzjs/22064.html

相关文章:

  • 安宁网站建设移动网站如何优化排名
  • 企业网站建设 新天地网络网络营销推广渠道有哪些
  • 钓鱼网站制作的报告做灰色词seo靠谱
  • 建设网站jw100大型网站建设平台
  • 关于做网站的外语文献书名企点官网
  • 合肥市城乡和建设网站商丘网络推广外包
  • 网上做视频赚钱的网站有哪些如何做网址
  • 南京做微网站seo的目的是什么
  • 免费注册域名的方法seo上排名
  • 汉中网站建设费用短视频培训学校
  • 哪个网站可以接针织衫做单腾讯广点通
  • wap购物网站源码百度流量统计
  • 做恋足的视频网站重庆可靠的关键词优化研发
  • 宁波网站推广运营搜索引擎优化技术
  • pc网站做app最新时事热点
  • 中国工程建设网站网站制作价格
  • 发表文章静态网页模板赣州seo顾问
  • 电子政务与网站建设 总结站内seo是什么意思
  • b2b b2c c2c o2o特点seo推广编辑
  • 网站有了备案号之后能做什么推广网站要注意什么
  • 如果让你建设网站之前你会想什么成品网站源码的优化技巧
  • 成都高新区网站建设百度网站首页网址
  • java大型网站开发做优化的网站
  • 高新快速建设网站找哪家电商运营多少钱一个月
  • 云科技网站建设烟台seo关键词排名
  • 建设公司网站模版知名的建站公司
  • wordpress用户中心UC云南网络推广seo代理公司
  • wordpress关停网站进行优化
  • 最专业企业营销型网站建设百度seo排名优化如何
  • 昆明网站推广咨询平台东莞seo网站排名优化公司