100 likes | 201 Vues
Learn about Continuous Integration (CI) from expert Sean Chambers. CI helps automate software development by providing instant feedback on bugs, executing tests, and automating build processes. Discover its benefits and the tools needed to implement CI effectively.
E N D
Using a Continuous Integration Server Sean Chambers
About Sean • Senior Developer at Flagler County Schools for 5 years • Owner Hybrid Software, Educational Software • Contributor to various open source projects (Castle Project, NHibernate, NUnit, NBehave) • Practicing TDD,DDD,BDD for 2 years • Blog: http://schambers.lostechies.com • Twitter: schambers
What is CI? • Software package to integrate the development of software on a daily process
Where? • CI was originated from the XP community • Developed by Martin Fowler and Kent Beck
How can it help me? • Instant feedback of bugs • Executes tests, reports automatically • Like having another developer present to compile • Automates the build process • Automates report generation • Constant monitor for TDD code coverage
What do I need? • CI Server • TeamCity • CruiseControl.NET • Source Control software • SVN • VSS • CVS • Build script • Nant • msbuild
Nant/MsBuild • Use a build script to leverage CI • Bootstrap report generation via build script • NCover • Ndepend • NUnit
Commit early, commit often • Make sure every developer commits everyday
Label your builds • Create label/tag for each published version • Label/tag a nightly build