Interface ClassOrderer

    • Field Detail

      • DEFAULT_ORDER_PROPERTY_NAME

        @API(status=STABLE,
             since="5.9")
        static final java.lang.String DEFAULT_ORDER_PROPERTY_NAME
        Property name used to set the default class orderer class name: "junit.jupiter.testclass.order.default"

        Supported Values

        Supported values include fully qualified class names for types that implement ClassOrderer.

        If not specified, test classes are not ordered unless test classes are annotated with @TestClassOrder.

        Since:
        5.8
        See Also:
        Constant Field Values
    • Method Detail

      • orderClasses

        void orderClasses​(ClassOrdererContext context)
        Order the classes encapsulated in the supplied ClassOrdererContext.

        The classes to order or sort are made indirectly available via ClassOrdererContext.getClassDescriptors(). Since this method has a void return type, the list of class descriptors must be modified directly.

        For example, a simplified implementation of the ClassOrderer.Random ClassOrderer might look like the following.

         public void orderClasses(ClassOrdererContext context) {
             Collections.shuffle(context.getClassDescriptors());
         }
         
        Parameters:
        context - the ClassOrdererContext containing the class descriptors to order; never null