Top 9 Resources: WordPress Continuous Integration

Developing for WordPress can be done using continuous integration, where code changes are regularly merged into a central repository, and then automated builds and tests are run. Below we share top links from across the web that discuss how continuous integration is practiced as part of WordPress development, and show how tools such as CircleCI are used to test.

Continuous Integration with GitHub and CircleCI

Today, we’ll set up a simple configuration (without tests) that will exclude SFTP or FTP (direct access) to a production environment (server). After tests are added, the resulting development environment will be transformed into powerful, modern tools for your project.

Using Codeception to Automate WordPress Plugin Testing

Recently we’ve been discussing how best to improve this testing process and one option is automation. Let me talk you through what we do today and what we are slowly trying to implement.

What is Continuous Integration?

The key goals of continuous integration are to find and address bugs quicker, improve software quality, and reduce the time it takes to validate and release new software updates.

Unit Test Existing Code in WordPress Projects

One of the things that I wanted to discuss is the how unit testing can help drive architectural decisions. The challenge with the latter, though, is that part of writing tests often comes with retrofitting tests (or how we can unit test existing code). And this is a topic all its own.

Testing WordPress Plugins on Pantheon with CircleCI

Recently, we started on a project to help ensure we can definitively say: “Yes, this WordPress plugin works on the Pantheon platform.” The key advantage is that this implementation automates the testing we might perform manually, and runs the test suite on every changeset. It turned out much nicer than we expected. Read on for the full details.

Architecture and Unit Testing WordPress Code

In a few recent projects, I've been unit testing WordPress code and doing more general test-driven development than normal. I'm no stranger to TDD, but it's not something I am religious about using. For me, it depends on the nature of the project. This article describes the concept of TDD, TDD options, and TDD approaches.

"Unit Testing" a WordPress Widget

I recently finished developing my very first WordPress widget. It's called GR Progress, and it shows books from your Goodreads shelves together with their reading progress (which, to my knowledge, no other Goodreads or WordPress widgets can do). In this post I want to talk about how I went about "unit testing" the widget.

Testing WordPress Plugins with WP-CLI and PHPUnit

Everyone agrees that extensive testing of WordPress plugins is necessary. Automated testing is recommended to ensure quality and with PHP we are lucky to have the PHPUnit framework at our disposal. This article explains how to test WordPress plugins with WP-CLI and PHPUnit.

Should I Use PHPUnit or Behat for Testing My WordPress Plugin?

Bill from Georgetown writes: Just curious, what made you choose Behat for [WP-CLI] testing rather than PHPUnit like WordPress core, EDD and a lot of other big WordPress plugins? Is it just for easier readability of tests, or is there more to it? In this post, I answer Bill's question.


Learn more about the importance of continuous integration as part of a sophisticated dev workflow.

Topics Development, WordPress