SlideShare une entreprise Scribd logo
1  sur  69
Massively
Continuous Integration
From 3 days to 30 minutes
•Software   as a Service
•Project   Management
•Collaborative   Work Management
How we use Selenium
 •1,100   Selenium 1 tests
 •800   Selenium 2 tests
 •40,000    hours per month
 •Release   Acceptance + CI
Then
Scripted scenarios
Slow, brittle
Monthly Releases
3-5 days acceptance
Manual administration
Now
Tight unit-like UI tests
Fast, Robust
Daily releases
30-45 minutes
Sign-off and go
“True” Continuous Integration

       •How   often do I integrate?
       •What   tests tell me I’m integrated?
       •What   must I know to release?
Pipeline Priorities
  •Performance   (Cycle Time)
  •Scalability

  •Visibility

  •Accountability
ATTASK’S PIPE
BUILD -- DEPLOY -- TEST -- DESTROY
Commit




ATTASK’S PIPE
BUILD -- DEPLOY -- TEST -- DESTROY
Commit
                   Build Installer

                    Build Tests




ATTASK’S PIPE
BUILD -- DEPLOY -- TEST -- DESTROY
Selenium Grid

                   Grid + AtTask
    Commit
                   Build Installer

                    Build Tests




ATTASK’S PIPE
BUILD -- DEPLOY -- TEST -- DESTROY
Selenium Grid

                   Grid + AtTask
    Commit                           Install
                   Build Installer

                    Build Tests




ATTASK’S PIPE
BUILD -- DEPLOY -- TEST -- DESTROY
Selenium Grid

                   Grid + AtTask
    Commit                             Install
                   Build Installer

                    Build Tests



                                           Unit


                                     Integration
                                     1/4          3/4

                                     2/4          4/4




ATTASK’S PIPE
BUILD -- DEPLOY -- TEST -- DESTROY
Selenium Grid                        Selenium IE

                   Grid + AtTask
    Commit                             Install          Selenium FF
                   Build Installer

                    Build Tests                         Other tests



                                           Unit


                                     Integration
                                     1/4          3/4

                                     2/4          4/4




ATTASK’S PIPE
BUILD -- DEPLOY -- TEST -- DESTROY
Selenium Grid                        Selenium IE

                   Grid + AtTask
    Commit                             Install          Selenium FF   Tear Down
                   Build Installer

                    Build Tests                         Other tests



                                           Unit


                                     Integration
                                     1/4          3/4

                                     2/4          4/4




ATTASK’S PIPE
BUILD -- DEPLOY -- TEST -- DESTROY
AIRPORT SECURITY
NOBODY LIKES TO WAIT IN LINE
Selenium Grid                        Selenium IE

           Grid + AtTask
  Commit                       Install          Selenium FF   Tear Down
           Build Installer

            Build Tests                         Other tests



                                   Unit


                             Integration
                             1/4          3/4

                             2/4          4/4




SERIAL VS PARALLEL
Selenium Grid                        Selenium IE

           Grid + AtTask
  Commit                       Install          Selenium FF   Tear Down
           Build Installer

            Build Tests                         Other tests



                                   Unit


                             Integration
                             1/4          3/4

                             2/4          4/4




SERIAL VS PARALLEL
CYCLE TIME
CYCLE TIME
CYCLE TIME
JENKINS, EC2, AND ATTASK
A MATCH MADE IN HEAVEN
JENKINS, EC2, AND ATTASK
A MATCH MADE IN HEAVEN
JENKINS DYNAMIC SLAVE ALLOCATION
JENKINS DYNAMIC SLAVE ALLOCATION
SLAVE




JENKINS DYNAMIC SLAVE ALLOCATION
SLAVE

                    SLAVE

                    SLAVE

                    SLAVE


JENKINS DYNAMIC SLAVE ALLOCATION
JENKINS DYNAMIC SLAVE ALLOCATION
From 3 days to 30 minutes
with Selenium 2
SELENIUM 1 (1800 TESTS)




TESTING WITH SELENIUM 1
SELENIUM 1 (1800 TESTS)

                               4 HOURS




              SLOW



TESTING WITH SELENIUM 1
TRANSITIONING TO SELENIUM 2
TRANSITIONING TO SELENIUM 2
TRANSITIONING TO SELENIUM 2
SELENIUM 1 (1800 TESTS)

                               4 HOURS




