SlideShare a Scribd company logo
1 of 37
Continuous Test Automation
Test Automation Framework using
Jenkins CI to drive the execution and
present the results
vireshdoshi@time2test.co.uk 1Feb 2015
About
• This presentation details the thinking behind
how I managed to integrate Test Automation
with Continuous Integration for a client in the
Broadcasting technology sector.
vireshdoshi@time2test.co.uk 2Feb 2015
Take away message
“Test automation alone is useful but test
automation hooked up with a Continuous
Integration Platform is damn powerful”
Viresh Doshi – February 2015
Feb 2015 vireshdoshi@time2test.co.uk 3
About Viresh Doshi
• Test Specialist with over 15 years industry
experience.
• Started out testing Air Traffic Management
Systems for Lockheed Martin.
• Gained Test Consultancy working for one of
the first pure play test consultancies.
• Now help businesses/projects mature the QA,
Agile and Test process.
vireshdoshi@time2test.co.uk 4Feb 2015
The problems
• The client was only manually testing with
some adhoc automated unit testing.
• The team was transforming to Agile.
• Team was using Jenkins CI for building
software.
• The test environments were not controlled.
• Multiple teams from the UK, USA and Canada
updating the main code base and difficult to
pinpoint regressions.
vireshdoshi@time2test.co.uk 5Feb 2015
The biggest problem
vireshdoshi@time2test.co.uk 6Feb 2015
• The software gets to the client and…
– Software does not install.
– The software is missing a database change.
– The client can not login
– Basic functionality is broken
Pressure to Deliver
Feb 2015 vireshdoshi@time2test.co.uk 7
Hold on!
• Jenkins is a build tool and not a testing tool.
vireshdoshi@time2test.co.uk 8Feb 2015
The system
Made up of
three key
componentsTest
automation
tool
Jenkins CI
Jenkins
Plugins
GIT –
source code
Control
vireshdoshi@time2test.co.uk 9Feb 2015
Test automation tool
• This is any test automation tool that best
compliments the system under test e.g.
– Test Complete
– Selenium
– jMeter
– Quick Test Professional
– Home Grown Code and Tools
vireshdoshi@time2test.co.uk 10Feb 2015
GIT source control
• GIT is open source
• Easy to use and manage
• Client tools allow for easy usage
• Integrates with Jenkins CI
• Web management system
• Ideal choice for management of all test
configurable items and test code.
vireshdoshi@time2test.co.uk 11Feb 2015
What does it look like?
vireshdoshi@time2test.co.uk 12Feb 2015
In more detail?
 The radiator view is what we
stare at daily!
 Each block is a labeled “job”
that does something.
 Green indicates success and
Red/Yellow indicates failure or
issues.
 Running progress is shown.
 Job run time and version is
shown.
 Red blocks need investigating
immediately.
vireshdoshi@time2test.co.uk 13Feb 2015
What “things” does it do?
• Smoke tests – functional test coverage of the
key functions of the system
• End to End business scenarios
• New features
• Software installation
• Configuration
• Monitoring of servers , database server and
log files
vireshdoshi@time2test.co.uk 14Feb 2015
Test Starting point
• A new production development build is the
initial trigger point
• That build is copied across to the test
automation system and then installed and
then the suite of automation tests are run and
reported.
vireshdoshi@time2test.co.uk 15Feb 2015
System Vision and Values
• Continuous installation
• Continuous testing
• Continuous reporting
• Easy to manage
• Source Controlled
• Open Source Technology
• Scalable
vireshdoshi@time2test.co.uk 16Feb 2015
JENKINS
Continuous Integration Platform
vireshdoshi@time2test.co.uk 17Feb 2015
About
• This section contains information on the
Jenkins plugins used that achieve Continuous
Test Automation.
Feb 2015 vireshdoshi@time2test.co.uk 18
Jenkins
What is Jenkins?
• A CI Build Platform that allows the user to
create build process jobs that do “things”.
• Jenkins Plugins allow the integration and
ability to enrich the “things” being done.
• When those “things” are not successful then a
red fail is reported and it’s possible to drill
down further and investigate problems.
vireshdoshi@time2test.co.uk 19Feb 2015
Concepts
• Automate Repetitive tasks
• Report Pass and Fails
• Provide easy access to Log files
• Allow for Parameters
• Integration to existing systems
• Establish a Workspace
vireshdoshi@time2test.co.uk 20Feb 2015
Plugin: Build Monitor
What does it do?
• Provides a visual “radiator” view of configured
jobs.
Why?
• The view shows the jobs key features like: how
long it took to execute, running state, pass/fail
and build number.
vireshdoshi@time2test.co.uk 21Feb 2015
Plugin: Build Name Setter
What does it do?
• Allows for a user set a build name
Why?
• The standard build name is just an
incremented number.
vireshdoshi@time2test.co.uk 22Feb 2015
Plugin: Build Pipeline
What does it do?
• Provides a visual view of upstream and
downstream connected jobs.
Why?
• Builds and jobs can get complicated, so it is
useful to have a visual view of connected jobs.
vireshdoshi@time2test.co.uk 23Feb 2015
Plugin: Config slicing
What does it do?
• Allows multiple projects settings to be
adjusted conveniently.
Why?
• A great way to manage configuration settings
when you have 100s of similar Jenkins jobs.
vireshdoshi@time2test.co.uk 24Feb 2015
Plugin: Copy Artifact
What does it do?
• Allows artifacts to be copied from other build
projects
Why?
• Useful for taking successful executables from
other projects for usage.
vireshdoshi@time2test.co.uk 25Feb 2015
Plugin: Green Balls
What does it do?
• Simply shows a green for Pass and Red for Fail
Why?
• Jenkins automatically uses a colour blind
scheme – orange and yellow.
vireshdoshi@time2test.co.uk 26Feb 2015
Plugin: GIT Plugin
What does it do?
• Integrates into GIT source code control.
Why?
• Needed to pull the latest code changes from
source control.
vireshdoshi@time2test.co.uk 27Feb 2015
Plugin: HTML Publisher
What does it do?
• A HTML report is published per run
Why?
• It was used to publish the HTML execution
results as created by Test Complete
Automation Tool
vireshdoshi@time2test.co.uk 28Feb 2015
Plugin: PowerShell
What does it do?
• Integrates the ability to run PowerShell scripts.
Why?
• PowerShell is a very powerful scripting
language that adds endless possibilities for
windows based servers.
vireshdoshi@time2test.co.uk 29Feb 2015
Plugin: jUnit
What does it do?
• A nice graph with a pass/fail report in jUnit
style is presented per run.
Why?
• A test is not a test without a pass/fail result.
Any failures can also display stack traces or
error screenshots.
vireshdoshi@time2test.co.uk 30Feb 2015
Plugin: MSBuild
What does it do?
• Allows MSBuild to build .NET projects
Why?
• The executable isbuilt consistently using
Jenkins instead of adhocly on a developer’s
machine.
vireshdoshi@time2test.co.uk 31Feb 2015
Plugin: Sidebar Link
What does it do?
• Simply adds a HTML anchor link to the Jenkins
Sidebar
Why?
• To simplify our life!
vireshdoshi@time2test.co.uk 32Feb 2015
Plugin: Workspace Cleanup
What does it do?
• Cleans up the workspace before a job is
executed.
Why?
• Only that run’s current artifacts are stored.
vireshdoshi@time2test.co.uk 33Feb 2015
CONCLUSION
Lessons learned and tips
vireshdoshi@time2test.co.uk 34Feb 2015
Tips
• Try and limit the full suite of tests to 2 hours
execution time.
• Too many builds provided by the developers –
Limit the execution to twice a day.
• Failures could be with problems with the tests
and not the code.
• The system needs to be tested. Watch the test
execution and double check that it is doing
what you expect.
vireshdoshi@time2test.co.uk 35Feb 2015
Next Steps
• Introduce Maven or equivalent to manage
dependencies.
• Introduce a first time install test on virtualized
servers.
• Introduce Continuous Delivery
vireshdoshi@time2test.co.uk 36Feb 2015
Thank You
I am looking for a new challenge!
vireshdoshi@time2test.co.uk
07970 291828
UK
vireshdoshi@time2test.co.uk 37Feb 2015

