![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
单元测试
文章平均质量分 71
weixin_46722612
这个作者很懒,什么都没留下…
展开
-
单元测试——条件测试
在运行测试的时候,有些时候,我们需要排出某些@Test方法,不要让它运行,这时,我们就可以给它标记一个@Disabled:@Disabled@Testvoid testBug101() { // 这个测试不会运行}为什么我们不直接注释掉@Test,而是要加一个@Disabled?这是因为注释掉@Test,JUnit就不知道这是个测试方法,而加上@Disabled,JUnit仍然识别出这是个测试方法,只是暂时不运行。它会在测试结果中显示:Tests run: 68, Failures:原创 2021-03-15 15:01:24 · 503 阅读 · 0 评论 -
单元测试——参数化测试
如果待测试的输入和输出是一组数据: 可以把测试数据组织起来 用不同的测试数据调用相同的测试方法参数化测试和普通测试稍微不同的地方在于,一个测试方法需要接收至少一个参数,然后,传入一组参数反复运行。JUnit提供了一个@ParameterizedTest注解,用来进行参数化测试。假设我们想对Math.abs()进行测试,先用一组正数进行测试:@ParameterizedTest@ValueSource(ints = { 0, 1, 5, 100 })void testAbs(int x) {原创 2021-03-15 15:01:06 · 459 阅读 · 0 评论 -
正则表达式——匹配规则
正则表达式的匹配规则是从左到右按规则匹配。我们首先来看如何使用正则表达式来做精确匹配。对于正则表达式abc来说,它只能精确地匹配字符串"abc",不能匹配"ab",“Abc”,"abcd"等其他任何字符串。如果正则表达式有特殊字符,那就需要用\转义。例如,正则表达式a&c,其中&是用来匹配特殊字符&的,它能精确匹配字符串"a&c",但不能匹配"ac"、“a-c”、"a&&c"等。要注意正则表达式在Java代码中也是一个字符串,所以,对于正则表达式a&am原创 2021-03-15 12:49:35 · 4973 阅读 · 0 评论 -
单元测试——异常测试
在Java程序中,异常处理是非常重要的。我们自己编写的方法,也经常抛出各种异常。对于可能抛出的异常进行测试,本身就是测试的重要环节。因此,在编写JUnit测试的时候,除了正常的输入输出,我们还要特别针对可能导致异常的情况进行测试。我们仍然用Factorial举例:public class Factorial { public static long fact(long n) { if (n < 0) { throw new IllegalArgu原创 2021-03-15 15:01:40 · 2284 阅读 · 0 评论 -
单元测试——编写JUnit测试
什么是单元测试呢?单元测试就是针对最小的功能单元编写测试代码。Java程序最小的功能单元是方法,因此,对Java程序进行单元测试就是针对单个Java方法的测试。单元测试有什么好处呢?在学习单元测试前,我们可以先了解一下测试驱动开发。所谓测试驱动开发,是指先编写接口,紧接着编写测试。编写完测试后,我们才开始真正编写实现代码。在编写实现代码的过程中,一边写,一边测,什么时候测试全部通过了,那就表示编写的实现完成了:当然,这是一种理想情况。大部分情况是我们已经编写了实现代码,需要对已有的代码进行测试。我原创 2021-03-14 17:37:03 · 2313 阅读 · 0 评论