36
QA on Drupal projects Alejandro Gómez - @agomezmoron #DrupalDevDays 2017

QA on Drupal projects - Drupal Dev Days Seville 2017

Embed Size (px)

Citation preview

Page 1: QA on Drupal projects - Drupal Dev Days Seville 2017

QA on Drupal projects

Alejandro Gómez - @agomezmoron#DrupalDevDays 2017

Page 2: QA on Drupal projects - Drupal Dev Days Seville 2017

About me

#DrupalDevDays / @drupaldevdays @agomezmoron

agomezmoron.info.yml

name: Alejandro Gómezdescription: “QA & Tech lover”package: #DrupalDevDaysworks_on:- company: { name: @ladrupalera by @emergya, role: QA & Team lead }- company: { name: @EPSUPO, role: QA teacher }

type: Non-stop learnercore: DDD.2017

community: @SevillaQA organizer

Page 3: QA on Drupal projects - Drupal Dev Days Seville 2017

Roadmap● What QA really means

● Dev & QA Teams: THE TEAM

● QA assembly instructions

● QA & Git-Flow

● Conclusions

#DrupalDevDays / @drupaldevdays @agomezmoron

Page 4: QA on Drupal projects - Drupal Dev Days Seville 2017

Roadmap● What QA really means

● Dev & QA Teams: THE TEAM

● QA assembly instructions

● QA & Git-Flow

● Conclusions

#DrupalDevDays / @drupaldevdays @agomezmoron

Page 5: QA on Drupal projects - Drupal Dev Days Seville 2017

What QA really means

#DrupalDevDays / @drupaldevdays @agomezmoron

Different approaches

Page 6: QA on Drupal projects - Drupal Dev Days Seville 2017

What QA really means

#DrupalDevDays / @drupaldevdays @agomezmoron

First approach

Page 7: QA on Drupal projects - Drupal Dev Days Seville 2017

What QA really means

#DrupalDevDays / @drupaldevdays @agomezmoron

Usual approach

Certifications

● Process.

● Defects.

● Validation.

● Continuous Integration

Page 8: QA on Drupal projects - Drupal Dev Days Seville 2017

What QA really means

#DrupalDevDays / @drupaldevdays @agomezmoron

“Sometimes, you only have to sit and look at it from a different angle.”

- Commitment

- Continuous process

- Definition (DoR, DoD, workflow)

- Standards (code style, documentation, etc)

- Testing (to avoid defects)

- Delivering

- Validation (Have we done what we had to?)

QA RULES

Page 9: QA on Drupal projects - Drupal Dev Days Seville 2017

Roadmap● What QA really means

● Dev & QA Teams: THE TEAM

● QA assembly instructions

● QA & Git-Flow

● Conclusions

#DrupalDevDays / @drupaldevdays @agomezmoron

Page 10: QA on Drupal projects - Drupal Dev Days Seville 2017

@agomezmoron #DrupalDevDays 2017

Dev & QA teams: THE TEAM

Some tips:

1. There is only a team.

2. The team is dedicated to excellence.

3. We share workflows.

Page 11: QA on Drupal projects - Drupal Dev Days Seville 2017

@agomezmoron #DrupalDevDays 2017

Dev & QA teams: THE TEAM

The scrum process

Page 12: QA on Drupal projects - Drupal Dev Days Seville 2017

@agomezmoron #DrupalDevDays 2017

Dev & QA teams: THE TEAM

The scrum process

Definition of Ready(DoR)

Definition of Done(DoD)

Page 13: QA on Drupal projects - Drupal Dev Days Seville 2017

@agomezmoron #DrupalDevDays 2017

Dev & QA teams: THE TEAM

In short

Page 14: QA on Drupal projects - Drupal Dev Days Seville 2017

Roadmap● What QA really means

● Dev & QA Teams: THE TEAM

● QA assembly instructions

● QA & Git-Flow

● Conclusions

#DrupalDevDays / @drupaldevdays @agomezmoron

Page 15: QA on Drupal projects - Drupal Dev Days Seville 2017

@agomezmoron #DrupalDevDays 2017

QA assembly instructions

DRUPALKEA

Page 16: QA on Drupal projects - Drupal Dev Days Seville 2017

@agomezmoron #DrupalDevDays 2017

QA assembly instructions

