Modern Functional Testing & DevOps
Karim Fanadka
Senior Software Engineer (DevOps)
About me
▪ Senior Engineer Software Salesforce
▪ QA Group Manager at HP Software
▪ 11 Years of experience in testing
▪ Blogger and thought leader in QA
▪ Volunteering to help Arabs in Hi-Tech
2
Work
3
QA Team Structure
QA Team Structure – Hybrid
QA Manager
Automation /
Manual
Automation Manual Expert Manual Automation /
Manual
Timeline VS Tasks
7
8
This what will happen when QA is not
in shape to run fast
QA Vs Time
9
25.05.2018 19.08.2018
10.06.2018
SRF 1.60 GA
03.06.2018
Staging 1.60
25.05.2018
CF 1.60
19.08.2018
SRF 1.61 GA
12.08.2018
Staging 1.61
03.08.2018
CF 1.61
20.07.2018
FF 1.61
23/07/2018-01/08/2018
9 Days Regression
19/07/2018-25/07/2018
Performance regression
21/06/2018-19/07/2018
Feature Testing
02/06/2018-20/06/2018
Automation
~2.5 months = ~50 work days
Planning
QA Vs Time
10
25.05.2018 19.08.2018
10.06.2018
SRF 1.60 GA
03.06.2018
Staging 1.60
25.05.2018
CF 1.60
19.08.2018
SRF 1.61 GA
12.08.2018
Staging 1.61
03.08.2018
CF 1.61
20.07.2018
FF 1.61
23/07/2018-01/08/2018
9 Days Regression
19/07/2018-25/07/2018
Performance regression
21/06/2018-19/07/2018
Feature Testing
02/06/2018-20/06/2018
Automation
~2.5 months = ~50 work days
Automation
QA Vs Time
11
25.05.2018 19.08.2018
10.06.2018
SRF 1.60 GA
03.06.2018
Staging 1.60
25.05.2018
CF 1.60
19.08.2018
SRF 1.61 GA
12.08.2018
Staging 1.61
03.08.2018
CF 1.61
20.07.2018
FF 1.61
23/07/2018-01/08/2018
9 Days Regression
19/07/2018-25/07/2018
Performance regression
21/06/2018-19/07/2018
Feature Testing
02/06/2018-20/06/2018
Automation
~2.5 months = ~50 work days
Feature Manual Testing
QA Vs Time
12
25.05.2018 19.08.2018
10.06.2018
SRF 1.60 GA
03.06.2018
Staging 1.60
25.05.2018
CF 1.60
19.08.2018
SRF 1.61 GA
12.08.2018
Staging 1.61
03.08.2018
CF 1.61
20.07.2018
FF 1.61
23/07/2018-01/08/2018
9 Days Regression
19/07/2018-25/07/2018
Performance regression
21/06/2018-19/07/2018
Feature Testing
02/06/2018-20/06/2018
Automation
~2.5 months = ~50 work days
Regression
Test Environments
Dev Commit CI Run Micro Service
Tests
• Micro service API coverage
• Smoke level (CRUD)
Upload
To Registry
Dev Env
Deployment
QA Env
Deployment
QA Automation
Stable
• E2E Using REST
• UI Automation
• Replay LeanFT Scripts
• Remote tests:
UFT/LFT/Selenium
• Daily
SaaS Non-Prod
• Running Integration tests
• Working on a real SaaS ENV
• Most of the QA coverage is
done here
SaaS staging
Production
Test Environment
Automation Env
17
Automation
Tests
API
UI
Framework
Local Lab
Cloud Lab
Automation
Tests
Test Lab
Testing – Lab Coverage
19
Local Lab
Automation
Mobile Lab
24
Tunnel Run
Automation
Automation Microservices
27
NEW MS Docker Image
Upload to
Registry
Build new MS
Report
TestsExecution
Results
SRF-Green
Deployment
Abort Uploading
new image to Registry
ContinuousDelivery
API TestsMicroservice
Mocks
+
Docker Testing Container
api.tests.common
module
NEXUS Import
Notify
Developer
General Test API’s
API Testing
SRF
API Integration
Tests
UI Tests
Utilities and Tools
Exam
Framework Users
Methods for expanding the
framework capabilities
Example
Request handler for parsing
the response, and catch and
log errors
REST end points organized by
SRF pages for easy view and
search
Example
SRF.automation.getMobileDevi
ces
Request loader tool for
tracing 502 errors
Data population at the
beginning of a test run
Complete REST end points
testing to ensure correct
response and valid data
API Framework
Integrations
29
Integration
Test Engine
Management
Tracking daily work
ALM Octane - Enterprise Agile Delivery
31
Tracking Automation
32
Regression – Before
33
Regression – Today - Automation VS Manual
34
Application Module
Manual Tests
Automatic
Tests
35
Changing our mindset
takes precedence over
technology. When we
work together, we will
succeed.”
Thank you.
kareem9k@gmail.com
Karim Fanadka
Senior Software Engineer (DevOps)

