Continuous integration techniques with MSBuild, TeamCity, NUnit, NCover, FxCop, and Microsoft Web Deploy
scmGalaxy is a community initiatives based on Software configuration management that helps community members to optimize their software development process, Software Development Life Cycle optimization, Agile Methodologies and improve productivity across all aspects of Java development, including Build Scripts, Testing, Issue Tracking, Continuous Integration, Code Quality and more. scmGalaxy group that helps organisations optimize their software development process. We provide consulting, training and mentoring services in Agile Development Practices such as Version Management, Continuous Integration, Build Management, Test-Driven Development, Acceptance-Test Driven Development, Build Automation, Code Quality Practices and Automated Testing.
We provide job oriented training in the area of Configuration management, Build and Release Engineering. Candidates with engineering or software background and looking to either start or change their career to Build and Release Engineering, would benefit most from this training. Instructor-led training course offered in India, Bangalore, Delhi, Pune, Mumbai and Hydrabad. Instructor is an expert in Software configuration management, Build and release engineering with more than 15 years industry experience in india.The Goal of the course make the training attendants equip with all the concepts of build and release engineering.
Contact us at info@scmGalaxy.com | Call – +91 700 483 5930 | Skype – scmGalaxy
Course Objectives
To bring your team up to speed with agile development, We can also run the from Continuous Integration to Continuous Delivery with autoamted course within your premises.
Course Schedule
This course is an intensive 1-day & 2-day workshop with a mixture of teaching and lab exercises. Currently, this course is offered exclusively as an on-site course. Please contact us for more details.
Audience
This is a hands-on, practical course designed to teach specialised skills for real-world development situations. It is thus primarily aimed at a SCM Engineer, Build/Release Engineer and developer audience.
Approach
The course is modular and flexible – depending on specific student needs and requests. Through our trainings, you benefit from the wide experience and architectural expertise of our team. We bring that experience to you in an highly interactive, intensely hands-on setting.
Assumptions
We assume participants have a reasonable understanding of Development in any language as well as a basic understanding of the Software Development Life Cycle.
Lab Work
All our courses are above all practical in nature. We believe that the best way to learn is by doing. So the course contains approximately 80% lab work.
Learning Resources
Each registrant will receive a copy of the student notes and lab solutions, a certificate of completion, and a CD containing all the tools covered in the course and CD containing all the tools covered in the course.
Contact Us
This course is provided on-site, and can be tailored to your particular requirements. If you would like our trainings delivered at your premises, or for any additional information please contact us. Please email us at info@scmGalaxy.com
Course outline
The basic course program is outlined here:
A Gentle Introduction
- Overview
- Levels of Code Confidence
- CI as an Enabler
- Benefits of Continuous Integration
- Summary
Minimum Requirements
- Overview
- The Check-In Dance
- Continuous Integration Do’s and Don’ts
- Summary
Building a Solution
- Building a Solution
- Overview
- Hello, Continuous Integration
- Recommended Solution Layout
- The Software
- Building on the CI Servera
- Build Failure Notifications
- Receiving a Build Failure Notification
- Summary
Build Scripts
- Build Scripts
- Overview
- Why Do We Need a Build Script?
- Decision Point: How to Add Build Steps
- Recommendation: Do Not Modify csproj/vbproj
- Recommendation: Do Not Script csc.exe/vbc.exe
- Recommendation: Script Everything, but Compile with MSBuild
- Why the Command Line?
- Hello, MSBuild
- Defining Targets
- Running from the Command Line
- Compiling the Solution
- Setting the Default Target
- Eliminating Duplication
- Switching Between Debug and Release
- Scripting Other Tasks
- Using Custom Tasks
- Handling Non-Fatal Command Failures
- Depending on Multiple Targets
- Running on the CI Server
- Summary
Integrating External Tools
- Integrating External Tools
- Overview
- External Tools
- Test Runners
- Integrating NUnit via Exec Task
- Failing the Build with Exit Codes
- Running Tests on the Build Server
- Displaying Test Reports
- Coverage
- 100% Coverage Myth
- Integrating Coverage
- Integrating NCover via Custom MSBuild Tasks
- Failing the Build on Low Coverage
- Running Coverage on the Build Server
- Static Code Analysis
- Integrating FxCop
- Failing the Build by Analyzing XML Output
- Summary
Deployment Automation
- Overview
- Packaging/Deployment Options
- Server Preparation
- Deployment Pipeline
- Continuous Deployment
- Adding Packaging to the Build Script
- Finding Microsoft Web Deploy on a Developer Machine
- Packaging from the Command Line
- Packaging on the Build Server
- Installing Microsoft Web Deploy on the Web Server
- Adding Deployment to the Build Script
- Integrating Deployment into the Pipeline
- Demonstrating Continuous Deployment
- Summary
- Best AI tools for Software Engineers - November 4, 2024
- Installing Jupyter: Get up and running on your computer - November 2, 2024
- An Introduction of SymOps by SymOps.com - October 30, 2024