EuroSTAR Software Testing Conference 2010 presentation on Implementing Continuous Integration by Laura Perales. See more at: http://conference.eurostarsoftwaretesting.com/past-presentations/
3. Before continuous integration
We have…
We want…
We need…
QA
3
2
1
DEV
2
3
time
2
1
PROD
… chaos
… an agile development cycle
… a process!
4. Code process
1 week
1 week
I
N
T
E
G
R
A
T
I
O
N
I
N
T
E
G
R
A
T
I
O
N
Project 1
Project 2
Project 3
Project 4
Project 5
PROD
Reverse
Integration
Integrationtest
1 week
CODE COMPLETE
CODE FREEZE
CODE COMPLETE
CODE FREEZE
5. Building process
Branch 1
Branch 2
Branch 3
Code Repository
1
1
2
3
2
3
Builds Test environments
T
E
S
T
A
U
T
O
M
A
T
I
O
N
SCM
6. We want …
-… to improve quality in our products
-… more time for less obvious test
The QA team…
-… has low programming skills
-… is tired of executing repetitive tests
-… feels the pressure of time to market
What do we need?
-24h of automatic tests
Howtobegin?
7. Finding resources to implement it...
... without compromising the current roadmap…
... but keeping the knowhow inside
the company.
SUPPORT
MANAGEMENT
SUPPORT IS THE KEY
Add the project to the calendar.
Assign resources focused 100% on the implementation and convince your marketing fellows.
Try to keep it in-house.
-Obstacles-
-Solutions-
8. FLEXIBILITY
Choosing suitable tools...
... with a tight budget…
... but the system has to be maintainable.
FLEXIBILITYIS THE KEY!
Don’t adapt the team to the tool, choose a tool accordingly to the skills of the ones who will use it ...
... use trial versions, open source applications...
... cheap tools can become expensive when trying to maintain the tests.
-Obstacles-
-Solutions-
9. Stages
Stage 2: Tools Evaluation
-Search
-Compare
Stage 3: Kick off
-Automation of real test cases
-Model review
-Proof of concept
-Buy or download!
Stage 1: Definition
-Requirements
-Consider Maintainability
10. Stages
Stage 5: Transfer
-Transfer to QA team
-Pilot test using a real project
-Testers maintain the scripts
-SCM maintains the infrastructure
Stage 6: Maintainability & Monitoring
Stage 4: Infrastructure
-Software configuration
-Automatic launch
-Test Report generation
-Link with building process
12. Implementingcontinuousintegrationmeans…
Interdepartmental teamwork
-Departments who participate in early stages of a project have to be committed
No need of big economical investment
-Use “FLEXIBILITY”: flexible tool and/or flexible team
Taking advantage of time and not wasting time
-Testing within continuous integration is agile
“Shelfware” fear will not materialise:
-maintainability is properly supported and planned
-implementation is SUPPORTED by other departments