Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revision | |
student:junit:v4 [2018/08/14 10:57] – bernstdh | student:junit:v4 [2018/08/14 11:00] (current) – bernstdh |
---|
} | } |
</code> | </code> |
| |
| Note that the name of this method is completely arbitrary, but, as always, descriptive names are always a good |
| idea. Some people simply use the name of the method being tested (as above), while others add a prefix or suffix that includes some form of the word "test" (e.g., ''%%testGetAtomicNumber()%%'', ''%%getAtomicNumber_Test()%%'', |
| etc...). |
| |
The body of the methods in the //ClassName//Test.java must contain the test cases for the corresponding methods in the //ClassName// class. These test cases often involve some "setup" code and a call to the ''%%Assert.assertEquals()%%'' method. So, for example, the ''%%getAtomicNumber%%'' method in the ''%%Atom%%'' class is supposed to return the atomic number of the calling ''%%Atom%%'' object. To partially test this method one might implement the ''%%testGetAtomicNumber()%%'' method in the ''%%AtomTest%%'' class as follows: | The body of the methods in the //ClassName//Test.java must contain the test cases for the corresponding methods in the //ClassName// class. These test cases often involve some "setup" code and a call to the ''%%Assert.assertEquals()%%'' method. So, for example, the ''%%getAtomicNumber%%'' method in the ''%%Atom%%'' class is supposed to return the atomic number of the calling ''%%Atom%%'' object. To partially test this method one might implement the ''%%testGetAtomicNumber()%%'' method in the ''%%AtomTest%%'' class as follows: |
</code> | </code> |
| |
In the "setup" portion, this method creates an ''%%Atom%%'' objects (for oxygen). It then calls the ''%%Assert.assertEquals()%%'' method to tell jUnit to do some testing. This particular version of the ''%%Assert.assertEquals()%%'' method is passed three parameters and has the following syntax: | In the "setup" portion, this method creates an ''%%Atom%%'' objects (for oxygen). It then calls the ''%%Assert.assertEquals()%%'' method to tell JUnit to do some testing. This particular version of the ''%%Assert.assertEquals()%%'' method is passed three parameters and has the following syntax: |
| |
''Assert.assertEquals(//Description//, //ExpectedValue//, //ActualValue//);'' | ''Assert.assertEquals(//Description//, //ExpectedValue//, //ActualValue//);'' |
public void testEquals() | public void testEquals() |
{ | { |
Atom h, o; | Atom h, hh, o; |
| |
h = new Atom("H", 1, 1); | h = new Atom("H", 1, 1); |
| |
<code> | <code> |
javac -cp .;junit.jar;hamcrest-core.jar AtomTest.java | javac -cp .;junit.jar AtomTest.java |
java -cp .;junit.jar;hamcrest-core.jarorg.junit.runner.JUnitCore AtomTest | java -cp .;junit.jar;hamcrest-core.jarorg.junit.runner.JUnitCore AtomTest |
</code> | </code> |