TRANSITIONING TO SELENIUM 2
SELENIUM 1 (1800 TESTS)

                                    4 HOURS



      SELENIUM 2 (750 TESTS)

             30 MINUTES
                               WHERE DID THE
                                TESTS GO?



TRANSITIONING TO SELENIUM 2
TRANSITIONING TO SELENIUM 2
2.1 MINUTES




TRANSITIONING TO SELENIUM 2
2.1 MINUTES             34 SECONDS




TRANSITIONING TO SELENIUM 2
2.1 MINUTES                  34 SECONDS

                    WITH GRID...




TRANSITIONING TO SELENIUM 2
2.1 MINUTES                  34 SECONDS

                    WITH GRID...



       8 SECONDS



TRANSITIONING TO SELENIUM 2
2.1 MINUTES                  34 SECONDS

                    WITH GRID...



       8 SECONDS                   2.4 SECONDS



TRANSITIONING TO SELENIUM 2
Scalability
  •To   the cloud with Amazon Cloud Formations
   •Dynamic   Selenium Grids
   •Dynamic   AtTask Environments
JSON
PARTLY CLOUDY WITH A CHANCE OF RAIN
JSON
PARTLY CLOUDY WITH A CHANCE OF RAIN
Scalability

         Selenium Grid                        Selenium IE

         Grid + AtTask
Commit                       Install          Selenium FF   Tear Down
         Build Installer

          Build Tests                         Other tests



                                 Unit


                           Integration
                           1/4          3/4

                           2/4          4/4
Scalability
               Selenium Grid


               Grid + AtTask
      Commit
               Build Installer


                Build Tests
SLAVE




IT’S RAINING GRIDS
SLAVE




IT’S RAINING GRIDS
SELENIUM GRID
   SLAVE


                     SELENIUM GRID




IT’S RAINING GRIDS
SELENIUM GRID
   SLAVE


                     SELENIUM GRID




IT’S RAINING GRIDS
SELENIUM GRID
   SLAVE


                     SELENIUM GRID




IT’S RAINING GRIDS
SLAVE




               SELENIUM GRID


   SLAVE
                                  SLAVE
               SELENIUM GRID




   SLAVE                           SLAVE




IT’S RAINING GRIDS
Visibility
  •Selenium    results in Jenkins
  •Description      plugin
   •Theres   my commit!
  •View    plugin
   •All   the jobs on one line, oh the humanity!
Visibility
  •Selenium    results in Jenkins
  •Description      plugin
   •Theres   my commit!
  •View    plugin
   •All   the jobs on one line, oh the humanity!
Visibility
  •Selenium    results in Jenkins
  •Description      plugin
   •Theres   my commit!
  •View    plugin
   •All   the jobs on one line, oh the humanity!
Accountability
 •Claim   / Blame test results using AtTask
Accountability
 •Claim   / Blame test results using AtTask
Accountability
 •Claim   / Blame test results using AtTask
Gotchas
 •Watch    your integration points
 •Get   the right skill set
 •Align   process w/ tools
 •Continuous    Investment
What does it cost?
 •3   FTE
  •Two      human, one machine(s)
 •Keeping      costs down
  •Efficient    machine sizes
  •Rock-solid    tear down
  •Elasticity
Return on investment
 •5   days (40 hours) to certify one release...
  •10   engineers
  •$40   per hour
  •$20,000

 •30   minutes to certify one release...
  •10   engineers
  •$40   per hour
  •$250
To release 12 times in a year...
  $240,000 TO CERTIFY            $3000 TO TEST
                          $160,000 FOR TWO FTE
                                 $77,000 FOR CI

To release 24 times in a year...
  $480,000 TO CERTIFY            $6000 TO TEST
                          $160,000 FOR TWO FTE
                                 $77,000 FOR CI

To release 100 times in a year...
  $2,000,000 TO CERTIFY         $25000 TO TEST
                          $160,000 FOR TWO FTE
                                 $77,000 FOR CI
100 deployments annually



               $2,000,000
100 deployments annually



  $265,000     $2,000,000
100 deployments annually



     $265,000
Where to go from here
 •Continuous    Delivery
  •Thoughtworks

 •Application   Lifecycle Management
 •Infrastructure   CI
 •OpenStack
