SlideShare a Scribd company logo
1 of 46
Download to read offline
QA on Drupal projects
Alejandro Gómez @agomezmoron
About me
Alejandro Gómez - @agomezmoron
Loving my work at @LaDrupalera by @Emergya
Lecturer at @pablodeolavide University
QA & Tech lover (Selenium, Java, Drupal, Ionic, AngularJS, Gulp…)
I am passionate about challenges and I hate repeating processes!
Roadmap
1. What QA really means
2. Integrating QA teams into Drupal teams: The
team
3. Type of tests to be applied
4. Continuous Integration
a. Code Inspection
b. Unit testing
c. Performance testing
d. Continuous Delivery with Docker
e. Functional testing through Selenium
Roadmap
1. What QA really means
2. Integrating QA teams into Drupal teams: The
team
3. Type of tests to be applied
4. Continuous Integration
a. Code Inspection
b. Unit testing
c. Performance testing
d. Continuous Delivery with Docker
e. Functional testing through Selenium
What QA really means
QA on Drupal projects
● Different approaches
@agomezmoron
What QA really means
QA on Drupal projects
● What almost everyone thinks
@agomezmoron
What QA really means
QA on Drupal projects
● What a small group of people thinks
@agomezmoron
What QA really means
QA on Drupal projects
@agomezmoron
What QA really means
QA on Drupal projects
@agomezmoron
What QA really means
QA on Drupal projects
● Commitment
● Continuous process
● Definition (scope, DoD, workflow)
● Standards (code style, documentation, etc)
● Testing (to avoid defects)
● Delivering
● Validation (Have we done what we had to?)
@agomezmoron
Roadmap
1. What QA really means
2. Integrating QA teams into Drupal teams: The
team
3. Type of tests to be applied
4. Continuous Integration
a. Code Inspection
b. Unit testing
c. Performance testing
d. Continuous Delivery with Docker
e. Functional testing through Selenium
12
Integrating QA teams into Drupal teams: The team
QA on Drupal projects
@agomezmoron
13
Integrating QA teams into Drupal teams: The team
QA on Drupal projects
@agomezmoron
14
Integrating QA teams into Drupal teams: The team
QA on Drupal projects
@agomezmoron
Integrating QA teams into Drupal teams: The team
QA on Drupal projects
QA
Roadmap
1. What QA really means
2. Integrating QA teams into Drupal teams: The
team
3. Type of tests to be applied
4. Continuous Integration
a. Code Inspection
b. Unit testing
c. Performance testing
d. Continuous Delivery with Docker
e. Functional testing through Selenium
Type of tests to be applied
17
QA on Drupal projects
Unit Tests guarantee the quality of the Drupal core/modules.
Functional tests are split into different suites:
● Acceptance/Smoke: Guarantees the quality of the core of the project.
● Regression: Guarantees the quality of the entire app.
● Progression: Guarantees the quality of the current development
(release).
Performance tests guarantee the system availability.
Responsive tests guarantee the defined responsive rules.
@agomezmoron
Type of tests to be applied
18
QA on Drupal projects
Unit Tests guarantee the quality of the Drupal core/modules.
Functional tests are split into different suites:
● Acceptance/Smoke: Guarantees the quality of the core of the project.
● Regression: Guarantees the quality of the entire app.
● Progression: Guarantees the quality of the current development
(release).
Performance tests guarantee the system availability.
Responsive tests guarantee the defined responsive rules.
@agomezmoron
Type of tests to be applied
19
When will I know the tests are enough?
QA on Drupal projects
@agomezmoron
Roadmap
1. What QA really means
2. Integrating QA teams into Drupal teams: The
team
3. Type of tests to be applied
4. Continuous Integration
a. Code Inspection
b. Unit testing
c. Performance testing
d. Continuous Delivery with Docker
e. Functional testing through Selenium
Continuous Integration
21
QA on Drupal projects
Roadmap
1. What QA really means
2. Integrating QA teams into Drupal teams: The
team
3. Type of tests to be applied
4. Continuous Integration
a. Code Inspection
b. Unit testing
c. Performance testing
d. Functional testing through Selenium
e. Continuous Delivery with Docker
CI - Code Inspection
23
QA on Drupal projects
@agomezmoron
Roadmap
1. What QA really means
2. Integrating QA teams into Drupal teams: The
team
3. Type of tests to be applied
4. Continuous Integration
a. Code Inspection
b. Unit testing
c. Performance testing
d. Continuous Delivery with Docker
e. Functional testing through Selenium
CI - Unit Testing
25
QA on Drupal projects
@agomezmoron
Roadmap
1. What QA really means
2. Integrating QA teams into Drupal teams: The
team
3. Type of tests to be applied
4. Continuous Integration
a. Code Inspection
b. Unit testing
c. Performance testing
d. Continuous Delivery with Docker
e. Functional testing through Selenium
27
QA on Drupal projects
CI - Performance testing
@agomezmoron
Roadmap
1. What QA really means
2. Integrating QA teams into Drupal teams: The
team
3. Type of tests to be applied
4. Continuous Integration
a. Code Inspection
b. Unit testing
c. Performance testing
d. Continuous Delivery with Docker
e. Functional testing through Selenium
Continuous Delivery with Docker (I)
29
QA on Drupal projects
@agomezmoron
Continuous Delivery with Docker (II)
30
QA on Drupal projects
Based on a docker Ubuntu 14:04 TLS (fork of Wouter Admiraal’s):
● Apache 2.4
● MySQL 5.5
● PHP 5.6
● Drush 7 or latest release of Drupal Console.
● Drupal 7.44 (7.x) or 8.1.2 (8.x)
● Composer
● PHPMyAdmin
Docker version >= 1.9!!
@agomezmoron
Continuous Delivery with Docker (III)
31
QA on Drupal projects
@agomezmoron
Docker version >= 1.9!!
Continuous Delivery with Docker (III)
32
QA on Drupal projects
@agomezmoron
Docker version >= 1.9!!
Continuous Delivery with Docker (IV)
33
QA on Drupal projects
git clone https://github.com/agomezmoron/docker-drupal.git
cd drupal-7
docker build --build-arg MYSQL_ROOT_PASSWORD=admin,
DRUPAL_ADMIN_PASSWORD=admin,SSH_ROOT_PASSWORD=root,
DRUPAL_VERSION=7.44 -t yourname/drupal7 .
cd drupal-8
docker build --build-arg MYSQL_ROOT_PASSWORD=admin,
DRUPAL_ADMIN_PASSWORD=admin,SSH_ROOT_PASSWORD=root,
DRUPAL_VERSION=8.1.2 -t yourname/drupal8 .
Docker version >= 1.9!!
@agomezmoron
Docker also for Selenium
34
QA on Drupal projects
@agomezmoron
Roadmap
1. What QA really means
2. Integrating QA teams into Drupal teams: The
team
3. Type of tests to be applied
4. Continuous Integration
a. Code Inspection
b. Unit testing
c. Performance testing
d. Continuous Delivery with Docker
e. Functional testing through Selenium
Functional testing through Selenium
36
QA on Drupal projects
● Functional tests
○ Acceptance
○ Progression
○ Regression
● Testing the app as a user does it
@agomezmoron
37
We came to play...
QA on Drupal projects
@agomezmoron
Workflow
38
QA on Drupal projects
@agomezmoron
Conclusions
39
● If someone finds bugs, awesome. Do not hide the bugs from your customers.
● Fixing bugs should be one of your priorities!
● Code styling is as important as passing tests!
QA on Drupal projects
@agomezmoron
Conclusions
40
● Create a QA culture in the teams.
● QA is more than testing: Commitment, Code style, Continuous
Integration, Unit Testing, Functional testing, Continous Delivery...
QA on Drupal projects
@briansolis
@agomezmoron
Conclusions
41
QA on Drupal projects
@agomezmoron
Conclusions
42
QA on Drupal projects
@agomezmoron
Thanks to them: They are the true core!
43
QA on Drupal projects
@agomezmoron
44
Questions?
QA on Drupal projects
@agomezmoron
45
Thanks!
QA on Drupal projects
@agomezmoron
QA on drupal projects