More Related Content

What's hot

Instill a DevOps Testing Culture in Your Team and Organization
Instill a DevOps Testing Culture in Your Team and Organization Instill a DevOps Testing Culture in Your Team and Organization
Instill a DevOps Testing Culture in Your Team and Organization TechWell
 
Implement BDD with Cucumber and SpecFlow
Implement BDD with Cucumber and SpecFlowImplement BDD with Cucumber and SpecFlow
Implement BDD with Cucumber and SpecFlowTechWell
 
Build your QA Pipeline using Serenity , Selenium WebDriver , Rest Assured and...
Build your QA Pipeline using Serenity , Selenium WebDriver , Rest Assured and...Build your QA Pipeline using Serenity , Selenium WebDriver , Rest Assured and...
Build your QA Pipeline using Serenity , Selenium WebDriver , Rest Assured and...Moataz Nabil
 
QA Role in Agile Teams
QA Role in Agile Teams QA Role in Agile Teams
QA Role in Agile Teams Synerzip
 
Shift left as first transformation step into Quality Assurance
Shift left as first transformation step into Quality AssuranceShift left as first transformation step into Quality Assurance
Shift left as first transformation step into Quality AssuranceZbyszek Mockun
 
Continuous Testing for CTOs (Webinar Slides)
Continuous Testing for CTOs (Webinar Slides)Continuous Testing for CTOs (Webinar Slides)
Continuous Testing for CTOs (Webinar Slides)Rainforest QA
 
New trends in testing automation
New trends in testing automationNew trends in testing automation
New trends in testing automationEran Kinsbrunner
 
Application Lifecycle Management with TFS
Application Lifecycle Management with TFSApplication Lifecycle Management with TFS
Application Lifecycle Management with TFSMehdi Khalili
 
Continuous delivery - tools and techniques
Continuous delivery - tools and techniquesContinuous delivery - tools and techniques
Continuous delivery - tools and techniquesMike McGarr
 
Dev ops is more than CI+CD tools
Dev ops is more than CI+CD toolsDev ops is more than CI+CD tools
Dev ops is more than CI+CD toolsSudipta Lahiri
 
Qa in CI/CD
Qa in CI/CDQa in CI/CD
Qa in CI/CDAdsmurai
 
Visual Studio ALM 2013 - Edition Comparison
Visual Studio ALM 2013 - Edition ComparisonVisual Studio ALM 2013 - Edition Comparison
Visual Studio ALM 2013 - Edition ComparisonSteve Lange
 
Implementing automation in definition of done is team effort
Implementing automation in definition of done is team effortImplementing automation in definition of done is team effort
Implementing automation in definition of done is team effortAnand Narayan Shirkande
 
Managing software projects with Team Foundation Server 2013 in Agile Scrum
Managing software projects with Team Foundation Server 2013 in Agile ScrumManaging software projects with Team Foundation Server 2013 in Agile Scrum
Managing software projects with Team Foundation Server 2013 in Agile ScrumHossein Sarshar
 
Test Design for Fully Automated Build Architecture
Test Design for Fully Automated Build ArchitectureTest Design for Fully Automated Build Architecture
Test Design for Fully Automated Build ArchitectureTechWell
 
Continuous delivery @ hi q
Continuous delivery @ hi qContinuous delivery @ hi q
Continuous delivery @ hi qTomas Riha
 
Understanding Kanban
Understanding KanbanUnderstanding Kanban
Understanding Kanbannikos batsios
 

What's hot (20)

Instill a DevOps Testing Culture in Your Team and Organization
Instill a DevOps Testing Culture in Your Team and Organization Instill a DevOps Testing Culture in Your Team and Organization
Instill a DevOps Testing Culture in Your Team and Organization
 
Implement BDD with Cucumber and SpecFlow
Implement BDD with Cucumber and SpecFlowImplement BDD with Cucumber and SpecFlow
Implement BDD with Cucumber and SpecFlow
 
Build your QA Pipeline using Serenity , Selenium WebDriver , Rest Assured and...
Build your QA Pipeline using Serenity , Selenium WebDriver , Rest Assured and...Build your QA Pipeline using Serenity , Selenium WebDriver , Rest Assured and...
Build your QA Pipeline using Serenity , Selenium WebDriver , Rest Assured and...
 
QA Role in Agile Teams
QA Role in Agile Teams QA Role in Agile Teams
QA Role in Agile Teams
 
Shift left as first transformation step into Quality Assurance
Shift left as first transformation step into Quality AssuranceShift left as first transformation step into Quality Assurance
Shift left as first transformation step into Quality Assurance
 
Continuous Testing for CTOs (Webinar Slides)
Continuous Testing for CTOs (Webinar Slides)Continuous Testing for CTOs (Webinar Slides)
Continuous Testing for CTOs (Webinar Slides)
 
New trends in testing automation
New trends in testing automationNew trends in testing automation
New trends in testing automation
 
Application Lifecycle Management with TFS
Application Lifecycle Management with TFSApplication Lifecycle Management with TFS
Application Lifecycle Management with TFS
 
Continuous delivery - tools and techniques
Continuous delivery - tools and techniquesContinuous delivery - tools and techniques
Continuous delivery - tools and techniques
 
Dev ops is more than CI+CD tools
Dev ops is more than CI+CD toolsDev ops is more than CI+CD tools
Dev ops is more than CI+CD tools
 
Qa in CI/CD
Qa in CI/CDQa in CI/CD
Qa in CI/CD
 
Visual Studio ALM 2013 - Edition Comparison
Visual Studio ALM 2013 - Edition ComparisonVisual Studio ALM 2013 - Edition Comparison
Visual Studio ALM 2013 - Edition Comparison
 
Implementing automation in definition of done is team effort
Implementing automation in definition of done is team effortImplementing automation in definition of done is team effort
Implementing automation in definition of done is team effort
 
"DevOps > CI+CD "
"DevOps > CI+CD ""DevOps > CI+CD "
"DevOps > CI+CD "
 
Managing software projects with Team Foundation Server 2013 in Agile Scrum
Managing software projects with Team Foundation Server 2013 in Agile ScrumManaging software projects with Team Foundation Server 2013 in Agile Scrum
Managing software projects with Team Foundation Server 2013 in Agile Scrum
 
Continuous testing
Continuous testing Continuous testing
Continuous testing
 
Test Design for Fully Automated Build Architecture
Test Design for Fully Automated Build ArchitectureTest Design for Fully Automated Build Architecture
Test Design for Fully Automated Build Architecture
 
Understanding Scrum
Understanding ScrumUnderstanding Scrum
Understanding Scrum
 
Continuous delivery @ hi q
Continuous delivery @ hi qContinuous delivery @ hi q
Continuous delivery @ hi q
 
Understanding Kanban
Understanding KanbanUnderstanding Kanban
Understanding Kanban
 

Viewers also liked

Advanced Software Test Automation
Advanced Software Test AutomationAdvanced Software Test Automation
Advanced Software Test AutomationUnmesh Ballal
 
Full Scale Automation Using Selenium
Full Scale Automation Using SeleniumFull Scale Automation Using Selenium
Full Scale Automation Using SeleniumAndrii Dzynia
 
Sustainable Automation Frameworks by Kelsey Shannahan
Sustainable Automation Frameworks by Kelsey ShannahanSustainable Automation Frameworks by Kelsey Shannahan
Sustainable Automation Frameworks by Kelsey ShannahanQA or the Highway
 
Continuous integration
Continuous integrationContinuous integration
Continuous integrationLior Tal
 
Scrum master motivation role
Scrum master motivation roleScrum master motivation role
Scrum master motivation roleViresh Doshi
 
AWS CloudFormation Automation, TrafficScript, and Serverless architecture wit...
AWS CloudFormation Automation, TrafficScript, and Serverless architecture wit...AWS CloudFormation Automation, TrafficScript, and Serverless architecture wit...
AWS CloudFormation Automation, TrafficScript, and Serverless architecture wit...PolarSeven Pty Ltd
 
Prioritization by value (DevOps, Scrum)
Prioritization by value (DevOps, Scrum)Prioritization by value (DevOps, Scrum)
Prioritization by value (DevOps, Scrum)Tommy Quitt
 
AWS OpsWorks for Chef Automate
AWS OpsWorks for Chef AutomateAWS OpsWorks for Chef Automate
AWS OpsWorks for Chef AutomatePolarSeven Pty Ltd
 
Software Testing for International Students
Software Testing for International StudentsSoftware Testing for International Students
Software Testing for International Studentscristianoribeirosilva
 
Testing web services by Stan Jónsson
Testing web services by Stan JónssonTesting web services by Stan Jónsson
Testing web services by Stan JónssonQA or the Highway
 
Coding using jscript test complete
Coding using jscript test completeCoding using jscript test complete
Coding using jscript test completeViresh Doshi
 
Behat bdd training (php) course slides pdf
Behat bdd training (php) course slides pdfBehat bdd training (php) course slides pdf
Behat bdd training (php) course slides pdfseleniumbootcamp
 
Test Automation and Continuous Integration
Test Automation and Continuous Integration Test Automation and Continuous Integration
Test Automation and Continuous Integration TestCampRO
 
Gherkin for test automation in agile
Gherkin for test automation in agileGherkin for test automation in agile
Gherkin for test automation in agileViresh Doshi
 
Scrum gathering Paris 2013 - test automation strategy for Scrum Projects
Scrum gathering Paris 2013 -  test automation strategy for Scrum ProjectsScrum gathering Paris 2013 -  test automation strategy for Scrum Projects
Scrum gathering Paris 2013 - test automation strategy for Scrum ProjectsEliane Collins
 
Distributed Testing Environment
Distributed Testing EnvironmentDistributed Testing Environment
Distributed Testing EnvironmentŁukasz Morawski
 

Viewers also liked (20)

Advanced Software Test Automation
Advanced Software Test AutomationAdvanced Software Test Automation
Advanced Software Test Automation
 
Foundation selenium java
Foundation selenium java Foundation selenium java
Foundation selenium java
 
Full Scale Automation Using Selenium
Full Scale Automation Using SeleniumFull Scale Automation Using Selenium
Full Scale Automation Using Selenium
 
Sustainable Automation Frameworks by Kelsey Shannahan
Sustainable Automation Frameworks by Kelsey ShannahanSustainable Automation Frameworks by Kelsey Shannahan
Sustainable Automation Frameworks by Kelsey Shannahan
 
Continuous integration
Continuous integrationContinuous integration
Continuous integration
 
Scrum master motivation role
Scrum master motivation roleScrum master motivation role
Scrum master motivation role
 
AWS CloudFormation Automation, TrafficScript, and Serverless architecture wit...
AWS CloudFormation Automation, TrafficScript, and Serverless architecture wit...AWS CloudFormation Automation, TrafficScript, and Serverless architecture wit...
AWS CloudFormation Automation, TrafficScript, and Serverless architecture wit...
 
Prioritization by value (DevOps, Scrum)
Prioritization by value (DevOps, Scrum)Prioritization by value (DevOps, Scrum)
Prioritization by value (DevOps, Scrum)
 
Selenium bootcamp slides
Selenium bootcamp slides   Selenium bootcamp slides
Selenium bootcamp slides
 
AWS OpsWorks for Chef Automate
AWS OpsWorks for Chef AutomateAWS OpsWorks for Chef Automate
AWS OpsWorks for Chef Automate
 
Software Testing for International Students
Software Testing for International StudentsSoftware Testing for International Students
Software Testing for International Students
 
DevOps and Chef improve your life
DevOps and Chef improve your life DevOps and Chef improve your life
DevOps and Chef improve your life
 
Testing web services by Stan Jónsson
Testing web services by Stan JónssonTesting web services by Stan Jónsson
Testing web services by Stan Jónsson
 
Coding using jscript test complete
Coding using jscript test completeCoding using jscript test complete
Coding using jscript test complete
 
Behat bdd training (php) course slides pdf
Behat bdd training (php) course slides pdfBehat bdd training (php) course slides pdf
Behat bdd training (php) course slides pdf
 
Test Automation and Continuous Integration
Test Automation and Continuous Integration Test Automation and Continuous Integration
Test Automation and Continuous Integration
 
Gherkin for test automation in agile
Gherkin for test automation in agileGherkin for test automation in agile
Gherkin for test automation in agile
 
Scrum gathering Paris 2013 - test automation strategy for Scrum Projects
Scrum gathering Paris 2013 -  test automation strategy for Scrum ProjectsScrum gathering Paris 2013 -  test automation strategy for Scrum Projects
Scrum gathering Paris 2013 - test automation strategy for Scrum Projects
 
Distributed Testing Environment
Distributed Testing EnvironmentDistributed Testing Environment
Distributed Testing Environment
 
DbOps, DevOps and Ops
DbOps, DevOps and OpsDbOps, DevOps and Ops
DbOps, DevOps and Ops
 

Similar to Continuous test automation

QTP Automation Testing Tutorial 1
QTP Automation Testing Tutorial 1QTP Automation Testing Tutorial 1
QTP Automation Testing Tutorial 1Akash Tyagi
 
Effective performance evaluation as part of a CI approach - Mission Impossible?
Effective performance evaluation as part of a CI approach - Mission Impossible?Effective performance evaluation as part of a CI approach - Mission Impossible?
Effective performance evaluation as part of a CI approach - Mission Impossible?Intechnica
 
Improving the SharePoint Development Process with Continuous Integration
Improving the SharePoint Development Process with Continuous IntegrationImproving the SharePoint Development Process with Continuous Integration
Improving the SharePoint Development Process with Continuous IntegrationSharePoint Saturday New Jersey
 
DevOps & Continuous Test for IIB and IBM MQ
DevOps & Continuous Test for IIB and IBM MQDevOps & Continuous Test for IIB and IBM MQ
DevOps & Continuous Test for IIB and IBM MQStuart Feasey
 
No Test without Integration - final
No Test without Integration - finalNo Test without Integration - final
No Test without Integration - finalAndre Verschelling
 
TUTTO SU VISUAL STUDIO ALM 2015
TUTTO SU VISUAL STUDIO ALM 2015TUTTO SU VISUAL STUDIO ALM 2015
TUTTO SU VISUAL STUDIO ALM 2015DotNetCampus
 
Putting Quality First through Continuous Testing
Putting Quality First through Continuous TestingPutting Quality First through Continuous Testing
Putting Quality First through Continuous TestingTechWell
 
CI, CD -Tools to integrate without manual intervention
CI, CD -Tools to integrate without manual interventionCI, CD -Tools to integrate without manual intervention
CI, CD -Tools to integrate without manual interventionajayrajaganeshkayala
 
Office Add-ins community call-March 2019
Office Add-ins community call-March 2019Office Add-ins community call-March 2019
Office Add-ins community call-March 2019Microsoft 365 Developer
 
DOES15 - Sherry Chang - Intel’s Journey to Large Scale DevOps Transformation
DOES15 - Sherry Chang - Intel’s Journey to Large Scale DevOps Transformation DOES15 - Sherry Chang - Intel’s Journey to Large Scale DevOps Transformation
DOES15 - Sherry Chang - Intel’s Journey to Large Scale DevOps Transformation Gene Kim
 
Web.dev extended : What's new in Web [GDG Taichung]
Web.dev extended : What's new in Web [GDG Taichung]Web.dev extended : What's new in Web [GDG Taichung]
Web.dev extended : What's new in Web [GDG Taichung]Chieh Kai Yang
 
Implementing Continuous Integration to Improve Software Quality
Implementing Continuous Integration to Improve Software QualityImplementing Continuous Integration to Improve Software Quality
Implementing Continuous Integration to Improve Software QualityRocket Software
 
Dev ops in agile - 1st Conference Melbourne
Dev ops in agile - 1st Conference MelbourneDev ops in agile - 1st Conference Melbourne
Dev ops in agile - 1st Conference MelbourneMirco Hering
 
Is Being Agile a Good Thing?
Is Being Agile a Good Thing?Is Being Agile a Good Thing?
Is Being Agile a Good Thing?Alan Hood
 
Building a DevOps Team that Isn't Evil
Building a DevOps Team that Isn't EvilBuilding a DevOps Team that Isn't Evil
Building a DevOps Team that Isn't EvilIBM UrbanCode Products
 