Tools Manifest
•AtTask          contributions...
 •EC2       -   wiki.jenkins-ci.org/display/JENKINS/Amazon+EC2+Plugin


 •CloudFormation                   -   wiki.jenkins-ci.org/display/JENKINS/AWS+Cloudformation+Plugin


 •Pipeline           View -     github.com/JoelJ/PipelineDashboard


 •Description              Setter -      github.com/JoelJ/DescriptionSetter


 •GIT   -       /wiki.jenkins-ci.org/display/JENKINS/Git+Plugin


 •AtTask           for Jenkins -         Coming soon...
Q&A

Contenu connexe

Similaire à Massively Continuous Integration: From 3 days to 30 minutes

Boston selenium meetup: Selenium 2
Boston selenium meetup: Selenium 2Boston selenium meetup: Selenium 2
Boston selenium meetup: Selenium 2
epall
 

Similaire à Massively Continuous Integration: From 3 days to 30 minutes (20)

Getting Started with Dockerization of Selenium Tests Execution - Testwarez 2019
Getting Started with Dockerization of Selenium Tests Execution - Testwarez 2019Getting Started with Dockerization of Selenium Tests Execution - Testwarez 2019
Getting Started with Dockerization of Selenium Tests Execution - Testwarez 2019
 
Rocket Fuelled Cucumbers
Rocket Fuelled CucumbersRocket Fuelled Cucumbers
Rocket Fuelled Cucumbers
 
ATDD with Behat and Selenium (LDNSE6)
ATDD with Behat and Selenium (LDNSE6)ATDD with Behat and Selenium (LDNSE6)
ATDD with Behat and Selenium (LDNSE6)
 
How to Dockerize Parallel Execution of Selenium Tests - SQA Days EU, Rgia, La...
How to Dockerize Parallel Execution of Selenium Tests - SQA Days EU, Rgia, La...How to Dockerize Parallel Execution of Selenium Tests - SQA Days EU, Rgia, La...
How to Dockerize Parallel Execution of Selenium Tests - SQA Days EU, Rgia, La...
 
Integration testing for salt states using aws ec2 container service
Integration testing for salt states using aws ec2 container serviceIntegration testing for salt states using aws ec2 container service
Integration testing for salt states using aws ec2 container service
 
Be flexible with zalenium, a dockerized selenium grid infrastructure
Be flexible with zalenium, a dockerized selenium grid infrastructureBe flexible with zalenium, a dockerized selenium grid infrastructure
Be flexible with zalenium, a dockerized selenium grid infrastructure
 
Kubernetes your tests! automation with docker on google cloud platform
Kubernetes your tests! automation with docker on google cloud platformKubernetes your tests! automation with docker on google cloud platform
Kubernetes your tests! automation with docker on google cloud platform
 
Unit testing for Cocoa developers
Unit testing for Cocoa developersUnit testing for Cocoa developers
Unit testing for Cocoa developers
 
Boston selenium meetup: Selenium 2
Boston selenium meetup: Selenium 2Boston selenium meetup: Selenium 2
Boston selenium meetup: Selenium 2
 
Quick tour to front end unit testing using jasmine
Quick tour to front end unit testing using jasmineQuick tour to front end unit testing using jasmine
Quick tour to front end unit testing using jasmine
 
The history of selenium
The history of seleniumThe history of selenium
The history of selenium
 
Taking a Test Drive: iOS Dev UK guide to TDD
Taking a Test Drive: iOS Dev UK guide to TDDTaking a Test Drive: iOS Dev UK guide to TDD
Taking a Test Drive: iOS Dev UK guide to TDD
 
Testing with Jenkins, Selenium and Continuous Deployment
Testing with Jenkins, Selenium and Continuous DeploymentTesting with Jenkins, Selenium and Continuous Deployment
Testing with Jenkins, Selenium and Continuous Deployment
 
How to Un-Flake Flaky Tests - A New Hire's Toolkit
How to Un-Flake Flaky Tests - A New Hire's ToolkitHow to Un-Flake Flaky Tests - A New Hire's Toolkit
How to Un-Flake Flaky Tests - A New Hire's Toolkit
 
The history of testing framework in Ruby
The history of testing framework in RubyThe history of testing framework in Ruby
The history of testing framework in Ruby
 
