博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
spring-boot-单元测试参数数
阅读量:5340 次
发布时间:2019-06-15

本文共 2429 字,大约阅读时间需要 8 分钟。

简单案例

@RunWith(Parameterized.class)public class ParameterTest {    // 2.声明变量存放预期值和测试数据    private String firstName;    private String lastName;    //3.声明一个返回值 为Collection的公共静态方法,并使用@Parameters进行修饰    @Parameterized.Parameters    public static List
param() { // 这里我给出两个测试用例 return Arrays.asList(new Object[][]{
{"Mike", "Black"}, {"Cilcln", "Smith"}}); } //4.为测试类声明一个带有参数的公共构造函数,并在其中为之声明变量赋值 public ParameterTest(String firstName, String lastName) { this.firstName = firstName; this.lastName = lastName; } // 5. 进行测试,发现它会将所有的测试用例测试一遍 @Test public void test() { String name = firstName + " " + lastName; System.out.println(name); assertThat("Mike Black", is(name)); }}

参数化在 测试controller 中的应用

@RunWith(Parameterized.class)@SpringBootTestpublic class LearnController14Test {    @Autowired    private WebApplicationContext wac;    private MockMvc mvc;    private MockHttpSession session;    public Long id;    public String title;    public LearnController14Test(Long id, String title) {        super();        this.id = id;        this.title = title;    }    /**     * 这些参数,都会测试一遍     *     * @return     */    @Parameterized.Parameters    public static List
data() { return Arrays.asList(new Object[][]{
{999L, "Black"}, {997L, "Smith"}}); } @Before public void setupMockMvc() throws Exception { //借助TestContextManager来实现上下文注入 TestContextManager testContextManager = new TestContextManager(getClass()); testContextManager.prepareTestInstance(this); //初始化MockMvc对象 mvc = MockMvcBuilders.webAppContextSetup(wac).build(); //构建session session = new MockHttpSession(); User user = new User("root", "root"); //拦截器那边会判断用户是否登录,所以这里注入一个用户 session.setAttribute("user", user); } /** * 获取教程测试用例 *

* get 请求 * * @throws Exception */ @Test public void qryLearn() throws Exception { mvc.perform(MockMvcRequestBuilders.get("/learn/resource/" + id + "?title=" + title) .contentType(MediaType.APPLICATION_JSON_UTF8) .accept(MediaType.APPLICATION_JSON_UTF8) .session(session) ) .andExpect(MockMvcResultMatchers.status().isOk()) .andDo(MockMvcResultHandlers.print()); }}

1092219-20181210155436540-434572882.png

1092219-20181210155516229-111710436.png

转载于:https://www.cnblogs.com/zhangjianbin/p/10096687.html

你可能感兴趣的文章
4.3.5 Sticks (POJ1011)
查看>>
POJ 2960 S-Nim 博弈论 sg函数
查看>>
Dijkstra模版
查看>>
一个简单的插件式后台任务管理程序
查看>>
GDB调试多进程程序
查看>>
组合数
查看>>
第二章作业心得
查看>>
CMD批处理延时启动的几个方法
查看>>
转:LoadRunner中web_custom_request 和 web_submit_data的差别
查看>>
HTC G7直刷MIUI开启A2SD+亲测教程
查看>>
shiro的rememberMe不生效
查看>>
const 不兼容的类型限定符问题
查看>>
OpenCV的配置
查看>>
spring Cache + Redis 开发数据字典以及自定义标签
查看>>
成功连上数据库顿感世界美好许多
查看>>
编程注意2
查看>>
《C++ Primer Plus》第12章 类和动态内存分配 学习笔记
查看>>
kosaraju求强连通分量
查看>>
golang里面检测对象是否实现了接口的方法
查看>>
freeswitch编译
查看>>