我的
对API的测试
@RunWith( SpringRunner. class)
@SpringBootTest 封装的junit测试
Assert. assertEquals 断言
----------
@AutoConfigureMockMvc
MockMVC 测试Controller
打包的时候 跳过单元测试 -Dmaven。test.skip=true
API测试 controller 测试(/girls)
增加了@AutoConfigureMockMvc
API测试 controller 测试(/girls),使用的是MockMvc类
单元测试
测试Service
测试API
跳过测试打包
批量测试结果
java的枚举和C#不同,Java的模板类用的时候类型可以省略。
Service
在期待的值与实际测试值不同时会报错
开发完要自觉进行单元测试
@RunWith(SpringRunner.class) //底层是junit @SpringBootTest
@Autowired
//自动从springboot的bean中进行填充
@Test //测试类
对于controller层进行测试:
@AutoConfigureMockMvc
打包的时候跳过单元测试
mvn clean package -Dmaven.test.skip=true
@AutoConfigureMockMvc
1.对Service的Test
pom.xml引入junit
加注解:
@RunWith(SpringRunner.class)
@SpringBootTest
@Test
2.对Controller的Test
@RunWith(SpringRunner.class)
@SpringBootTest
@AutoConfigureMockMvc
@Test
@RunWith(SpringRunner.class) @SpringBootTest @AutoConfigureMockMvc class GirlControllerTest { @Autowired private MockMvc mvc; @Test public void girlList() throws Exception { mvc.perform(MockMvcRequestBuilders.get("/girls")) .andExpect(MockMvcResultMatchers.status().isOk()) .andExpect(MockMvcResultMatchers.content().string("abc")); } }
3.打包时跳过单元测试:
mvn clean package -Dmaven.test.skip=true
负责任的开发工程师都要进行单元测试
对Service的Test
加注解
@RunWith(SpringRunner.class)
@SpringBootTest
对Controller进行处理,要加上注解
@SpringBootTest
@AutoConfigureMockMvc
Maven在打包的时候会自动帮你执行Junit测试,打包时跳过测试方法的命令行如下
m'v'n clean package -Dmaven.test.skip=true
mvn clean package -Dmaven.test.skip=true
打包的时候跳过单元测试
对Controller测试
@RunWith(SpringRunner.class)
@SpringBootTest
@AutoConfigureMockMvc
http接口单元测试2
http接口单元测试1
单元测试注解
@AutoConfigureMockMvc用于注解API的测试
Controller测试示例
@RunWidth(类.class):表示要在测试环境里面跑
@SpringBootTest:启动Spring的工程
@AutoConfigureMeckMVC:模仿get请求和post进行测试
MockMvc mvc;
单元测试是一个工程师必备的技能.
Service 测试
@RunWith(SpringRunner.class) @SpringBootTest
API测试
@RunWith(SpringRunner.class) @SpringBootTest @AutoConfigureMockMvc
controller测试
打包跳过单元测试的方法:
mvn clean pacakge --Dmaven.test.skip=true
Q: 如果写了很多个文件和单元测试,是不是要每个方法都进行右键测试
A:不是,当我们对项目进行打包(mvn clean package)的时候就会对项目进行单元测试(会有日志打出来给我们)