testing - With Continuous Integration, why are tests run after committing instead of before? -


while have github repository i'm pushing (alone), forget run tests, or forget commit relevant files, or rely on objects residing on local machine. these result in build breaks, detected travis-ci after erroneous commit. know teamcity has pre-commit testing facility (which relies on ide in use), question regards current use of continuous integration opposed 1 implementation. question is

why aren't changes tested on clean build machine - such travis-ci uses post-commit tesing - before changes committed?

such process mean there never build breaks, meaning fresh environment pull commit repository , sure of success; such, don't understand why ci isn't implemented using post-commit testing.

the assumption if write code , compiles , tests passed locally, no builds broken wrong. so, if developer working on code. let's change interface using, code compile , pass tests long don't updated code uses interface. code compile , pass tests long don't update in interface. , when both check in our code, build machine explodes...

so ci process say: put changes in possible , test them in ci server (it should of course compiled , tested locally first). if developers follow rules, build still break, know sooner rather later.


Comments

Popular posts from this blog

node.js - Bad Request - node js ajax post -

Why does Ruby on Rails generate add a blank line to the end of a file? -

keyboard - Smiles and long press feature in Android -