Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Expand
titleDel 4 – Testing (10%)

I denne delen skal du skrive testkode for Value- og ValueSeries-klassene. Hensikten er å vise at du behersker testmetodikken, og du kan, men trenger ikke bruke JUnit-rammeverket.  

Oppgave a)

Skriv testkode for Value sin valueOf-metode.

Expand
titleLF
Code Block
themeEclipse
public void testValueOf() {
	Value value = Value.valueOf("2.0m");
	assertEquals(Unit.valueOf("m"), value.getUnit());
	assertEquals(2.0, value.getValue());
}

Se også Testing av unntak

Oppgave b)

 Forklar med tekst og kode hvordan du kan teste at ValueSeries håndterer lyttere (av typen ValuesListener) og implementerer observerbarhet riktig.

Expand
titleLF
Code Block
themeEclipse
public class ValueSeriesTest extends TestCase implements ValuesListener {
	private ValueSeries values;
	
	protected void setUp() throws Exception {
		super.setUp();
		values = new ValueSeries(new Unit("m"));
		values.addValuesListener(this);
	}
	public void testValuesChanged() {
		values.appendValue(11);
		assertEquals(values, notified);
		notified = null;
		values.removeValuesListener(this);
		values.appendValue(12);
		assertEquals(null, notified);
	}
	
	private Values notified = null;
	
	@Override
	public void valuesChanged(Values values) {
		notified = values;
	}
}

Se også Enhetstesting med JUnit

Appendix: Specification of interfaces and classes and their methods. Some implementation details are provided, while other details are not given (since these are your task).

...