More Related Content

What's hot

Tooling for the productive front end developer
Tooling for the productive front end developerTooling for the productive front end developer
Tooling for the productive front end developerMaurice De Beijer [MVP]
 
Олексій Єгошин “Проект під тиском? Як вижити” Kyiv Project Management Day (28...
Олексій Єгошин “Проект під тиском? Як вижити” Kyiv Project Management Day (28...Олексій Єгошин “Проект під тиском? Як вижити” Kyiv Project Management Day (28...
Олексій Єгошин “Проект під тиском? Як вижити” Kyiv Project Management Day (28...Lviv Startup Club
 
Product development and tools
Product development and toolsProduct development and tools
Product development and toolsroelofr
 
Story Testing Approach for Enterprise Applications using Selenium Framework
Story Testing Approach for Enterprise Applications using Selenium FrameworkStory Testing Approach for Enterprise Applications using Selenium Framework
Story Testing Approach for Enterprise Applications using Selenium FrameworkOleksiy Rezchykov
 
Gradle enabled android project
Gradle enabled android projectGradle enabled android project
Gradle enabled android projectShaka Huang
 
Lightweight continuous delivery for small schools
Lightweight continuous delivery for small schoolsLightweight continuous delivery for small schools
Lightweight continuous delivery for small schoolsCharles Fulton
 
Go Pro, Inc. Case Study: Dive into the details of our node.js applications
Go Pro, Inc. Case Study: Dive into the details of our node.js applicationsGo Pro, Inc. Case Study: Dive into the details of our node.js applications
Go Pro, Inc. Case Study: Dive into the details of our node.js applicationsAndrew Maxwell
 
GoPro, Inc. Case study: Dive into the details of our web applications
GoPro, Inc. Case study: Dive into the details of our web applicationsGoPro, Inc. Case study: Dive into the details of our web applications
GoPro, Inc. Case study: Dive into the details of our web applicationsAndrew Maxwell
 
TDD with Python and App Engine
TDD with Python and App EngineTDD with Python and App Engine
TDD with Python and App EngineRicardo Bánffy
 
Improving Untestable Code
Improving Untestable CodeImproving Untestable Code
Improving Untestable CodeTony Bibbs
 
Сергей Черебедов - Integration Drupal with NodeJS. What is it and why You nee...
Сергей Черебедов - Integration Drupal with NodeJS. What is it and why You nee...Сергей Черебедов - Integration Drupal with NodeJS. What is it and why You nee...
Сергей Черебедов - Integration Drupal with NodeJS. What is it and why You nee...DrupalSib
 
Semi Automatic Code Review
Semi Automatic Code ReviewSemi Automatic Code Review
Semi Automatic Code ReviewRichard Huang
 
Agile Testing Days 2015 - PIMP MY SCRUM – DOCUMENTATION FUN FOR AGILE TEAMS
Agile Testing Days 2015 - PIMP MY SCRUM – DOCUMENTATION FUN FOR AGILE TEAMSAgile Testing Days 2015 - PIMP MY SCRUM – DOCUMENTATION FUN FOR AGILE TEAMS
Agile Testing Days 2015 - PIMP MY SCRUM – DOCUMENTATION FUN FOR AGILE TEAMSAnis Ben Hamidene
 
WordPress automation and CI
WordPress automation and CIWordPress automation and CI
WordPress automation and CIRan Bar-Zik
 
Кирилл Толкачев. Микросервисы: огонь, вода и девопс
Кирилл Толкачев. Микросервисы: огонь, вода и девопсКирилл Толкачев. Микросервисы: огонь, вода и девопс
Кирилл Толкачев. Микросервисы: огонь, вода и девопсScrumTrek
 
HTML5 for dummies
HTML5 for dummiesHTML5 for dummies
HTML5 for dummiesRan Bar-Zik
 

What's hot (20)

Tooling for the productive front end developer
Tooling for the productive front end developerTooling for the productive front end developer
Tooling for the productive front end developer
 
Олексій Єгошин “Проект під тиском? Як вижити” Kyiv Project Management Day (28...
Олексій Єгошин “Проект під тиском? Як вижити” Kyiv Project Management Day (28...Олексій Єгошин “Проект під тиском? Як вижити” Kyiv Project Management Day (28...
Олексій Єгошин “Проект під тиском? Як вижити” Kyiv Project Management Day (28...
 
Project Under Pressure
Project Under PressureProject Under Pressure
Project Under Pressure
 
Product development and tools
Product development and toolsProduct development and tools
Product development and tools
 
DevOps Toolchain v1.0
DevOps Toolchain v1.0DevOps Toolchain v1.0
DevOps Toolchain v1.0
 
Story Testing Approach for Enterprise Applications using Selenium Framework
Story Testing Approach for Enterprise Applications using Selenium FrameworkStory Testing Approach for Enterprise Applications using Selenium Framework
Story Testing Approach for Enterprise Applications using Selenium Framework
 
Gradle enabled android project
Gradle enabled android projectGradle enabled android project
Gradle enabled android project
 
Pluginize ALL the things
Pluginize ALL the thingsPluginize ALL the things
Pluginize ALL the things
 
Lightweight continuous delivery for small schools
Lightweight continuous delivery for small schoolsLightweight continuous delivery for small schools
Lightweight continuous delivery for small schools
 
Go Pro, Inc. Case Study: Dive into the details of our node.js applications
Go Pro, Inc. Case Study: Dive into the details of our node.js applicationsGo Pro, Inc. Case Study: Dive into the details of our node.js applications
Go Pro, Inc. Case Study: Dive into the details of our node.js applications
 
GoPro, Inc. Case study: Dive into the details of our web applications
GoPro, Inc. Case study: Dive into the details of our web applicationsGoPro, Inc. Case study: Dive into the details of our web applications
GoPro, Inc. Case study: Dive into the details of our web applications
 
TDD with Python and App Engine
TDD with Python and App EngineTDD with Python and App Engine
TDD with Python and App Engine
 
Improving Untestable Code
Improving Untestable CodeImproving Untestable Code
Improving Untestable Code
 
Сергей Черебедов - Integration Drupal with NodeJS. What is it and why You nee...
Сергей Черебедов - Integration Drupal with NodeJS. What is it and why You nee...Сергей Черебедов - Integration Drupal with NodeJS. What is it and why You nee...
Сергей Черебедов - Integration Drupal with NodeJS. What is it and why You nee...
 
Semi Automatic Code Review
Semi Automatic Code ReviewSemi Automatic Code Review
Semi Automatic Code Review
 
Agile Testing Days 2015 - PIMP MY SCRUM – DOCUMENTATION FUN FOR AGILE TEAMS
Agile Testing Days 2015 - PIMP MY SCRUM – DOCUMENTATION FUN FOR AGILE TEAMSAgile Testing Days 2015 - PIMP MY SCRUM – DOCUMENTATION FUN FOR AGILE TEAMS
Agile Testing Days 2015 - PIMP MY SCRUM – DOCUMENTATION FUN FOR AGILE TEAMS
 
GitOps , done Right
GitOps , done RightGitOps , done Right
GitOps , done Right
 
WordPress automation and CI
WordPress automation and CIWordPress automation and CI
WordPress automation and CI
 
Кирилл Толкачев. Микросервисы: огонь, вода и девопс
Кирилл Толкачев. Микросервисы: огонь, вода и девопсКирилл Толкачев. Микросервисы: огонь, вода и девопс
Кирилл Толкачев. Микросервисы: огонь, вода и девопс
 
HTML5 for dummies
HTML5 for dummiesHTML5 for dummies
HTML5 for dummies
 

Similar to QA on drupal projects

How to Build and Maintain Quality Drupal Sites with Automated Testing
How to Build and Maintain Quality Drupal Sites with Automated TestingHow to Build and Maintain Quality Drupal Sites with Automated Testing
How to Build and Maintain Quality Drupal Sites with Automated TestingAcquia
 
GitHub Pull Request Builder for Drupal
GitHub Pull Request Builder for DrupalGitHub Pull Request Builder for Drupal
GitHub Pull Request Builder for DrupalJuampy NR
 
Szczepan.faber.gradle
Szczepan.faber.gradleSzczepan.faber.gradle
Szczepan.faber.gradlemagda3695
 
Creating Gradle Plugins
Creating Gradle PluginsCreating Gradle Plugins
Creating Gradle PluginsAnnyce Davis
 
Intelligent Projects with Maven - DevFest Istanbul
Intelligent Projects with Maven - DevFest IstanbulIntelligent Projects with Maven - DevFest Istanbul
Intelligent Projects with Maven - DevFest IstanbulMert Çalışkan
 
Open Source CMS Certification
Open Source CMS CertificationOpen Source CMS Certification
Open Source CMS CertificationVskills
 
Introduction to DevOps Tools | DevOps Training | DevOps Tutorial for Beginner...
Introduction to DevOps Tools | DevOps Training | DevOps Tutorial for Beginner...Introduction to DevOps Tools | DevOps Training | DevOps Tutorial for Beginner...
Introduction to DevOps Tools | DevOps Training | DevOps Tutorial for Beginner...Edureka!
 
Build your android app with gradle
Build your android app with gradleBuild your android app with gradle
Build your android app with gradleSwain Loda
 
Gradle - the Enterprise Automation Tool
Gradle  - the Enterprise Automation ToolGradle  - the Enterprise Automation Tool
Gradle - the Enterprise Automation ToolIzzet Mustafaiev
 
From 0 to DevOps in 80 Days [Webinar Replay]
From 0 to DevOps in 80 Days [Webinar Replay]From 0 to DevOps in 80 Days [Webinar Replay]
From 0 to DevOps in 80 Days [Webinar Replay]Dynatrace
 
Stop Being Lazy and Test Your Software
Stop Being Lazy and Test Your SoftwareStop Being Lazy and Test Your Software
Stop Being Lazy and Test Your SoftwareLaura Frank Tacho
 
Using Grunt with Drupal
Using Grunt with DrupalUsing Grunt with Drupal
Using Grunt with Drupalarithmetric
 
DevOps for TYPO3 Teams and Projects
DevOps for TYPO3 Teams and ProjectsDevOps for TYPO3 Teams and Projects
DevOps for TYPO3 Teams and ProjectsFedir RYKHTIK
 
Keeping your build tool updated in a multi repository world
Keeping your build tool updated in a multi repository worldKeeping your build tool updated in a multi repository world
Keeping your build tool updated in a multi repository worldRoberto Pérez Alcolea
 

Similar to QA on drupal projects (20)

How to Build and Maintain Quality Drupal Sites with Automated Testing
How to Build and Maintain Quality Drupal Sites with Automated TestingHow to Build and Maintain Quality Drupal Sites with Automated Testing
How to Build and Maintain Quality Drupal Sites with Automated Testing
 
GitHub Pull Request Builder for Drupal
GitHub Pull Request Builder for DrupalGitHub Pull Request Builder for Drupal
GitHub Pull Request Builder for Drupal
 
End_to_End_DevOps.pptx
End_to_End_DevOps.pptxEnd_to_End_DevOps.pptx
End_to_End_DevOps.pptx
 
Szczepan.faber.gradle
Szczepan.faber.gradleSzczepan.faber.gradle
Szczepan.faber.gradle
 
Building with Gradle
Building with GradleBuilding with Gradle
Building with Gradle
 
Creating Gradle Plugins
Creating Gradle PluginsCreating Gradle Plugins
Creating Gradle Plugins
 
Intelligent Projects with Maven - DevFest Istanbul
Intelligent Projects with Maven - DevFest IstanbulIntelligent Projects with Maven - DevFest Istanbul
Intelligent Projects with Maven - DevFest Istanbul
 
Open Source CMS Certification
Open Source CMS CertificationOpen Source CMS Certification
Open Source CMS Certification
 
Building with Gradle
Building with GradleBuilding with Gradle
Building with Gradle
 
Introduction to DevOps Tools | DevOps Training | DevOps Tutorial for Beginner...
Introduction to DevOps Tools | DevOps Training | DevOps Tutorial for Beginner...Introduction to DevOps Tools | DevOps Training | DevOps Tutorial for Beginner...
Introduction to DevOps Tools | DevOps Training | DevOps Tutorial for Beginner...
 
Build your android app with gradle
Build your android app with gradleBuild your android app with gradle
Build your android app with gradle
 
Gradle - the Enterprise Automation Tool
Gradle  - the Enterprise Automation ToolGradle  - the Enterprise Automation Tool
Gradle - the Enterprise Automation Tool
 
From 0 to DevOps in 80 Days [Webinar Replay]
From 0 to DevOps in 80 Days [Webinar Replay]From 0 to DevOps in 80 Days [Webinar Replay]
From 0 to DevOps in 80 Days [Webinar Replay]
 
Slides123.pdf
Slides123.pdfSlides123.pdf
Slides123.pdf
 
Stop Being Lazy and Test Your Software
Stop Being Lazy and Test Your SoftwareStop Being Lazy and Test Your Software
Stop Being Lazy and Test Your Software
 
Week 1 - ACE.pptx
Week 1 - ACE.pptxWeek 1 - ACE.pptx
Week 1 - ACE.pptx
 
Using Grunt with Drupal
Using Grunt with DrupalUsing Grunt with Drupal
Using Grunt with Drupal
 
Devops.pptx
Devops.pptxDevops.pptx
Devops.pptx
 
DevOps for TYPO3 Teams and Projects
DevOps for TYPO3 Teams and ProjectsDevOps for TYPO3 Teams and Projects
DevOps for TYPO3 Teams and Projects
 
Keeping your build tool updated in a multi repository world
Keeping your build tool updated in a multi repository worldKeeping your build tool updated in a multi repository world
Keeping your build tool updated in a multi repository world
 

More from La Drupalera

QA en SEO: Amigos con derecho a roce - Drupalcamp 2019
QA en SEO: Amigos con derecho a roce - Drupalcamp 2019QA en SEO: Amigos con derecho a roce - Drupalcamp 2019
QA en SEO: Amigos con derecho a roce - Drupalcamp 2019La Drupalera
 
Consejos y trucos para cualificar una oportunidad Drupal
Consejos y trucos para cualificar una oportunidad DrupalConsejos y trucos para cualificar una oportunidad Drupal
Consejos y trucos para cualificar una oportunidad DrupalLa Drupalera
 
Designer vs Front-end - DrupalCampES 2018 Alicante
Designer vs Front-end - DrupalCampES 2018 AlicanteDesigner vs Front-end - DrupalCampES 2018 Alicante
Designer vs Front-end - DrupalCampES 2018 AlicanteLa Drupalera
 
¡Ojo al dato!: Cómo evitar microinfartos a la gente de marketing - DrupalCamp...
¡Ojo al dato!: Cómo evitar microinfartos a la gente de marketing - DrupalCamp...¡Ojo al dato!: Cómo evitar microinfartos a la gente de marketing - DrupalCamp...
¡Ojo al dato!: Cómo evitar microinfartos a la gente de marketing - DrupalCamp...La Drupalera
 
PSD to HTML (Drupal) - Drupal Day Spain 2017 Cáceres
PSD to HTML (Drupal) - Drupal Day Spain 2017 CáceresPSD to HTML (Drupal) - Drupal Day Spain 2017 Cáceres
PSD to HTML (Drupal) - Drupal Day Spain 2017 CáceresLa Drupalera
 
Tips para posicionarte como desarrollador Drupal - Drupal Day Spain 2017 Cáceres
Tips para posicionarte como desarrollador Drupal - Drupal Day Spain 2017 CáceresTips para posicionarte como desarrollador Drupal - Drupal Day Spain 2017 Cáceres
Tips para posicionarte como desarrollador Drupal - Drupal Day Spain 2017 CáceresLa Drupalera
 
Tu drupal está listo… ¿lo sabe Google? - DrupalCamp 2017
Tu drupal está listo… ¿lo sabe Google? - DrupalCamp 2017Tu drupal está listo… ¿lo sabe Google? - DrupalCamp 2017
Tu drupal está listo… ¿lo sabe Google? - DrupalCamp 2017La Drupalera
 
Docker, your best ally to migrate & upgrading your Drupal - Drupal Dev Days S...
Docker, your best ally to migrate & upgrading your Drupal - Drupal Dev Days S...Docker, your best ally to migrate & upgrading your Drupal - Drupal Dev Days S...
Docker, your best ally to migrate & upgrading your Drupal - Drupal Dev Days S...La Drupalera
 
Beyond the web: Mobile apps using Drupal & Ionic 2 - Drupal Dev Days Seville ...
Beyond the web: Mobile apps using Drupal & Ionic 2 - Drupal Dev Days Seville ...Beyond the web: Mobile apps using Drupal & Ionic 2 - Drupal Dev Days Seville ...
Beyond the web: Mobile apps using Drupal & Ionic 2 - Drupal Dev Days Seville ...La Drupalera
 
Responsive testing in Drupal - Drupal Developer Days
Responsive testing in Drupal - Drupal Developer DaysResponsive testing in Drupal - Drupal Developer Days
Responsive testing in Drupal - Drupal Developer DaysLa Drupalera
 
Efficiently theming a multi-site Drupal 8 portal - Drupal Dev Days Seville 2017
Efficiently theming a multi-site Drupal 8 portal - Drupal Dev Days Seville 2017Efficiently theming a multi-site Drupal 8 portal - Drupal Dev Days Seville 2017
Efficiently theming a multi-site Drupal 8 portal - Drupal Dev Days Seville 2017La Drupalera
 
XML Sitemap Drupal Module
XML Sitemap Drupal ModuleXML Sitemap Drupal Module
XML Sitemap Drupal ModuleLa Drupalera
 
¡This is drupal! - Global Training Days
¡This is drupal! - Global Training Days¡This is drupal! - Global Training Days
¡This is drupal! - Global Training DaysLa Drupalera
 
¿Cómo aplicar una estrategia de Marketing efectiva basada en Drupal?
¿Cómo aplicar una estrategia de Marketing efectiva basada en Drupal?¿Cómo aplicar una estrategia de Marketing efectiva basada en Drupal?
¿Cómo aplicar una estrategia de Marketing efectiva basada en Drupal?La Drupalera
 
Drupal vs Wordpress
Drupal vs WordpressDrupal vs Wordpress
Drupal vs WordpressLa Drupalera
 
Marketing, Comunidad, Empleo y Negocio Internacional basado en Drupal
Marketing, Comunidad, Empleo y Negocio Internacional basado en DrupalMarketing, Comunidad, Empleo y Negocio Internacional basado en Drupal
Marketing, Comunidad, Empleo y Negocio Internacional basado en DrupalLa Drupalera
 
Caso de éxito Drupal - Procomún - DrupalCamp Spain 2016
Caso de éxito Drupal - Procomún - DrupalCamp Spain 2016Caso de éxito Drupal - Procomún - DrupalCamp Spain 2016
Caso de éxito Drupal - Procomún - DrupalCamp Spain 2016La Drupalera
 
Desplegando código con Phing, PHPunit, Coder y Jenkins
Desplegando código con Phing, PHPunit, Coder y JenkinsDesplegando código con Phing, PHPunit, Coder y Jenkins
Desplegando código con Phing, PHPunit, Coder y JenkinsLa Drupalera
 

More from La Drupalera (18)

QA en SEO: Amigos con derecho a roce - Drupalcamp 2019
QA en SEO: Amigos con derecho a roce - Drupalcamp 2019QA en SEO: Amigos con derecho a roce - Drupalcamp 2019
QA en SEO: Amigos con derecho a roce - Drupalcamp 2019
 
Consejos y trucos para cualificar una oportunidad Drupal
Consejos y trucos para cualificar una oportunidad DrupalConsejos y trucos para cualificar una oportunidad Drupal
Consejos y trucos para cualificar una oportunidad Drupal
 
Designer vs Front-end - DrupalCampES 2018 Alicante
Designer vs Front-end - DrupalCampES 2018 AlicanteDesigner vs Front-end - DrupalCampES 2018 Alicante
Designer vs Front-end - DrupalCampES 2018 Alicante
 
¡Ojo al dato!: Cómo evitar microinfartos a la gente de marketing - DrupalCamp...
¡Ojo al dato!: Cómo evitar microinfartos a la gente de marketing - DrupalCamp...¡Ojo al dato!: Cómo evitar microinfartos a la gente de marketing - DrupalCamp...
¡Ojo al dato!: Cómo evitar microinfartos a la gente de marketing - DrupalCamp...
 
PSD to HTML (Drupal) - Drupal Day Spain 2017 Cáceres
PSD to HTML (Drupal) - Drupal Day Spain 2017 CáceresPSD to HTML (Drupal) - Drupal Day Spain 2017 Cáceres
PSD to HTML (Drupal) - Drupal Day Spain 2017 Cáceres
 
Tips para posicionarte como desarrollador Drupal - Drupal Day Spain 2017 Cáceres
Tips para posicionarte como desarrollador Drupal - Drupal Day Spain 2017 CáceresTips para posicionarte como desarrollador Drupal - Drupal Day Spain 2017 Cáceres
Tips para posicionarte como desarrollador Drupal - Drupal Day Spain 2017 Cáceres
 
Tu drupal está listo… ¿lo sabe Google? - DrupalCamp 2017
Tu drupal está listo… ¿lo sabe Google? - DrupalCamp 2017Tu drupal está listo… ¿lo sabe Google? - DrupalCamp 2017
Tu drupal está listo… ¿lo sabe Google? - DrupalCamp 2017
 
Docker, your best ally to migrate & upgrading your Drupal - Drupal Dev Days S...
Docker, your best ally to migrate & upgrading your Drupal - Drupal Dev Days S...Docker, your best ally to migrate & upgrading your Drupal - Drupal Dev Days S...
Docker, your best ally to migrate & upgrading your Drupal - Drupal Dev Days S...
 
Beyond the web: Mobile apps using Drupal & Ionic 2 - Drupal Dev Days Seville ...
Beyond the web: Mobile apps using Drupal & Ionic 2 - Drupal Dev Days Seville ...Beyond the web: Mobile apps using Drupal & Ionic 2 - Drupal Dev Days Seville ...
Beyond the web: Mobile apps using Drupal & Ionic 2 - Drupal Dev Days Seville ...
 
Responsive testing in Drupal - Drupal Developer Days
Responsive testing in Drupal - Drupal Developer DaysResponsive testing in Drupal - Drupal Developer Days
Responsive testing in Drupal - Drupal Developer Days
 
Efficiently theming a multi-site Drupal 8 portal - Drupal Dev Days Seville 2017
Efficiently theming a multi-site Drupal 8 portal - Drupal Dev Days Seville 2017Efficiently theming a multi-site Drupal 8 portal - Drupal Dev Days Seville 2017
Efficiently theming a multi-site Drupal 8 portal - Drupal Dev Days Seville 2017
 
XML Sitemap Drupal Module
XML Sitemap Drupal ModuleXML Sitemap Drupal Module
XML Sitemap Drupal Module
 
¡This is drupal! - Global Training Days
¡This is drupal! - Global Training Days¡This is drupal! - Global Training Days
¡This is drupal! - Global Training Days
 
¿Cómo aplicar una estrategia de Marketing efectiva basada en Drupal?
¿Cómo aplicar una estrategia de Marketing efectiva basada en Drupal?¿Cómo aplicar una estrategia de Marketing efectiva basada en Drupal?
¿Cómo aplicar una estrategia de Marketing efectiva basada en Drupal?
 
Drupal vs Wordpress
Drupal vs WordpressDrupal vs Wordpress
Drupal vs Wordpress
 
Marketing, Comunidad, Empleo y Negocio Internacional basado en Drupal
Marketing, Comunidad, Empleo y Negocio Internacional basado en DrupalMarketing, Comunidad, Empleo y Negocio Internacional basado en Drupal
Marketing, Comunidad, Empleo y Negocio Internacional basado en Drupal
 
Caso de éxito Drupal - Procomún - DrupalCamp Spain 2016
Caso de éxito Drupal - Procomún - DrupalCamp Spain 2016Caso de éxito Drupal - Procomún - DrupalCamp Spain 2016
Caso de éxito Drupal - Procomún - DrupalCamp Spain 2016
 
Desplegando código con Phing, PHPunit, Coder y Jenkins
Desplegando código con Phing, PHPunit, Coder y JenkinsDesplegando código con Phing, PHPunit, Coder y Jenkins
Desplegando código con Phing, PHPunit, Coder y Jenkins
 

Recently uploaded

[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024The Digital Insurer
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?Igalia
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
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.pdfsudhanshuwaghmare1
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century educationjfdjdjcjdnsjd
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobeapidays
 
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 TerraformAndrey Devyatkin
 
HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesHTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesBoston Institute of Analytics
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdflior mazor
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsJoaquim Jorge
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
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...Drew Madelung
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfhans926745
 

Recently uploaded (20)

[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
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
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
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
 
HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesHTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation Strategies
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
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...
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdf
 

QA on drupal projects

  • 1. QA on Drupal projects Alejandro Gómez @agomezmoron
  • 2. About me Alejandro Gómez - @agomezmoron Loving my work at @LaDrupalera by @Emergya Lecturer at @pablodeolavide University QA & Tech lover (Selenium, Java, Drupal, Ionic, AngularJS, Gulp…) I am passionate about challenges and I hate repeating processes!
  • 3. Roadmap 1. What QA really means 2. Integrating QA teams into Drupal teams: The team 3. Type of tests to be applied 4. Continuous Integration a. Code Inspection b. Unit testing c. Performance testing d. Continuous Delivery with Docker e. Functional testing through Selenium
  • 4. Roadmap 1. What QA really means 2. Integrating QA teams into Drupal teams: The team 3. Type of tests to be applied 4. Continuous Integration a. Code Inspection b. Unit testing c. Performance testing d. Continuous Delivery with Docker e. Functional testing through Selenium
  • 5. What QA really means QA on Drupal projects ● Different approaches @agomezmoron
  • 6. What QA really means QA on Drupal projects ● What almost everyone thinks @agomezmoron
  • 7. What QA really means QA on Drupal projects ● What a small group of people thinks @agomezmoron
  • 8. What QA really means QA on Drupal projects @agomezmoron
  • 9. What QA really means QA on Drupal projects @agomezmoron
  • 10. What QA really means QA on Drupal projects ● Commitment ● Continuous process ● Definition (scope, DoD, workflow) ● Standards (code style, documentation, etc) ● Testing (to avoid defects) ● Delivering ● Validation (Have we done what we had to?) @agomezmoron
  • 11. Roadmap 1. What QA really means 2. Integrating QA teams into Drupal teams: The team 3. Type of tests to be applied 4. Continuous Integration a. Code Inspection b. Unit testing c. Performance testing d. Continuous Delivery with Docker e. Functional testing through Selenium
  • 12. 12 Integrating QA teams into Drupal teams: The team QA on Drupal projects @agomezmoron
  • 13. 13 Integrating QA teams into Drupal teams: The team QA on Drupal projects @agomezmoron
  • 14. 14 Integrating QA teams into Drupal teams: The team QA on Drupal projects @agomezmoron
  • 15. Integrating QA teams into Drupal teams: The team QA on Drupal projects QA
  • 16. Roadmap 1. What QA really means 2. Integrating QA teams into Drupal teams: The team 3. Type of tests to be applied 4. Continuous Integration a. Code Inspection b. Unit testing c. Performance testing d. Continuous Delivery with Docker e. Functional testing through Selenium
  • 17. Type of tests to be applied 17 QA on Drupal projects Unit Tests guarantee the quality of the Drupal core/modules. Functional tests are split into different suites: ● Acceptance/Smoke: Guarantees the quality of the core of the project. ● Regression: Guarantees the quality of the entire app. ● Progression: Guarantees the quality of the current development (release). Performance tests guarantee the system availability. Responsive tests guarantee the defined responsive rules. @agomezmoron
  • 18. Type of tests to be applied 18 QA on Drupal projects Unit Tests guarantee the quality of the Drupal core/modules. Functional tests are split into different suites: ● Acceptance/Smoke: Guarantees the quality of the core of the project. ● Regression: Guarantees the quality of the entire app. ● Progression: Guarantees the quality of the current development (release). Performance tests guarantee the system availability. Responsive tests guarantee the defined responsive rules. @agomezmoron
  • 19. Type of tests to be applied 19 When will I know the tests are enough? QA on Drupal projects @agomezmoron
  • 20. Roadmap 1. What QA really means 2. Integrating QA teams into Drupal teams: The team 3. Type of tests to be applied 4. Continuous Integration a. Code Inspection b. Unit testing c. Performance testing d. Continuous Delivery with Docker e. Functional testing through Selenium
  • 22. Roadmap 1. What QA really means 2. Integrating QA teams into Drupal teams: The team 3. Type of tests to be applied 4. Continuous Integration a. Code Inspection b. Unit testing c. Performance testing d. Functional testing through Selenium e. Continuous Delivery with Docker
  • 23. CI - Code Inspection 23 QA on Drupal projects @agomezmoron
  • 24. Roadmap 1. What QA really means 2. Integrating QA teams into Drupal teams: The team 3. Type of tests to be applied 4. Continuous Integration a. Code Inspection b. Unit testing c. Performance testing d. Continuous Delivery with Docker e. Functional testing through Selenium
  • 25. CI - Unit Testing 25 QA on Drupal projects @agomezmoron
  • 26. Roadmap 1. What QA really means 2. Integrating QA teams into Drupal teams: The team 3. Type of tests to be applied 4. Continuous Integration a. Code Inspection b. Unit testing c. Performance testing d. Continuous Delivery with Docker e. Functional testing through Selenium
  • 27. 27 QA on Drupal projects CI - Performance testing @agomezmoron
  • 28. Roadmap 1. What QA really means 2. Integrating QA teams into Drupal teams: The team 3. Type of tests to be applied 4. Continuous Integration a. Code Inspection b. Unit testing c. Performance testing d. Continuous Delivery with Docker e. Functional testing through Selenium
  • 29. Continuous Delivery with Docker (I) 29 QA on Drupal projects @agomezmoron
  • 30. Continuous Delivery with Docker (II) 30 QA on Drupal projects Based on a docker Ubuntu 14:04 TLS (fork of Wouter Admiraal’s): ● Apache 2.4 ● MySQL 5.5 ● PHP 5.6 ● Drush 7 or latest release of Drupal Console. ● Drupal 7.44 (7.x) or 8.1.2 (8.x) ● Composer ● PHPMyAdmin Docker version >= 1.9!! @agomezmoron
  • 31. Continuous Delivery with Docker (III) 31 QA on Drupal projects @agomezmoron Docker version >= 1.9!!
  • 32. Continuous Delivery with Docker (III) 32 QA on Drupal projects @agomezmoron Docker version >= 1.9!!
  • 33. Continuous Delivery with Docker (IV) 33 QA on Drupal projects git clone https://github.com/agomezmoron/docker-drupal.git cd drupal-7 docker build --build-arg MYSQL_ROOT_PASSWORD=admin, DRUPAL_ADMIN_PASSWORD=admin,SSH_ROOT_PASSWORD=root, DRUPAL_VERSION=7.44 -t yourname/drupal7 . cd drupal-8 docker build --build-arg MYSQL_ROOT_PASSWORD=admin, DRUPAL_ADMIN_PASSWORD=admin,SSH_ROOT_PASSWORD=root, DRUPAL_VERSION=8.1.2 -t yourname/drupal8 . Docker version >= 1.9!! @agomezmoron
  • 34. Docker also for Selenium 34 QA on Drupal projects @agomezmoron
  • 35. Roadmap 1. What QA really means 2. Integrating QA teams into Drupal teams: The team 3. Type of tests to be applied 4. Continuous Integration a. Code Inspection b. Unit testing c. Performance testing d. Continuous Delivery with Docker e. Functional testing through Selenium
  • 36. Functional testing through Selenium 36 QA on Drupal projects ● Functional tests ○ Acceptance ○ Progression ○ Regression ● Testing the app as a user does it @agomezmoron
  • 37. 37 We came to play... QA on Drupal projects @agomezmoron
  • 38. Workflow 38 QA on Drupal projects @agomezmoron
  • 39. Conclusions 39 ● If someone finds bugs, awesome. Do not hide the bugs from your customers. ● Fixing bugs should be one of your priorities! ● Code styling is as important as passing tests! QA on Drupal projects @agomezmoron
  • 40. Conclusions 40 ● Create a QA culture in the teams. ● QA is more than testing: Commitment, Code style, Continuous Integration, Unit Testing, Functional testing, Continous Delivery... QA on Drupal projects @briansolis @agomezmoron
  • 41. Conclusions 41 QA on Drupal projects @agomezmoron
  • 42. Conclusions 42 QA on Drupal projects @agomezmoron
  • 43. Thanks to them: They are the true core! 43 QA on Drupal projects @agomezmoron
  • 44. 44 Questions? QA on Drupal projects @agomezmoron
  • 45. 45 Thanks! QA on Drupal projects @agomezmoron