Intermediate

Testing Jargon

There's no two ways about it: terminology in the testing world is incredibly overwhelming. Let's fix that! Bit by bit, we'll break all of these confusing concepts down as best as we can.

Start Series For Free

Share this series on:

  • 01

    Episode 1 Run Time 8:34

    Unit Testing Free

    To begin our journey, we'll review unit testing. What exactly does this refer to?

    View the source for this episode on GitHub.

  • 02

    Episode 2 Run Time 9:16

    Mocks

    A mock offers us a useful way to set expecations on messages that should be sent, without actually sending those messages. It sounds confusing, so let's talk about it for a bit.

  • 03

    Episode 3 Run Time 7:04

    Stubs

    A mock allows us to enforce that certain messages are sent to various collaborators. A stub is a bit different. Think of a stub as a stand-in that returns any kind of hard-coded data. "When this method is called, return false." Let's dig into this idea a bit more.

  • 04

    Episode 4 Run Time 4:02

    Dummies

    Don't worry: a dummy is really easy to understand. If a stub offers us a way to return pre-defined values for method calls, then a dummy strips that all away. They're the perfect stand-ins for collaborators that we don't care about.

  • 05

    Episode 5 Run Time 8:06

    Factories

    As we begin learning about other styles of testing, you'll surely come across the term, "factory." Let's review exactly what that is.

    Once you've finished this episode, be sure to learn more about TestDummy.

  • 06

    Episode 6 Run Time 6:03

    Integration Testing

    So you're starting to get the hang of what a unit test is, right? Well, let's move up the chain a bit, and focus on integration tests. These provide an excellent way to group components in our system, and verify that they work as expected.

  • 07

    Episode 7 Run Time 10:27

    BDD and Conversations

    Finally have a basic understanding of TDD? Red, green, refactor? Well, then, how does BDD (Behavior-Driven Development) play into all of this? Well, think of BDD as TDD done right. As you'll find, we're less interested in things like object state, and more concerned with the conversation that takes place.

  • 08

    Episode 8 Run Time 12:02

    Acceptance Testing and User Stories

    Don't worry: acceptance tests are fairly easy to understand. They are tests, from the point of the view of the customer. Does the feature, as a whole (meaning, from the outside-in), work as they expected?