Test split by timing-data does not find

Hey! We recently tried the test splitting technique, and wanted to split them by timing-data. This does not seem to work with our setup. I’ll try to provide as much info as possible below.

  • Test split works fine if we use any other technique than split-by=timings
  • Test results are uploaded correctly
  • We use test suites (“github.com/stretchr/testify/suite”), and I suspect is the output of the test results that is causing problems.

I tried to see similar topics and people seem to have issues with “nested” tests. Thanks for the help :slight_smile:


            go list ./... | circleci tests run --command "xargs gotestsum --junitfile test-results/server.xml --format testname --" --split-by=timings --timings-type=file
      - store_test_results:
          path: test-results

The issue is that we get this error : No timing found for ....

  • Do you get that error on every file / test and on every run?
  • Do the test results you’re saving include filenames? IIRC, a lot of problems with test splitting on timing relates to not having the filename in the junit style output. I would double-check that everything lines up with the exact format mentioned here.
  • Semi-related: could also see if adjusting --timings-type changes the situation? (Test splitting and parallelism - CircleCI)

Hello, thanks for helping.

Do you get that error on every file / test and on every run?

  • yes

Do the test results you’re saving include filenames?
Here is a link to one output. Looks like there is package name but not the file name. I’ll try to fix that.

Semi-related: could also see if adjusting --timings-type changes the situation?
I tried already all of them, without success :confused:

Thank you
Louis

So yeah I have search the internet to see how to include the file attribute that is indeed missing, but no luck. I am running the exact same command as is in the documentation (I tried with gotestsum and also just normal go test)

Do you have some idea ?

Not sure. This GH issue has some stuff that might be worth trying: