1 package org.junit.runner.manipulation; 2 3 /** 4 * Interface for runners that allow ordering of tests. 5 * 6 * <p>Beware of using this interface to cope with order dependencies between tests. 7 * Tests that are isolated from each other are less expensive to maintain and 8 * can be run individually. 9 * 10 * @since 4.13 11 */ 12 public interface Orderable extends Sortable { 13 14 /** 15 * Orders the tests using <code>orderer</code> 16 * 17 * @throws InvalidOrderingException if orderer does something invalid (like remove or add 18 * children) 19 */ order(Orderer orderer)20 void order(Orderer orderer) throws InvalidOrderingException; 21 } 22