shift left continuous performance testing in the ci cd
play

Shift Left: Continuous Performance Testing in the CI/CD - PDF document

DT3 Integrating Testing into DevOps Thursday, November 8th, 2018 10:00 AM Shift Left: Continuous Performance Testing in the CI/CD


  1. ¡ ¡ DT3 ¡ Integrating ¡Testing ¡into ¡DevOps ¡ Thursday, ¡November ¡8th, ¡2018 ¡10:00 ¡AM ¡ ¡ ¡ ¡ ¡ ¡ ¡ Shift ¡Left: ¡Continuous ¡Performance ¡ Testing ¡in ¡the ¡CI/CD ¡Pipeline ¡ ¡ Presented ¡by: ¡ ¡ ¡ Gajan ¡ ¡Pathmanathan ¡ Quicken ¡Loans ¡ ‘ ¡ ¡ ¡ Brought ¡to ¡you ¡by: ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ 350 ¡Corporate ¡Way, ¡Suite ¡400, ¡Orange ¡Park, ¡FL ¡32073 ¡ ¡ 888 -­‑-­‑-­‑ 268 -­‑-­‑-­‑ 8770 ¡ ·√·√ ¡904 -­‑-­‑-­‑ 278 -­‑-­‑-­‑ 0524 ¡-­‑ ¡info@techwell.com ¡-­‑ ¡http://www.starwest.techwell.com/ ¡ ¡ ¡ ¡

  2. ¡ ¡ ¡ ¡ Gajan ¡ ¡Pathmanathan ¡ ¡ ¡ Gajan ¡Pathmanathan ¡is ¡a ¡quality ¡evangelist, ¡DevOps ¡enthusiast, ¡and ¡engineering ¡ leader ¡with ¡fifteen ¡years ¡of ¡experience ¡in ¡designing, ¡developing, ¡and ¡testing ¡ software. ¡He ¡currently ¡leads ¡the ¡Enterprise ¡Quality ¡Architecture ¡team ¡at ¡Quicken ¡ Loans, ¡where ¡he ¡is ¡responsible ¡for ¡implementing ¡solutions ¡and ¡strategies ¡for ¡ continuous ¡quality ¡and ¡quality-­‑driven ¡development ¡across ¡the ¡enterprise. ¡Before ¡ joining ¡Quicken ¡Loans, ¡Gajan ¡worked ¡at ¡Intel ¡Security/McAfee ¡as ¡a ¡lead ¡engineer ¡ and ¡led ¡the ¡team ¡that ¡was ¡responsible ¡for ¡defining ¡quality ¡processes ¡and ¡test ¡ automation ¡processes ¡across ¡the ¡organization. ¡Gajan ¡holds ¡a ¡master's ¡degree ¡in ¡ computer ¡engineering ¡from ¡the ¡University ¡of ¡Waterloo, ¡Canada, ¡and ¡he ¡is ¡a ¡certified ¡ SOA ¡Architect ¡and ¡ScrumMaster. ¡Gajan ¡has ¡given ¡guest ¡lectures ¡at ¡technical ¡ institutes ¡and ¡spoken ¡regularly ¡at ¡technical ¡conferences ¡across ¡Canada ¡and ¡the ¡ United ¡States. ¡ ¡ ¡

  3. 10/29/2018 Shift Left: Continuous Performance Testing in the CI/CD Pipeline Gajan Pathmanathan Engineering Leader @ Quicken Loans https://www.linkedin.com/in/ gajanp https://twitter.com/ gajanp Awar ard-Win Winnin ning g Culture ture 1

  4. 10/29/2018 More Than Just Mortg tgag ages … FINTECH PRIVATE EQUITY REAL ESTATE SPORTS/MEDIA/ENTERTAINMENT/ GAMING/HOTELS FOC INVESTEMENTS VENTURE CAPTIAL On The Agenda 2

  5. 10/29/2018 What is Continuous Performance Testing? 01 The Why Behind The What 02 Recommended Process 03 01 03 Tooling 04 04 02 Demo 05 05 What is Continuous Performance Testing? 3

  6. 10/29/2018 7 Continuous Performance Testing A process of executing automated performance tests as part of delivery pipelines 8 4

  7. 10/29/2018 Types ❑ Performance Smoke/Regression Testing ❑ End-to-End Performance Testing 9 The Why Behind The What 5

  8. 10/29/2018 “You can fix it now on the drafting board with an eraser, or you can fix it later on the construction site with a sledgehammer.” 11 https://reqtest.com/general/a-bug-goes-skateboarding-on-boehms-curve/ 12 6

  9. 10/29/2018 13 14 7

  10. 10/29/2018 8

  11. 10/29/2018 17 9

  12. 10/29/2018 Performance & User Behavior https://raygun.com/blog/cost-of-software-errors/ Process 10

  13. 10/29/2018 Maturity Levels N/A Manual Automated (manual run) Continuous Performance Release Gate Management 21 22 11

  14. 10/29/2018 23 24 12

  15. 10/29/2018 25 26 13

  16. 10/29/2018 Tooling 14

  17. 10/29/2018 30 15

  18. 10/29/2018 ❑ Open source desktop application written in Java ❑ Plugin-based architecture ❑ 20+ years in existence 31 ❑ Open source tool written in Python ❑ 5+ years in existence ❑ Code-driven framework 32 16

  19. 10/29/2018 ❑ Open source automation framework written in Python ❑ Taurus – T est Au tomation Ru nning S moothly ❑ Abstracts other testing tools 33 Feature comparison Feature JMeter Locust Open Source Yes Yes Operating System Any Any Yes GUI No (non-GUI mode available) Recording Functionality Yes No Test Recorder HTTP No Test Language XML Python Extension Language Java, Beanshell, Javascript, Jexl Python CSV, XML, Embedded Tables, Load Reports HTML Graphs, Plugins 17

  20. 10/29/2018 Feature comparison Feature JMeter Locust HTTP, FTP, JDBC, SOAP Protocol Support LDAP, TCP, JMS, SMTP HTTP (in-built) POP3, IMAP Console, File, Graphs Console Execution Monitoring Desktop client Web Custom plugins Yes Integrated Host monitoring No (PerfMon plugin) Support of “Test as Code” Weak (Java) Strong (Python) Feature comparison Feature JMeter Locust Distributed Execution Yes Yes Easy to use with VCS No Yes Resources Consumption More resources required Less resources required Thousands Number of Concurrent Users Thousands (under restrictions) Ramp-up Flexibility Yes No Test Results Analyzing Yes Yes 18

  21. 10/29/2018 Demo Let’s Look at… ❑ JMeter & Taurus Command Line Tool (bzt) ❑ Locust & Taurus Command Line Tool (bzt) ❑ Integration with Jenkins (Build step) o Command (bat or sh) o Performance plugin 38 19

  22. 10/29/2018 ❑ JMeter: http://jmeter.apache.org/ ❑ Locust: https://locust.io/ ❑ Taurus: http://gettaurus.org/ ❑ Performance Plugin: https://wiki.jenkins.io/display/JENKINS/Performance+Plugin 39 Questions? Come up and chat! You can find me at: @gajanp Feedback is a GIFT! 20

Recommend


More recommend