oliverdavies.uk/source/_pages/test-driven-drupal.md

46 lines
2.3 KiB
Markdown
Raw Normal View History

2021-06-30 07:00:00 +00:00
---
title: 'Test Driven Drupal: The Book'
---
<div class="markdown spaced-y-4 mb-6">
2021-06-30 07:00:00 +00:00
<p>Having <a href="/talks/tdd-test-driven-drupal">given talks</a> and <a href="https://web.archive.org/web/20200422110605/https://drupalcamp.london/training/Automated-Testing-and-Test-Driven-Development-in-Drupal-8">workshops</a>, been a guest on podcasts and <a href="/articles/tags/testing">written articles</a> about automated testing in Drupal, Im currently in the planning phase of a book and potentially some accompanying screencasts about it, focussing on Drupal 8.</p>
<p>Im still thinking about what use-cases to cover and examples to include, but
here are some of the things Im considering:</p>
<ul>
<li>What things to test, and what not to test</li>
<li>The different types of available tests, and when to use each</li>
<li>How to write testable code</li>
<li>What happens when I run a test?</li>
<li>How to run tests in the Drupal UI</li>
<li>How to run tests with the <code>run-tests.sh</code> script</li>
<li>How to install, configure and run tests with PHPUnit in Drupal 8</li>
<li>Viewing HTML from run tests</li>
<li>How to write your first test</li>
<li>Debugging tests</li>
<li>How to organise your test files</li>
<li>Selecting the right base class and using test traits</li>
<li>Writing your own base test classes, traits and assertions</li>
<li>Managing dependencies for your tests (fields, configuration)</li>
<li>Creating users, checking access with roles and permissions</li>
<li>Creating pages and blocks with Views and testing the output</li>
<li>Creating pages with routes and controllers and testing the output</li>
<li>Testing custom plugins</li>
<li>Testing queuing items and processing queues</li>
<li>Testing sending emails</li>
<li>Testing custom Twig filters and functions
<li>Running tests as part of your continuous integration pipeline</li>
</ul>
<p>Ill most likely be publishing it via Leanpub, and will be sending free
chapters, early-bird discounts and links to screencasts and blog posts as I
write the book to subscribers of the mailing list.</p>
<p>If you have questions or would like to suggest something for me to include in
the book, please <a href="mailto:oliver@testdrivendrupal.com">contact me</a>.</p>
{% include 'test-driven-drupal-subscribe-form.html.twig' %}
</div>