json测试

entity

public class Book {
    private Integer id;
    private String name;
    private String author;
		//get set tostring
}

自己写一个Json文件

{"id": 99,"name": "红楼梦","author": "曹雪芹"}

打包会忽略掉json

@RunWith(SpringRunner.class)
//@SpringBootTest
@org.springframework.boot.test.autoconfigure.json.JsonTest
public class JsonTest {
    @Autowired
    JacksonTester<Book> jacksonTester;

    //测试序列化
    @Test
    public void contextLoads() throws IOException {
        Book book = new Book();
        book.setId(99);
        book.setAuthor("曹雪芹");
        book.setName("红楼梦");
        Assertions.assertThat(jacksonTester.write(book))
                .isEqualToJson("book.json");
        //判断生成的字符串里面有没有一个key叫name
        Assertions.assertThat(jacksonTester.write(book))
                .hasJsonPathStringValue("@.name");
        Assertions.assertThat(jacksonTester.write(book))
                .extractingJsonPathStringValue("@.name")
                .isEqualTo("红楼梦");
    }

    /**
     * 测试json反序列化
     */
    @Test
    public void test2() throws IOException {
        String content="{\"id\": 99,\"name\": \"红楼梦\",\"author\": \"曹雪芹\"}";
        Assertions.assertThat(jacksonTester.parseObject(content).getName()).isEqualTo("红楼梦");
    }
}
posted @ 2020-08-05 21:43  柒丶月  阅读(185)  评论(0编辑  收藏  举报