87 lines
3.3 KiB
Markdown
87 lines
3.3 KiB
Markdown
---
|
|
title: TDD - Test-Driven Drupal
|
|
description: How to write automated tests for Drupal, and how to create a new Drupal module using test driven development.
|
|
speakerdeck:
|
|
id: 088cb18033064f5cb18d1079795294a1
|
|
ratio: "1.77777777777778"
|
|
url: "https://speakerdeck.com/opdavies/tdd-test-driven-drupal"
|
|
video:
|
|
type: youtube
|
|
id: 81J0dPvqG-g
|
|
image:
|
|
url: '%site.assets.url%/assets/images/talks/test-driven-drupal-development.png'
|
|
width: 2560
|
|
height: 1440
|
|
type: image/png
|
|
use: [talks]
|
|
events:
|
|
- name: DrupalCamp London 2017
|
|
location: London, UK
|
|
date: 2017-03-04
|
|
time: "16:15 - 17:00"
|
|
url: ~
|
|
- name: DrupalCamp Dublin 2017
|
|
location: Dublin, Ireland
|
|
date: 2017-10-21
|
|
time: "12:00 - 12:40"
|
|
url: http://2017.drupal.ie
|
|
- name: Drupal Bristol
|
|
date: 2017-11-22
|
|
location: Bristol, UK
|
|
url: https://www.drupalbristol.org.uk
|
|
- name: Drupal Somerset
|
|
date: 2018-06-14
|
|
location: Glastonbury, UK
|
|
- name: Drupal Developer Days 2018
|
|
date: 2018-07-05
|
|
time: "12:15 - 13:00"
|
|
location: Lisbon, Portugal
|
|
url: http://lisbon2018.drupaldays.org
|
|
- name: DrupalCamp London 2019
|
|
date: 2019-03-02
|
|
time: "14:00 - 14:45"
|
|
location: London, UK
|
|
url: ~
|
|
- name: NWDUG
|
|
date: 2020-05-12
|
|
location: Manchester, UK
|
|
url: http://nwdrupal.org.uk
|
|
online: true
|
|
- name: Bay Area Drupal Camp (BADCamp)
|
|
date: 2020-10-14
|
|
url: https://2020.badcamp.org/session/tdd-test-driven-drupal
|
|
online: true
|
|
- name: DrupalCon Europe 2020
|
|
date: 2020-12-08
|
|
url: https://events.drupal.org/europe2020/sessions/tdd-test-driven-drupal
|
|
online: true
|
|
- name: DrupalCon Lille 2023
|
|
location: Lille, France
|
|
date: 2023-10-17
|
|
time: "15:00 - 15:45"
|
|
url: https://events.drupal.org/lille2023/session/tdd-test-driven-drupal-introduction-automated-testing-and-test-driven-development
|
|
- name: DrupalCamp Belgium
|
|
location: Ghent, Belgium
|
|
date: 2024-05-10
|
|
url: https://www.drupalcamp.be/en/drupalcamp-ghent-2024/session/tdd-test-driven-drup%E2%80%A6
|
|
- name: Drupal London Meetup
|
|
location: London, UK
|
|
date: 2024-11-20
|
|
url: https://www.meetup.com/london-drupal-user-group/events/303500889
|
|
online: true
|
|
---
|
|
|
|
Testing is important.
|
|
|
|
It allows developers to add new features and edit and refactor existing code without the worry of adding regressions, reduces the reliance on manual testing to discover bugs, and by taking a test-driven approach, your implementation code is leaner as you only write what is needed for your tests to pass.
|
|
|
|
Drupal 7 includes the SimpleTest module for unit and functional testing, whilst Drupal 8 also includes and supports PHPUnit - the defacto PHP testing framework used by other PHP projects, including Symfony and Laravel - making it easier for people to test their code.
|
|
|
|
With testing being one of the Drupal core gates, with tests needing to be included with every new feature or bug fix and core's 100% pass rate policy, testing has become an essential skill when contributing to the core or when working on your own projects.
|
|
|
|
In this talk, we'll cover the methodology and terminology involved with automated testing and then take a test-driven approach to create a new Drupal module.
|
|
|
|
P.S. If you want to learn more about automated testing and test-driven development in Drupal, [register for my free 10-day email course][course].
|
|
|
|
[course]: /atdc
|