Selenium RC - Web Application Testing Tool
Selenium RC - Web Application Testing ToolSelenium RC - Web Application Testing Tool
Selenium RC - Web Application Testing Tool
 
Selenium Classroom Training
Selenium Classroom TrainingSelenium Classroom Training
Selenium Classroom Training
 
How to Un-Flake Flaky Tests - A New Hire's Toolkit
How to Un-Flake Flaky Tests - A New Hire's ToolkitHow to Un-Flake Flaky Tests - A New Hire's Toolkit
How to Un-Flake Flaky Tests - A New Hire's Toolkit
 
Selenium
SeleniumSelenium
Selenium
 
Selenium-Grid-Extras
Selenium-Grid-ExtrasSelenium-Grid-Extras
Selenium-Grid-Extras
 

Plus de seleniumconf

Using Selenium to Improve a Teams Development Cycle
Using Selenium to Improve a Teams Development CycleUsing Selenium to Improve a Teams Development Cycle
Using Selenium to Improve a Teams Development Cycle
seleniumconf
 
Building Quality with Foundations of Mud
Building Quality with Foundations of MudBuilding Quality with Foundations of Mud
Building Quality with Foundations of Mud
seleniumconf
 
More Than Automation - How Good Acceptance Tests Can Make Your Team Happier
More Than Automation - How Good Acceptance Tests Can Make Your Team HappierMore Than Automation - How Good Acceptance Tests Can Make Your Team Happier
More Than Automation - How Good Acceptance Tests Can Make Your Team Happier
seleniumconf
 
Building a Selenium Community One Meetup at a Time
Building a Selenium Community One Meetup at a TimeBuilding a Selenium Community One Meetup at a Time
Building a Selenium Community One Meetup at a Time
seleniumconf
 
Introduction to selenium_grid_workshop
Introduction to selenium_grid_workshopIntroduction to selenium_grid_workshop
Introduction to selenium_grid_workshop
seleniumconf
 
Automated Security Testing
Automated Security TestingAutomated Security Testing
Automated Security Testing
seleniumconf
 
Selenium: State of the Union
Selenium: State of the UnionSelenium: State of the Union
Selenium: State of the Union
seleniumconf
 
Introducing Selenium Builder – the Future of Test Development
Introducing Selenium Builder – the Future of Test DevelopmentIntroducing Selenium Builder – the Future of Test Development
Introducing Selenium Builder – the Future of Test Development
seleniumconf
 
Self-Generating Test Artifacts for Selenium/WebDriver
Self-Generating Test Artifacts for Selenium/WebDriverSelf-Generating Test Artifacts for Selenium/WebDriver
Self-Generating Test Artifacts for Selenium/WebDriver
seleniumconf
 
Automated Web App Performance Testing Using WebDriver
Automated Web App Performance Testing Using WebDriverAutomated Web App Performance Testing Using WebDriver
Automated Web App Performance Testing Using WebDriver
seleniumconf
 
Testing Rapidly Changing Applications With Self-Testing Object-Oriented Selen...
Testing Rapidly Changing Applications With Self-Testing Object-Oriented Selen...Testing Rapidly Changing Applications With Self-Testing Object-Oriented Selen...
Testing Rapidly Changing Applications With Self-Testing Object-Oriented Selen...
seleniumconf
 
Building a Driver: Lessons Learned From Developing the Internet Explorer Driver
Building a Driver: Lessons Learned From Developing the Internet Explorer DriverBuilding a Driver: Lessons Learned From Developing the Internet Explorer Driver
Building a Driver: Lessons Learned From Developing the Internet Explorer Driver
seleniumconf
 

Plus de seleniumconf (12)

Using Selenium to Improve a Teams Development Cycle
Using Selenium to Improve a Teams Development CycleUsing Selenium to Improve a Teams Development Cycle
Using Selenium to Improve a Teams Development Cycle
 
Building Quality with Foundations of Mud
Building Quality with Foundations of MudBuilding Quality with Foundations of Mud
Building Quality with Foundations of Mud
 
More Than Automation - How Good Acceptance Tests Can Make Your Team Happier
More Than Automation - How Good Acceptance Tests Can Make Your Team HappierMore Than Automation - How Good Acceptance Tests Can Make Your Team Happier
More Than Automation - How Good Acceptance Tests Can Make Your Team Happier
 
