QA in DevOps: Transformation thru Automation via Jenkins

Embed Size (px)

Text of QA in DevOps: Transformation thru Automation via Jenkins

  1. 1. Jenkins World Tour 2015 Washington D.C., June 2015
  2. 2. #jenkinsconf QA in DevOps: Transformation thru Automation via Jenkins
  3. 3. #jenkinsconf Introduction Definition of DevOps 10 Steps to DevOps Transformation Target State Agenda
  4. 4. #jenkinsconf Tanya Kravtsov Head of Automation and Continuous Delivery at Founder of DevOpsQA NJ Meetup group Developer turned Tester Ballroom Dancer turned Mom @tkravtsov Introduction
  5. 5. #jenkinsconf Definition of DevOps ULTURE UTOMATION EAN ONITORING HARING
  6. 6. #jenkinsconf Identify Bottlenecks Step 1
  7. 7. #jenkinsconf Any improvements made anywhere besides the bottleneck are an illusion Identify the Bottlenecks
  8. 8. #jenkinsconf Setup common repository for build, test, deploy artifacts Step 2
  9. 9. #jenkinsconf SCM Repository Development and Test Artifacts Source Code Build Scripts Requirements Test Scripts Infrastructure configuration Software Repository Release/Deployment Artifacts JAR, WAR and EAR files Release Notes Common Repository for Artifacts
  10. 10. #jenkinsconf Automate the Build Step 3
  11. 11. #jenkinsconf Automate Compiling computer code into binary Packaging binary code Deploying to test and production environments Creating documentation Automated Build
  12. 12. #jenkinsconf Setup a CI Server Step 4
  13. 13. #jenkinsconf Setup Jenkins 1. Install Jenkins CI 2. Configure Jenkins Server Enter JDK and Build System Secure Jenkins 3. Install Jenkins Plugins E.g. Git, PMD, Junit 4. Configure Version Control System 5. Setup Jenkins Job CI Server Setup
  14. 14. #jenkinsconf Automate Unit Tests and Adapt TDD Step 5
  15. 15. #jenkinsconf Unit Tests Short independent tests Tests only fail when a bug is introduced When tests fail, we know the reason TDD 1. Write Test First 2. Write enough code to make the first test fail 3. Fix the code to make the test pass 4. Repeat Automated Unit Testing
  16. 16. #jenkinsconf Collect Automated Code Quality Metrics Step 6
  17. 17. #jenkinsconf Static Analysis Security vulnerabilities Common and critical defects Coding Standards Memory Leaks Code Coverage Analysis Measure Unit Test Coverage Measure application-level test coverage Automated Code Quality Metrics
  18. 18. #jenkinsconf Create Environment Readiness Smoke test Step 7
  19. 19. #jenkinsconf Automated Environment Readiness test Application Server Web Server Database Server Automation Framework Artifacts Authentication Virtual Machines Automated Product Readiness test Validate critical functionality Automated Smoke Test
  20. 20. #jenkinsconf Run Automated Regression nightly Step 8
  21. 21. #jenkinsconf Test Automation Automated Web Services Testing Automated UI Testing Parallel Execution Virtualized Test Lab Central Management Dashboard Automated Test Data Management Retrieval Generation Cleanup Selective Testing Pairwise testing Searchable Test Case Repository Automated Regression
  22. 22. #jenkinsconf Automate Environment configuration and provisioning Step 9
  23. 23. #jenkinsconf Automated Environment Setup process Infrastructure as Code Automated Configuration Management Virtualization Automated Environment
  24. 24. #jenkinsconf Automate Test Results Analysis and Reporting Step 10
  25. 25. #jenkinsconf Automated Test Results Analysis Consolidated Results Failure Analysis Defect Logging Automated Results Reporting Automated Email Notifications Reporting Dashboard Excel, PowerPoint, ALM Root Cause Analysis Automated Analysis and Reporting
  26. 26. Footer #jenkinsconf Target State