What do we want to avoid?

DRUPALKEA

Page 17: QA on Drupal projects - Drupal Dev Days Seville 2017

@agomezmoron #DrupalDevDays 2017

QA assembly instructions

- Unit Tests guarantee the quality of some isolated pieces (ex: 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.

Page 18: QA on Drupal projects - Drupal Dev Days Seville 2017

@agomezmoron #DrupalDevDays 2017

QA assembly instructions

Unit Testing

Functional testing

Responsive Testing

Performance testing

Page 19: QA on Drupal projects - Drupal Dev Days Seville 2017

Roadmap● What QA really means

● Dev & QA Teams: THE TEAM

● QA assembly instructions

● QA & Git-Flow

● Conclusions

#DrupalDevDays / @drupaldevdays @agomezmoron

Page 20: QA on Drupal projects - Drupal Dev Days Seville 2017

@agomezmoron #DrupalDevDays 2017

QA & Git-Flow

qa ci

US X

master

PR

CI validation & merge

Page 21: QA on Drupal projects - Drupal Dev Days Seville 2017

@agomezmoron #DrupalDevDays 2017

QA & Git-Flow

qa cimaster

PR(on demand)CI validation

& merge

PR(realising)

tagCI validation

& merge

Page 22: QA on Drupal projects - Drupal Dev Days Seville 2017

@agomezmoron #DrupalDevDays 2017

QA & Git-Flow

qa cimaster

PR(on demand)CI validation

& merge

PR(realising)

tagCI validation

& merge

Page 23: QA on Drupal projects - Drupal Dev Days Seville 2017

@agomezmoron #DrupalDevDays 2017

QA & Git-Flow

pull request

Code Inspection

Delivery

Testing

accept/reject

Code Style

Page 24: QA on Drupal projects - Drupal Dev Days Seville 2017

@agomezmoron #DrupalDevDays 2017

QA & Git-Flow

pull request

Delivery

Testing

accept/reject

Code Style

Page 25: QA on Drupal projects - Drupal Dev Days Seville 2017

@agomezmoron #DrupalDevDays 2017

QA & Git-Flow

pull request

Testing

accept/reject

Code Style

Page 26: QA on Drupal projects - Drupal Dev Days Seville 2017

@agomezmoron #DrupalDevDays 2017

QA & Git-Flow

pull request

accept/reject

Code Style

Page 27: QA on Drupal projects - Drupal Dev Days Seville 2017

What QA really means

#DrupalDevDays / @drupaldevdays @agomezmoron

Page 28: QA on Drupal projects - Drupal Dev Days Seville 2017

Roadmap● What QA really means

● Dev & QA Teams: THE TEAM

● QA assembly instructions

● QA & Git-Flow

● Conclusions

#DrupalDevDays / @drupaldevdays @agomezmoron

Page 29: QA on Drupal projects - Drupal Dev Days Seville 2017

@agomezmoron #DrupalDevDays 2017

Conclusions

Page 30: QA on Drupal projects - Drupal Dev Days Seville 2017

@agomezmoron #DrupalDevDays 2017

Conclusions

All you have seen needs a big effort:

Are you ready to do it?

Page 31: QA on Drupal projects - Drupal Dev Days Seville 2017

Conclusions

#DrupalDevDays / @drupaldevdays @agomezmoron

Page 32: QA on Drupal projects - Drupal Dev Days Seville 2017

Are you ready?

#DrupalDevDays / @drupaldevdays @agomezmoron

“You take the blue pill, the story ends, you wake up in your bed and you believe whatever you want to believe. You take the red pill: you stay in wonderland and I will show you how deep the rabbit hole goes.”

Morpheus, Matrix

Page 33: QA on Drupal projects - Drupal Dev Days Seville 2017

Thanks to...

#DrupalDevDays / @drupaldevdays @agomezmoron

Page 34: QA on Drupal projects - Drupal Dev Days Seville 2017

Thanks to...

#DrupalDevDays / @drupaldevdays @agomezmoron

Page 35: QA on Drupal projects - Drupal Dev Days Seville 2017

Thanks to...

#DrupalDevDays / @drupaldevdays @agomezmoron

Page 36: QA on Drupal projects - Drupal Dev Days Seville 2017

Thanks!

#DrupalDevDays / @drupaldevdays @agomezmoron