Ya se de antemano que los primeros parametros de los asserEquals en los tests negativos son incorrectos, y ahi es donde reside mi duda, que poner.
El funcionamiento del metodo setAge, esta limitado a un rango [0,118], definido por las variables MIN_AGE_VALUE y, MAX_AGE_VALUE
Muchas gracias de antemano, estoy empezando con JUnit y es un poco confuso para mi.
Test Class:
Código:
Person Class@Test public void testAge() { Person dummy = new Person(); //Positive testing dummy.setAge(Person.MIN_AGE_VALUE); assertEquals(Person.MIN_AGE_VALUE, dummy.getAge()); dummy.setAge(Person.MAX_AGE_VALUE); assertEquals(Person.MAX_AGE_VALUE, dummy.getAge()); dummy.setAge(Person.MAX_AGE_VALUE/2); assertEquals(Person.MAX_AGE_VALUE/2, dummy.getAge()); //Negative testing dummy.setAge(Person.MIN_AGE_VALUE); assertEquals(Person.MIN_AGE_VALUE, dummy.getAge()); dummy.setAge(Person.MIN_AGE_VALUE-1000); assertEquals(Person.MIN_AGE_VALUE, dummy.getAge()); dummy.setAge(Person.MAX_AGE_VALUE+1); assertEquals(Person.MAX_AGE_VALUE+1, dummy.getAge()); dummy.setAge(Person.MAX_AGE_VALUE*2); assertEquals(Person.MAX_AGE_VALUE*2, dummy.getAge()); }
Código:
Existe mas código, pero no es relevante. public int age; public final static int MAX_AGE_VALUE = 118; public final static int MIN_AGE_VALUE = 0; public void setAge (int age) { if ((age >= MIN_AGE_VALUE) && (age <= MAX_AGE_VALUE)) this.age = age; } public int getAge () { return age; }