#spsclt18 vincent biret #spfx #devops
#spsclt18 vincent biret #spfx #devops#spsclt18 vincent biret #spfx #devops
#spsclt18 vincent biret #spfx #devopsVincent Biret
 
Office Add ins community call-February 2019
Office Add ins community call-February 2019Office Add ins community call-February 2019
Office Add ins community call-February 2019Microsoft 365 Developer
 

Similar to Continuous test automation (20)

QTP Automation Testing Tutorial 1
QTP Automation Testing Tutorial 1QTP Automation Testing Tutorial 1
QTP Automation Testing Tutorial 1
 
Effective performance evaluation as part of a CI approach - Mission Impossible?
Effective performance evaluation as part of a CI approach - Mission Impossible?Effective performance evaluation as part of a CI approach - Mission Impossible?
Effective performance evaluation as part of a CI approach - Mission Impossible?
 
Improving the SharePoint Development Process with Continuous Integration
Improving the SharePoint Development Process with Continuous IntegrationImproving the SharePoint Development Process with Continuous Integration
Improving the SharePoint Development Process with Continuous Integration
 
DevOps & Continuous Test for IIB and IBM MQ
DevOps & Continuous Test for IIB and IBM MQDevOps & Continuous Test for IIB and IBM MQ
DevOps & Continuous Test for IIB and IBM MQ
 
No Test without Integration - final
No Test without Integration - finalNo Test without Integration - final
No Test without Integration - final
 
TUTTO SU VISUAL STUDIO ALM 2015
TUTTO SU VISUAL STUDIO ALM 2015TUTTO SU VISUAL STUDIO ALM 2015
TUTTO SU VISUAL STUDIO ALM 2015
 
Forward5 Auxis VMware
Forward5 Auxis VMwareForward5 Auxis VMware
Forward5 Auxis VMware
 
Dev ops using Jenkins
Dev ops using JenkinsDev ops using Jenkins
Dev ops using Jenkins
 
Putting Quality First through Continuous Testing
Putting Quality First through Continuous TestingPutting Quality First through Continuous Testing
Putting Quality First through Continuous Testing
 
CI, CD -Tools to integrate without manual intervention
CI, CD -Tools to integrate without manual interventionCI, CD -Tools to integrate without manual intervention
CI, CD -Tools to integrate without manual intervention
 
Office Add-ins community call-March 2019
Office Add-ins community call-March 2019Office Add-ins community call-March 2019
Office Add-ins community call-March 2019
 
DOES15 - Sherry Chang - Intel’s Journey to Large Scale DevOps Transformation
DOES15 - Sherry Chang - Intel’s Journey to Large Scale DevOps Transformation DOES15 - Sherry Chang - Intel’s Journey to Large Scale DevOps Transformation
DOES15 - Sherry Chang - Intel’s Journey to Large Scale DevOps Transformation
 
Web.dev extended : What's new in Web [GDG Taichung]
Web.dev extended : What's new in Web [GDG Taichung]Web.dev extended : What's new in Web [GDG Taichung]
Web.dev extended : What's new in Web [GDG Taichung]
 
Implementing Continuous Integration to Improve Software Quality
Implementing Continuous Integration to Improve Software QualityImplementing Continuous Integration to Improve Software Quality
Implementing Continuous Integration to Improve Software Quality
 
Dev ops in agile - 1st Conference Melbourne
Dev ops in agile - 1st Conference MelbourneDev ops in agile - 1st Conference Melbourne
Dev ops in agile - 1st Conference Melbourne
 
Is Being Agile a Good Thing?
Is Being Agile a Good Thing?Is Being Agile a Good Thing?
Is Being Agile a Good Thing?
 
Building a DevOps Team that Isn't Evil
Building a DevOps Team that Isn't EvilBuilding a DevOps Team that Isn't Evil
Building a DevOps Team that Isn't Evil
 
#spsclt18 vincent biret #spfx #devops
#spsclt18 vincent biret #spfx #devops#spsclt18 vincent biret #spfx #devops
#spsclt18 vincent biret #spfx #devops
 
Office Add ins community call-February 2019
Office Add ins community call-February 2019Office Add ins community call-February 2019
Office Add ins community call-February 2019
 
What is DevOps? What is DevOps CoE?
What is DevOps? What is DevOps CoE? What is DevOps? What is DevOps CoE?
What is DevOps? What is DevOps CoE?
 

Recently uploaded

Lowrate Call Girls In Laxmi Nagar Delhi ❤️8860477959 Escorts 100% Genuine Ser...
Lowrate Call Girls In Laxmi Nagar Delhi ❤️8860477959 Escorts 100% Genuine Ser...Lowrate Call Girls In Laxmi Nagar Delhi ❤️8860477959 Escorts 100% Genuine Ser...
Lowrate Call Girls In Laxmi Nagar Delhi ❤️8860477959 Escorts 100% Genuine Ser...lizamodels9
 
Cash Payment 9602870969 Escort Service in Udaipur Call Girls
Cash Payment 9602870969 Escort Service in Udaipur Call GirlsCash Payment 9602870969 Escort Service in Udaipur Call Girls
Cash Payment 9602870969 Escort Service in Udaipur Call GirlsApsara Of India
 
Vip Dewas Call Girls #9907093804 Contact Number Escorts Service Dewas
Vip Dewas Call Girls #9907093804 Contact Number Escorts Service DewasVip Dewas Call Girls #9907093804 Contact Number Escorts Service Dewas
Vip Dewas Call Girls #9907093804 Contact Number Escorts Service Dewasmakika9823
 
7.pdf This presentation captures many uses and the significance of the number...
7.pdf This presentation captures many uses and the significance of the number...7.pdf This presentation captures many uses and the significance of the number...
7.pdf This presentation captures many uses and the significance of the number...Paul Menig
 
VIP Kolkata Call Girl Howrah 👉 8250192130 Available With Room
VIP Kolkata Call Girl Howrah 👉 8250192130  Available With RoomVIP Kolkata Call Girl Howrah 👉 8250192130  Available With Room
VIP Kolkata Call Girl Howrah 👉 8250192130 Available With Roomdivyansh0kumar0
 
