Java中测试异常的多种方式

发表于:2014-04-14来源:博客园作者:黄博文点击数: 标签:软件测试
Java中测试异常的多种方式 使用JUnit来测试Java代码中的异常有很多种方式,你知道几种?

  使用JUnit来测试Java代码中的异常有很多种方式,你知道几种?

  给定这样一个class。

  Person.java

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
public class Person {

    private String name;
    private int age;

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public int getAge() {
        return age;
    }

    public void setAge(int age) {

        if (age < 0 ) {
            throw new IllegalArgumentException("age is invalid");
        }
        this.age = age;
    }
}

  我们来测试setAge方法。

  Try-catch 方式

1
2
3
4
5
6
7
8
9
10
11
    @Test
    public void shouldGetExceptionWhenAgeLessThan0() {
        Person person = new Person();
        try {
        person.setAge(-1);
            fail("should get IllegalArgumentException");
        } catch (IllegalArgumentException ex) {
            assertThat(ex.getMessage(),containsString("age is invalid"));
        }

    }

原文转自:http://www.cnblogs.com/huang0925/p/3663074.html