--- src/cppunit/TestFactoryRegistry.cpp +++ src/cppunit/TestFactoryRegistry.cpp @@ -143,13 +143,21 @@ void TestFactoryRegistry::addTestToSuite( TestSuite *suite ) { + std::multimap sorted; for ( Factories::iterator it = m_factories.begin(); it != m_factories.end(); ++it ) { TestFactory *factory = *it; - suite->addTest( factory->makeTest() ); + Test *test = factory->makeTest(); + sorted.insert({test->getName(), test}); } + // In the unlikely case of multiple Tests with identical names, those will + // still be added in random order: + for (auto const &i: sorted) + { + suite->addTest( i.second ); + } }