Upload
sriram-angajala
View
16
Download
0
Embed Size (px)
Citation preview
Quality Gates while Continues Integration
Sriram Angajala
Agenda• What is an environment?• What is a build?• What is Repository?• What is a build management tool about?• How a water fall model builds deployed?• How a agile builds deployed and role of test automation as
Quality gates• Nightly Builds• How a BDD builds Deployed and role of test automation as
quality gates• CI Builds and Developer Environment
Environment
• Environment depends on product– Web
• Web container• Application Layer• Database• Service Layer• UI Layer
– Mobile • IOS app• Android app• Service layer• Database
Environment
– N – tier• Mix of Webservices including rest and soap
– Eg: Payment» Card reader - Primark» Merchant bank - barclays» Payment Provider – visa» Payment Regualtor – world pay» Fraud Detector – RAC» Consumer Bank – Santander» Notification Engine – BT» Email Engine – SMTP
What is a build?
• Build is instance of an application deployed for a set of target audience– Local build
• Developers• Tests(SDET)
– Development Build(Set of developer’s stories)– Feature Branch – Specific Story(Base line of last stable build and current
changes per story)– Test Build (Current Module with mocks)– Integration Build(Integration with all components/no mocks)– UAT(Acceptance / Performance)– Pre prod(Live database copy to emulate live env)– LIVE
Build
• In a typical company builds are deployed in a sequence– LOCAL Development Feature Test
Integration Acceptance/UAT Preprod Prod– LOCAL Test UAT PROD
What is Repository• Repo is a place to store our code and more…
– Git– Git Hub– Bitbucket– CVS– SVN
• Repos have to help CI by– Pull request to test by tester and run selenium tests– Feature branches– Multiple Development branches
• Local• Feature• Development• Integration• Master branch
What is a build management tool• Builds tool automates build Process
– Easy Deployment by• Git Commit• Manual• Schedule• Other dependents
– Notifications– Scripting– Environment down and up– Database Connection– Deploy results– Deploy files– Link depended builds– Automatic Deployment process– Supports Maven, behat etc
What is a build management tool
• Sample tools– Jenkins– Team city– Bamboo
How a water fall model builds deployed
How a agile builds deployed and role of test automation as Quality gates
How a BDD builds Deployed and role of test automation as quality gates