Regression analysis: Simple Linear Regression Multiple Linear Regression
Regression analysis:  Simple Linear Regression Multiple Linear RegressionRegression analysis:  Simple Linear Regression Multiple Linear Regression
Regression analysis: Simple Linear Regression Multiple Linear RegressionRavindra Nath Shukla
 
Tech Startup Growth Hacking 101 - Basics on Growth Marketing
Tech Startup Growth Hacking 101  - Basics on Growth MarketingTech Startup Growth Hacking 101  - Basics on Growth Marketing
Tech Startup Growth Hacking 101 - Basics on Growth MarketingShawn Pang
 
Lowrate Call Girls In Sector 18 Noida ❤️8860477959 Escorts 100% Genuine Servi...
Lowrate Call Girls In Sector 18 Noida ❤️8860477959 Escorts 100% Genuine Servi...Lowrate Call Girls In Sector 18 Noida ❤️8860477959 Escorts 100% Genuine Servi...
Lowrate Call Girls In Sector 18 Noida ❤️8860477959 Escorts 100% Genuine Servi...lizamodels9
 
Call Girls Pune Just Call 9907093804 Top Class Call Girl Service Available
Call Girls Pune Just Call 9907093804 Top Class Call Girl Service AvailableCall Girls Pune Just Call 9907093804 Top Class Call Girl Service Available
Call Girls Pune Just Call 9907093804 Top Class Call Girl Service AvailableDipal Arora
 
Monte Carlo simulation : Simulation using MCSM
Monte Carlo simulation : Simulation using MCSMMonte Carlo simulation : Simulation using MCSM
Monte Carlo simulation : Simulation using MCSMRavindra Nath Shukla
 
VIP Call Girls Pune Kirti 8617697112 Independent Escort Service Pune
VIP Call Girls Pune Kirti 8617697112 Independent Escort Service PuneVIP Call Girls Pune Kirti 8617697112 Independent Escort Service Pune
VIP Call Girls Pune Kirti 8617697112 Independent Escort Service PuneCall girls in Ahmedabad High profile
 
Call Girls In Connaught Place Delhi ❤️88604**77959_Russian 100% Genuine Escor...
Call Girls In Connaught Place Delhi ❤️88604**77959_Russian 100% Genuine Escor...Call Girls In Connaught Place Delhi ❤️88604**77959_Russian 100% Genuine Escor...
Call Girls In Connaught Place Delhi ❤️88604**77959_Russian 100% Genuine Escor...lizamodels9
 
Call Girls In Panjim North Goa 9971646499 Genuine Service
Call Girls In Panjim North Goa 9971646499 Genuine ServiceCall Girls In Panjim North Goa 9971646499 Genuine Service
Call Girls In Panjim North Goa 9971646499 Genuine Serviceritikaroy0888
 
Call Girls Navi Mumbai Just Call 9907093804 Top Class Call Girl Service Avail...
Call Girls Navi Mumbai Just Call 9907093804 Top Class Call Girl Service Avail...Call Girls Navi Mumbai Just Call 9907093804 Top Class Call Girl Service Avail...
Call Girls Navi Mumbai Just Call 9907093804 Top Class Call Girl Service Avail...Dipal Arora
 
BEST Call Girls In Old Faridabad ✨ 9773824855 ✨ Escorts Service In Delhi Ncr,
BEST Call Girls In Old Faridabad ✨ 9773824855 ✨ Escorts Service In Delhi Ncr,BEST Call Girls In Old Faridabad ✨ 9773824855 ✨ Escorts Service In Delhi Ncr,
BEST Call Girls In Old Faridabad ✨ 9773824855 ✨ Escorts Service In Delhi Ncr,noida100girls
 
Intro to BCG's Carbon Emissions Benchmark_vF.pdf
Intro to BCG's Carbon Emissions Benchmark_vF.pdfIntro to BCG's Carbon Emissions Benchmark_vF.pdf
Intro to BCG's Carbon Emissions Benchmark_vF.pdfpollardmorgan
 
Insurers' journeys to build a mastery in the IoT usage
Insurers' journeys to build a mastery in the IoT usageInsurers' journeys to build a mastery in the IoT usage
Insurers' journeys to build a mastery in the IoT usageMatteo Carbone
 
M.C Lodges -- Guest House in Jhang.
M.C Lodges --  Guest House in Jhang.M.C Lodges --  Guest House in Jhang.
M.C Lodges -- Guest House in Jhang.Aaiza Hassan
 

Recently uploaded (20)

Lowrate Call Girls In Laxmi Nagar Delhi ❤️8860477959 Escorts 100% Genuine Ser...
Lowrate Call Girls In Laxmi Nagar Delhi ❤️8860477959 Escorts 100% Genuine Ser...Lowrate Call Girls In Laxmi Nagar Delhi ❤️8860477959 Escorts 100% Genuine Ser...
Lowrate Call Girls In Laxmi Nagar Delhi ❤️8860477959 Escorts 100% Genuine Ser...
 
Cash Payment 9602870969 Escort Service in Udaipur Call Girls
Cash Payment 9602870969 Escort Service in Udaipur Call GirlsCash Payment 9602870969 Escort Service in Udaipur Call Girls
Cash Payment 9602870969 Escort Service in Udaipur Call Girls
 
Vip Dewas Call Girls #9907093804 Contact Number Escorts Service Dewas
Vip Dewas Call Girls #9907093804 Contact Number Escorts Service DewasVip Dewas Call Girls #9907093804 Contact Number Escorts Service Dewas
Vip Dewas Call Girls #9907093804 Contact Number Escorts Service Dewas
 
7.pdf This presentation captures many uses and the significance of the number...
7.pdf This presentation captures many uses and the significance of the number...7.pdf This presentation captures many uses and the significance of the number...
7.pdf This presentation captures many uses and the significance of the number...
 
VIP Kolkata Call Girl Howrah 👉 8250192130 Available With Room
VIP Kolkata Call Girl Howrah 👉 8250192130  Available With RoomVIP Kolkata Call Girl Howrah 👉 8250192130  Available With Room
VIP Kolkata Call Girl Howrah 👉 8250192130 Available With Room
 
Best Practices for Implementing an External Recruiting Partnership
Best Practices for Implementing an External Recruiting PartnershipBest Practices for Implementing an External Recruiting Partnership
Best Practices for Implementing an External Recruiting Partnership
 
