Quantcast
Channel: Everyday I'm coding » unit-testing
Viewing all articles
Browse latest Browse all 10

differences between 2 JUnit Assert classes

$
0
0

I’ve noticed that the JUnit framework contains 2 Assert classes (in different packages, obviously) and the methods on each appear to be very similar. Can anybody explain why this is?

The classes I’m referring to are: junit.framework.Assert and org.junit.Assert.

Cheers,
Don


Solution:

The old method (of Junit 3) was to mark the test-classes by extending junit.framework.TestCase. That inherited junit.framework.Assert itself and your test-class gained the ability to call the assert-methods this way.

Since version 4 of junit the framework uses Annotations for marking tests. So you no longer need to extend TestCase. But that means, the assert-methods aren’t available. But you can make a static import of the new Assert-class. That’s why all the assert-methods in the new class are static methods. So you can import it this way:

import static org.junit.Assert.*;

After this static import, you can use this methods without prefix.

At the redesign they also moved to the new package org.junit, that follows better the normal conventions for package-naming.


Viewing all articles
Browse latest Browse all 10

Latest Images

Trending Articles





Latest Images