4 ms·
Build time is not just compile time. My app is Ruby so deployment time is nearly nil, but we have a regression suite that takes inching past an whole hour, tha
by yebyen 8y ago
Build time is not just compile time. My app is Ruby so deployment time is nearly nil, but we have a regression suite that takes inching past an whole hour, that we run before every merge, and consult in detail before prod releases.
I hope I am an outlier (admitting that regression testing should not take this long, as there are larger projects with much broader scope that get the job done in significantly less time than that), but without CI this strategy would have already failed a long time ago, and it has helped us immeasurably with onboarding new developers and keeping release quality high.
"Build" time is not compile time.
- richardwhiuk 8y agoI hope you don't watch any of that either.
- yebyen 8y agoWithout CI, what choice would I have? Go find another computer when I think my feature branch is ready to merge? (...stop working for an hour?)
- detaro 8y agoPut your running build process in the background and continue to work on something else?
- yebyen 8y agoThat's exactly what CI does. It saves me from doing it, and it can do so with concurrent workers (say, if I finish the next thing before the hour is up. Should I be running the two concurrent test suites on my local machine? Or holding them in a queue, manually...) My build spins up a browser and does expensive feature testing in a browser window to prove that our Rails app and JS code play nice together. For a long time, this was working in a way where the browser would stay behind other windows and not get in my way. Then a Chrome upgrade came and now, at the start of every example, the window moves itself to on top of the other windows on the screen, and steals the focus. I know you're going to tell me to file a bug somewhere, but I suspect this change was made on purpose for a good reason. (Maybe you remember pop-unders?) CI solves this problem for me, rigorously, and in a way that is unobtrusive and not brittle. If you're not using CI, you probably don't understand the idea that "all developers should be able to run the test suite, but none of them should have to do it." That's the big idea. CI helps our team to increase their velocity, and keep it up.
- Rubytron 8y agoHi! Thanks for the meaningful contribution to the conversation. I share your thoughts on CI. I think it's a irreplacable tool for mobile app developers that actually reduces the hassle and repetitve grunt work. That's why this article was published in the first place! Take care!
- Rubytron 8y ago@yebyen It's seems you know what you are talking about. Would you be interested to test Nevercode out and share you experience?