Regression analysis: Simple Linear Regression Multiple Linear Regression
Regression analysis:  Simple Linear Regression Multiple Linear RegressionRegression analysis:  Simple Linear Regression Multiple Linear Regression
Regression analysis: Simple Linear Regression Multiple Linear Regression
 
Tech Startup Growth Hacking 101 - Basics on Growth Marketing
Tech Startup Growth Hacking 101  - Basics on Growth MarketingTech Startup Growth Hacking 101  - Basics on Growth Marketing
Tech Startup Growth Hacking 101 - Basics on Growth Marketing
 
Lowrate Call Girls In Sector 18 Noida ❤️8860477959 Escorts 100% Genuine Servi...
Lowrate Call Girls In Sector 18 Noida ❤️8860477959 Escorts 100% Genuine Servi...Lowrate Call Girls In Sector 18 Noida ❤️8860477959 Escorts 100% Genuine Servi...
Lowrate Call Girls In Sector 18 Noida ❤️8860477959 Escorts 100% Genuine Servi...
 
Call Girls Pune Just Call 9907093804 Top Class Call Girl Service Available
Call Girls Pune Just Call 9907093804 Top Class Call Girl Service AvailableCall Girls Pune Just Call 9907093804 Top Class Call Girl Service Available
Call Girls Pune Just Call 9907093804 Top Class Call Girl Service Available
 
Monte Carlo simulation : Simulation using MCSM
Monte Carlo simulation : Simulation using MCSMMonte Carlo simulation : Simulation using MCSM
Monte Carlo simulation : Simulation using MCSM
 
Forklift Operations: Safety through Cartoons
Forklift Operations: Safety through CartoonsForklift Operations: Safety through Cartoons
Forklift Operations: Safety through Cartoons
 
VIP Call Girls Pune Kirti 8617697112 Independent Escort Service Pune
VIP Call Girls Pune Kirti 8617697112 Independent Escort Service PuneVIP Call Girls Pune Kirti 8617697112 Independent Escort Service Pune
VIP Call Girls Pune Kirti 8617697112 Independent Escort Service Pune
 
Call Girls In Connaught Place Delhi ❤️88604**77959_Russian 100% Genuine Escor...
Call Girls In Connaught Place Delhi ❤️88604**77959_Russian 100% Genuine Escor...Call Girls In Connaught Place Delhi ❤️88604**77959_Russian 100% Genuine Escor...
Call Girls In Connaught Place Delhi ❤️88604**77959_Russian 100% Genuine Escor...
 
Call Girls In Panjim North Goa 9971646499 Genuine Service
Call Girls In Panjim North Goa 9971646499 Genuine ServiceCall Girls In Panjim North Goa 9971646499 Genuine Service
Call Girls In Panjim North Goa 9971646499 Genuine Service
 
Call Girls Navi Mumbai Just Call 9907093804 Top Class Call Girl Service Avail...
Call Girls Navi Mumbai Just Call 9907093804 Top Class Call Girl Service Avail...Call Girls Navi Mumbai Just Call 9907093804 Top Class Call Girl Service Avail...
Call Girls Navi Mumbai Just Call 9907093804 Top Class Call Girl Service Avail...
 
BEST Call Girls In Old Faridabad ✨ 9773824855 ✨ Escorts Service In Delhi Ncr,
BEST Call Girls In Old Faridabad ✨ 9773824855 ✨ Escorts Service In Delhi Ncr,BEST Call Girls In Old Faridabad ✨ 9773824855 ✨ Escorts Service In Delhi Ncr,
BEST Call Girls In Old Faridabad ✨ 9773824855 ✨ Escorts Service In Delhi Ncr,
 
Intro to BCG's Carbon Emissions Benchmark_vF.pdf
Intro to BCG's Carbon Emissions Benchmark_vF.pdfIntro to BCG's Carbon Emissions Benchmark_vF.pdf
Intro to BCG's Carbon Emissions Benchmark_vF.pdf
 
Insurers' journeys to build a mastery in the IoT usage
Insurers' journeys to build a mastery in the IoT usageInsurers' journeys to build a mastery in the IoT usage
Insurers' journeys to build a mastery in the IoT usage
 
M.C Lodges -- Guest House in Jhang.
M.C Lodges --  Guest House in Jhang.M.C Lodges --  Guest House in Jhang.
M.C Lodges -- Guest House in Jhang.
 