Modern software testing and processes 2019

  • 1.
    Modern Functional Testing& DevOps Karim Fanadka Senior Software Engineer (DevOps)
  • 2.
    About me ▪ SeniorEngineer Software Salesforce ▪ QA Group Manager at HP Software ▪ 11 Years of experience in testing ▪ Blogger and thought leader in QA ▪ Volunteering to help Arabs in Hi-Tech 2
  • 3.
  • 4.
  • 5.
    QA Team Structure– Hybrid QA Manager Automation / Manual Automation Manual Expert Manual Automation / Manual
  • 6.
  • 7.
  • 8.
    8 This what willhappen when QA is not in shape to run fast
  • 9.
    QA Vs Time 9 25.05.201819.08.2018 10.06.2018 SRF 1.60 GA 03.06.2018 Staging 1.60 25.05.2018 CF 1.60 19.08.2018 SRF 1.61 GA 12.08.2018 Staging 1.61 03.08.2018 CF 1.61 20.07.2018 FF 1.61 23/07/2018-01/08/2018 9 Days Regression 19/07/2018-25/07/2018 Performance regression 21/06/2018-19/07/2018 Feature Testing 02/06/2018-20/06/2018 Automation ~2.5 months = ~50 work days Planning
  • 10.
    QA Vs Time 10 25.05.201819.08.2018 10.06.2018 SRF 1.60 GA 03.06.2018 Staging 1.60 25.05.2018 CF 1.60 19.08.2018 SRF 1.61 GA 12.08.2018 Staging 1.61 03.08.2018 CF 1.61 20.07.2018 FF 1.61 23/07/2018-01/08/2018 9 Days Regression 19/07/2018-25/07/2018 Performance regression 21/06/2018-19/07/2018 Feature Testing 02/06/2018-20/06/2018 Automation ~2.5 months = ~50 work days Automation
  • 11.
    QA Vs Time 11 25.05.201819.08.2018 10.06.2018 SRF 1.60 GA 03.06.2018 Staging 1.60 25.05.2018 CF 1.60 19.08.2018 SRF 1.61 GA 12.08.2018 Staging 1.61 03.08.2018 CF 1.61 20.07.2018 FF 1.61 23/07/2018-01/08/2018 9 Days Regression 19/07/2018-25/07/2018 Performance regression 21/06/2018-19/07/2018 Feature Testing 02/06/2018-20/06/2018 Automation ~2.5 months = ~50 work days Feature Manual Testing
  • 12.
    QA Vs Time 12 25.05.201819.08.2018 10.06.2018 SRF 1.60 GA 03.06.2018 Staging 1.60 25.05.2018 CF 1.60 19.08.2018 SRF 1.61 GA 12.08.2018 Staging 1.61 03.08.2018 CF 1.61 20.07.2018 FF 1.61 23/07/2018-01/08/2018 9 Days Regression 19/07/2018-25/07/2018 Performance regression 21/06/2018-19/07/2018 Feature Testing 02/06/2018-20/06/2018 Automation ~2.5 months = ~50 work days Regression
  • 13.
  • 14.
    Dev Commit CIRun Micro Service Tests • Micro service API coverage • Smoke level (CRUD) Upload To Registry Dev Env Deployment QA Env Deployment QA Automation Stable • E2E Using REST • UI Automation • Replay LeanFT Scripts • Remote tests: UFT/LFT/Selenium • Daily SaaS Non-Prod • Running Integration tests • Working on a real SaaS ENV • Most of the QA coverage is done here SaaS staging Production Test Environment
  • 17.
  • 18.
  • 19.
    Testing – LabCoverage 19 Local Lab Automation
  • 20.
  • 24.
  • 25.
  • 26.
  • 27.
    Automation Microservices 27 NEW MSDocker Image Upload to Registry Build new MS Report TestsExecution Results SRF-Green Deployment Abort Uploading new image to Registry ContinuousDelivery API TestsMicroservice Mocks + Docker Testing Container api.tests.common module NEXUS Import Notify Developer General Test API’s
  • 28.
    API Testing SRF API Integration Tests UITests Utilities and Tools Exam Framework Users Methods for expanding the framework capabilities Example Request handler for parsing the response, and catch and log errors REST end points organized by SRF pages for easy view and search Example SRF.automation.getMobileDevi ces Request loader tool for tracing 502 errors Data population at the beginning of a test run Complete REST end points testing to ensure correct response and valid data API Framework
  • 29.
  • 30.
  • 31.
    Tracking daily work ALMOctane - Enterprise Agile Delivery 31
  • 32.
  • 33.
  • 34.
    Regression – Today- Automation VS Manual 34 Application Module Manual Tests Automatic Tests
  • 35.
    35 Changing our mindset takesprecedence over technology. When we work together, we will succeed.”
  • 36.

Editor's Notes

  • #9 This what will happen when is not in shape to run fast
  • #16 When a test fail in CI/CD (Jenkins) the branch of Release will be blocked, in this slide we see that it is closed because tests failed, in the next picture we will see when it is opened after the bug was fixed and automation passed successfully.
  • #17 Real example from my team, Olga is a DevTest in my team, she send a notification mail to Developers saying that branch was closed, and a defect was opened because a automatic test failed (automation find a real defect) I am sure that a developer pushed code and damaged some other parts in the product. Then we see a mail from Developer his name is Ilan.
  • #18 Unstable automation should be removed Using SRF
  • #21 Can we test our APP’s with all devices?
  • #23 Exploratory Web
  • #24 Exploratory mobile
  • #25 Automation
  • #28 Unstable automation should be removed Using SRF
  • #30 Who should test tools and what about automation Example for MC / LFT / UFT
  • #32 Track daily work to make sure Agile is done as expected Agile doesn’t work out of the box, we should keep tracking
  • #33 Unstable automation should be removed
  • #34 Regression plan how it was before and what we do today with Octane
  • #35 Who we do regression today Automation VS Manual
  • #36 שינוי החשיבה שלנו בעדיפות על פני הטכנולוגיה. כאשר נעבוד ביחד, נצליח