Professional Documents
Culture Documents
One of the key principles and benefits of following agile is faster feedback
The term "Fall fast" emphasis on better to fall earlier so that impediments can be
corrected based on the feedback.
Any repetitive manual task should be automated.
1) Automation in development
Unit test suits - unit testing is one of the basic building blocks of continuous
integration. Automated unit testing is the first line of defense and key step in
"Fall fast" approach.
Automation in Build
Continues Integration
Actions of CI
The version control tool should be able to determine and communicate to other tools
using hooking or polling
Hooking - let the other tools know when new changes are made
Polling - other tools have to poll the version control to determine whether a new
changes are made
MAVEN, ANT
CAST, SONAR
Build Repository
Nexus
CI SERVER
Interact with all other components above and perform actual build of the
application along with test execution either automatically or a manual button click
JENKINS, HUDSON
Automation in Deployment
Continues Deployment
Tool - uDeploy
Steps..
Automation in Testing
Smoke testing - Validate basic features are working fine after deployment. The
automatic test suits are executed from the build server after every deployment
System Testing
For system integration testing test cases are created in the testing framework.
Rule of thumb may be what ever test cases can be automated that will be automated.
Only for areas where manual testing is unavoidable , manual testing is performed
Regression Testing
Acceptance testing
Define acceptance criteria test cases and then code is knowns as ACCEPTANCE TEST
DRIVEN DEVELOPMENT (ATDD)
Emerging Trends
LiquiBase
Tool to track changes made to the database in the form of XML. This helps in
subsequent rollback of changes or applying changes in one environment to another.
Chef
Challenges in automation