An excellent set of well-justified categories. Great use of referencing. It's a good idea to probe the ability to handle edge-cases such as single elements and empty lists. It's good to investigate the behaviour with / without duplicate elements.
An excellent, well-presented set of test cases.
The metamorphic relations are well thought through, and nicely justified. The slight exception was for 3.1 - (2), where the transformation was the same as (1), and the equivalence (c) does not make sense.
The JUnit test cases faithfully implement the categories and relations. They use utility functions nicely.
The random approach nicely tests the function 1000 times with different random inputs. Well done.