I have a Pytest suite configured to use --split-by-timings and it works OK, but ideally I’d have the --timings-type=classname flag enabled too. However, I cannot figure out what heuristics Circle uses to match the classnames passed to circle tests split to the JUnit XML files from previous tests.
First note that modules are specified in the XML files using Python-style module specifiers e.g. path.to.some.test_feature.FeatureTestCase. Pytest has its own style of specifier e.g. path/to/some/test_feature.py::FeatureTestCase.
I have tried:
- passing Pytest-style specifiers to
circle test split - passing Python-style specifiers to
circle test split, then converting them back before passing to Pytest - tweaking classnames to match the
classnameXML attribute (points to the test case class) - tweaking classnames to match the
classnameandnameXML attribute joined (points to individual test methods)
but every time I get the dreaded No timing found for "..." error. Without the --timings-type=classname flag this isn’t an issue, so I’m pretty sure the XML is in the correct shape. I just can’t figure out why Circle isn’t matching these two strings together.
Hi