Building a Selenium Community One Meetup at a Time
Building a Selenium Community One Meetup at a TimeBuilding a Selenium Community One Meetup at a Time
Building a Selenium Community One Meetup at a Time
 
Introduction to selenium_grid_workshop
Introduction to selenium_grid_workshopIntroduction to selenium_grid_workshop
Introduction to selenium_grid_workshop
 
Automated Security Testing
Automated Security TestingAutomated Security Testing
Automated Security Testing
 
Selenium: State of the Union
Selenium: State of the UnionSelenium: State of the Union
Selenium: State of the Union
 
Introducing Selenium Builder – the Future of Test Development
Introducing Selenium Builder – the Future of Test DevelopmentIntroducing Selenium Builder – the Future of Test Development
Introducing Selenium Builder – the Future of Test Development
 
Self-Generating Test Artifacts for Selenium/WebDriver
Self-Generating Test Artifacts for Selenium/WebDriverSelf-Generating Test Artifacts for Selenium/WebDriver
Self-Generating Test Artifacts for Selenium/WebDriver
 
Automated Web App Performance Testing Using WebDriver
Automated Web App Performance Testing Using WebDriverAutomated Web App Performance Testing Using WebDriver
Automated Web App Performance Testing Using WebDriver
 
Testing Rapidly Changing Applications With Self-Testing Object-Oriented Selen...
Testing Rapidly Changing Applications With Self-Testing Object-Oriented Selen...Testing Rapidly Changing Applications With Self-Testing Object-Oriented Selen...
Testing Rapidly Changing Applications With Self-Testing Object-Oriented Selen...
 
Building a Driver: Lessons Learned From Developing the Internet Explorer Driver
Building a Driver: Lessons Learned From Developing the Internet Explorer DriverBuilding a Driver: Lessons Learned From Developing the Internet Explorer Driver
Building a Driver: Lessons Learned From Developing the Internet Explorer Driver
 

Dernier

Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
 

Dernier (20)

Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Ransomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfRansomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdf
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
A Beginners Guide to Building a RAG App Using Open Source Milvus
A Beginners Guide to Building a RAG App Using Open Source MilvusA Beginners Guide to Building a RAG App Using Open Source Milvus
A Beginners Guide to Building a RAG App Using Open Source Milvus
 
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 

Massively Continuous Integration: From 3 days to 30 minutes

Notes de l'éditeur

  1. \n
  2. \n
  3. \n
  4. \n
  5. \n
  6. \n
  7. \n
  8. \n
  9. \n
  10. \n
  11. \n
  12. \n
  13. \n
  14. \n
  15. \n
  16. \n
  17. \n
  18. \n
  19. \n
  20. \n
  21. \n
  22. \n
  23. \n
  24. \n
  25. \n
  26. \n
  27. \n
  28. \n
  29. \n
  30. \n
  31. \n
  32. \n
  33. \n
  34. \n
  35. \n
  36. \n
  37. \n
  38. \n
  39. \n
  40. \n
  41. \n
  42. \n
  43. \n
  44. \n
  45. \n
  46. \n
  47. \n
  48. \n
  49. \n
  50. \n
  51. \n
  52. \n
  53. \n
  54. \n
  55. \n
  56. \n
  57. \n
  58. \n
  59. \n
  60. \n
  61. \n
  62. \n
  63. \n
  64. \n
  65. \n
  66. \n
  67. \n
  68. \n
  69. \n
  70. \n
  71. \n
  72. \n
  73. \n
  74. \n
  75. \n
  76. \n
  77. \n
  78. \n
  79. \n
  80. \n
  81. \n
  82. \n
  83. \n
  84. \n
  85. \n
  86. \n
  87. \n
  88. \n
  89. \n
  90. \n
  91. \n
  92. \n
  93. \n
  94. \n
  95. \n
  96. \n
  97. \n
  98. \n
  99. \n
  100. \n
  101. \n
  102. \n
  103. \n
  104. \n
  105. \n
  106. \n
  107. \n
  108. \n
  109. \n
  110. \n
  111. \n
  112. \n
  113. \n
  114. \n
  115. \n
  116. \n
  117. \n
  118. \n
  119. \n
  120. \n
  121. \n
  122. \n
  123. \n
  124. \n
  125. \n
  126. \n
  127. \n
  128. \n
  129. \n
  130. \n
  131. \n
  132. \n