Continuous test automation

  • 1. Continuous Test Automation Test Automation Framework using Jenkins CI to drive the execution and present the results vireshdoshi@time2test.co.uk 1Feb 2015
  • 2. About • This presentation details the thinking behind how I managed to integrate Test Automation with Continuous Integration for a client in the Broadcasting technology sector. vireshdoshi@time2test.co.uk 2Feb 2015
  • 3. Take away message “Test automation alone is useful but test automation hooked up with a Continuous Integration Platform is damn powerful” Viresh Doshi – February 2015 Feb 2015 vireshdoshi@time2test.co.uk 3
  • 4. About Viresh Doshi • Test Specialist with over 15 years industry experience. • Started out testing Air Traffic Management Systems for Lockheed Martin. • Gained Test Consultancy working for one of the first pure play test consultancies. • Now help businesses/projects mature the QA, Agile and Test process. vireshdoshi@time2test.co.uk 4Feb 2015
  • 5. The problems • The client was only manually testing with some adhoc automated unit testing. • The team was transforming to Agile. • Team was using Jenkins CI for building software. • The test environments were not controlled. • Multiple teams from the UK, USA and Canada updating the main code base and difficult to pinpoint regressions. vireshdoshi@time2test.co.uk 5Feb 2015
  • 6. The biggest problem vireshdoshi@time2test.co.uk 6Feb 2015 • The software gets to the client and… – Software does not install. – The software is missing a database change. – The client can not login – Basic functionality is broken
  • 7. Pressure to Deliver Feb 2015 vireshdoshi@time2test.co.uk 7
  • 8. Hold on! • Jenkins is a build tool and not a testing tool. vireshdoshi@time2test.co.uk 8Feb 2015
  • 9. The system Made up of three key componentsTest automation tool Jenkins CI Jenkins Plugins GIT – source code Control vireshdoshi@time2test.co.uk 9Feb 2015
  • 10. Test automation tool • This is any test automation tool that best compliments the system under test e.g. – Test Complete – Selenium – jMeter – Quick Test Professional – Home Grown Code and Tools vireshdoshi@time2test.co.uk 10Feb 2015
  • 11. GIT source control • GIT is open source • Easy to use and manage • Client tools allow for easy usage • Integrates with Jenkins CI • Web management system • Ideal choice for management of all test configurable items and test code. vireshdoshi@time2test.co.uk 11Feb 2015
  • 12. What does it look like? vireshdoshi@time2test.co.uk 12Feb 2015
  • 13. In more detail?  The radiator view is what we stare at daily!  Each block is a labeled “job” that does something.  Green indicates success and Red/Yellow indicates failure or issues.  Running progress is shown.  Job run time and version is shown.  Red blocks need investigating immediately. vireshdoshi@time2test.co.uk 13Feb 2015
  • 14. What “things” does it do? • Smoke tests – functional test coverage of the key functions of the system • End to End business scenarios • New features • Software installation • Configuration • Monitoring of servers , database server and log files vireshdoshi@time2test.co.uk 14Feb 2015
  • 15. Test Starting point • A new production development build is the initial trigger point • That build is copied across to the test automation system and then installed and then the suite of automation tests are run and reported. vireshdoshi@time2test.co.uk 15Feb 2015
  • 16. System Vision and Values • Continuous installation • Continuous testing • Continuous reporting • Easy to manage • Source Controlled • Open Source Technology • Scalable vireshdoshi@time2test.co.uk 16Feb 2015
  • 18. About • This section contains information on the Jenkins plugins used that achieve Continuous Test Automation. Feb 2015 vireshdoshi@time2test.co.uk 18
  • 19. Jenkins What is Jenkins? • A CI Build Platform that allows the user to create build process jobs that do “things”. • Jenkins Plugins allow the integration and ability to enrich the “things” being done. • When those “things” are not successful then a red fail is reported and it’s possible to drill down further and investigate problems. vireshdoshi@time2test.co.uk 19Feb 2015
  • 20. Concepts • Automate Repetitive tasks • Report Pass and Fails • Provide easy access to Log files • Allow for Parameters • Integration to existing systems • Establish a Workspace vireshdoshi@time2test.co.uk 20Feb 2015
  • 21. Plugin: Build Monitor What does it do? • Provides a visual “radiator” view of configured jobs. Why? • The view shows the jobs key features like: how long it took to execute, running state, pass/fail and build number. vireshdoshi@time2test.co.uk 21Feb 2015
  • 22. Plugin: Build Name Setter What does it do? • Allows for a user set a build name Why? • The standard build name is just an incremented number. vireshdoshi@time2test.co.uk 22Feb 2015
  • 23. Plugin: Build Pipeline What does it do? • Provides a visual view of upstream and downstream connected jobs. Why? • Builds and jobs can get complicated, so it is useful to have a visual view of connected jobs. vireshdoshi@time2test.co.uk 23Feb 2015
  • 24. Plugin: Config slicing What does it do? • Allows multiple projects settings to be adjusted conveniently. Why? • A great way to manage configuration settings when you have 100s of similar Jenkins jobs. vireshdoshi@time2test.co.uk 24Feb 2015
  • 25. Plugin: Copy Artifact What does it do? • Allows artifacts to be copied from other build projects Why? • Useful for taking successful executables from other projects for usage. vireshdoshi@time2test.co.uk 25Feb 2015
  • 26. Plugin: Green Balls What does it do? • Simply shows a green for Pass and Red for Fail Why? • Jenkins automatically uses a colour blind scheme – orange and yellow. vireshdoshi@time2test.co.uk 26Feb 2015
  • 27. Plugin: GIT Plugin What does it do? • Integrates into GIT source code control. Why? • Needed to pull the latest code changes from source control. vireshdoshi@time2test.co.uk 27Feb 2015
  • 28. Plugin: HTML Publisher What does it do? • A HTML report is published per run Why? • It was used to publish the HTML execution results as created by Test Complete Automation Tool vireshdoshi@time2test.co.uk 28Feb 2015
  • 29. Plugin: PowerShell What does it do? • Integrates the ability to run PowerShell scripts. Why? • PowerShell is a very powerful scripting language that adds endless possibilities for windows based servers. vireshdoshi@time2test.co.uk 29Feb 2015
  • 30. Plugin: jUnit What does it do? • A nice graph with a pass/fail report in jUnit style is presented per run. Why? • A test is not a test without a pass/fail result. Any failures can also display stack traces or error screenshots. vireshdoshi@time2test.co.uk 30Feb 2015
  • 31. Plugin: MSBuild What does it do? • Allows MSBuild to build .NET projects Why? • The executable isbuilt consistently using Jenkins instead of adhocly on a developer’s machine. vireshdoshi@time2test.co.uk 31Feb 2015
  • 32. Plugin: Sidebar Link What does it do? • Simply adds a HTML anchor link to the Jenkins Sidebar Why? • To simplify our life! vireshdoshi@time2test.co.uk 32Feb 2015
  • 33. Plugin: Workspace Cleanup What does it do? • Cleans up the workspace before a job is executed. Why? • Only that run’s current artifacts are stored. vireshdoshi@time2test.co.uk 33Feb 2015
  • 34. CONCLUSION Lessons learned and tips vireshdoshi@time2test.co.uk 34Feb 2015
  • 35. Tips • Try and limit the full suite of tests to 2 hours execution time. • Too many builds provided by the developers – Limit the execution to twice a day. • Failures could be with problems with the tests and not the code. • The system needs to be tested. Watch the test execution and double check that it is doing what you expect. vireshdoshi@time2test.co.uk 35Feb 2015
  • 36. Next Steps • Introduce Maven or equivalent to manage dependencies. • Introduce a first time install test on virtualized servers. • Introduce Continuous Delivery vireshdoshi@time2test.co.uk 36Feb 2015
  • 37. Thank You I am looking for a new challenge! vireshdoshi@time2test.co.uk 07970 291828 UK vireshdoshi@time2test.co.uk 37Feb 2015