My project takes a long time to run tests (about 30 minutes). tarpaulin does not fail when test fails so that currently I have two steps in CI, run test and tarpaulin, which doubles my CI build time. I think it would be better if I don't need a standalone run test step when I'm running tests in tarpaulin, while preserving the behavior to fail the CI if test fails.
+1
Also, if some tests fail, the coverage result is not accurate. I would like to detect these cases, so that I can avoid uploading them to codecov/coveralls.
I'll add something to return 1 if a test fails. Although, the coverage results are accurate because they return what parts of the code were covered, it makes sense that a regression that's caught by tests could impact coverage.
You will be able to do this already with codecov once I've implemented returning 1 on test failure by only triggering the codecov bash file on a successful run, I'll look into coveralls.
I've got tarpaulin returning -1 on a test failure now and it's merged and in develop so I'll close this issue.
Feel free to let me know if that's not enough to avoid a coveralls upload and whether a flag to suppress the upload is required and I'll reopen the issue and look into popping something in (though it might be after the big report module rework).
Most helpful comment
I'll add something to return 1 if a test fails. Although, the coverage results are accurate because they return what parts of the code were covered, it makes sense that a regression that's caught by tests could impact coverage.
You will be able to do this already with codecov once I've implemented returning 1 on test failure by only triggering the codecov bash file on a successful run, I'll look into coveralls.