Small and Medium tests should never fail in Continuous Integration ( CI ). If they fail then the developer is not testing locally before a commit to the share version control system.
Large tests are two expensive and most likely you will need a cluster for them to run in a reasonable amount of time. This is better addressed then in a shared environment.
If small and medium tests are run locally why do we need them to run again in CI? That is a very good question. Are we really applying DRY?