In JDK 1.7, the order of the methods returned by reflection can vary. While
the ordering was not guaranteed previously, it happens that it was always
the same (declaration order). It's not the case anymore in JDK 1.7
Consequence for the tests: the order in which the tests are executed within
a test class may vary.
Because of this, JUnit 4.11 decided to execute the tests in a different
order than the declaration order.
That's explained here:
So depending on the execution order used to be bad, but can now randomly
breaks the tests, especially with jdk 1.7 and JUnit < 4.11.
With JUnit 4.11, the order is determined, but different from what it used
to be. So it breaks some tests. I'm currently fixing this (low priority).
But it's worth knowing, especially if you port the tests from one HBase
version to another.