Delayed assert / multiple failures per test

A test stops execution once it hits a failing assert statement.
That’s kinda the point of an assert statement, though, so that’s not surprising.

However, sometimes it’s useful to continue with the test even with a failing assert.

I’m going to present one method for getting around this restriction, to test multiple things, allow multiple failures per test, and continue execution after a failure.

I’m not really going to describe the code in detail, but I will give the full source so that you can take it and run with it.

[Read more…]

Python Testing with unittest, nose, pytest : eBook

This book is “the best of the best of the best”, to quote James Edwards

I’ve put together enough information about python testing frameworks to get you up to speed very quickly. But I didn’t stop there.

Not to long after you get your first tests written, you are going to want to add setup and teardown methods and understand fixtures like the back of your hand. And this book will help you do just that.

As an added bonus, it sends a few bucks my way, and encourages me to write more awesome posts just for you!

I really don’t think that you can speed up your understanding of python testing anywhere else for just $5.

Plus, I’m pretty sure you can turn in that receipt as a business expense.

Python Testing with unittest, nose, pytest

What’s there:

TOC

[Read more…]

Best of python testing tutorials, now in epub, mobi, and pdf

I’ve put together a really good collection of posts, including tutorials for pytest, unittest, and nose, into an eBook format. Actually, three formats.

I want it!

This book is still a work in progress…
What does that mean?

I’ve updated the posts on unittest introduction and fixtures.
The nose chapters, and pytest chapters are still a little glitchy.
However, with proceeds from the book sale to help offset the cost, I’m now writing on a nice laptop that will hopefully get me writing more.

So, Updates are coming.
If you buy now at $5, you’ll get notified when things get fixed.

Python Testing with unittest, nose, pytest

Here’s what’s there:

• unittest
– unittest introduction
* Overview of unittest
* Running unittests
* Test discovery
* unittest examples
– unittest fixture syntax and flow reference
* Software Test Fixtures
* Common Case Example
* Full Test Fixture Example
* Full Test Fixture Flow
* Adding Cleanup Calls
* Skipping tests within setUp

• nose
– nose introduction
* Nose example
* Running nose
* Nose fixtures
* Nose assert_equals * Test discovery
* Running unittests from nose
* Running doctests from nose
– nose support for unittest style fixtures
– nose fixture reference
* Method, Function, Package, Module, and Class fixtures
* Full example
* Control flow
* Alternative names for fixtures

• pytest
– pytest introduction
* pytest example
* Running pytest
* pytest fixtures
* Test discovery
* Running unittests from pytest
* Running doctests from pytest
* Running nose tests from pytest
– pytest fixtures
* pytest unittest style fixtures
* pytest xUnit style fixtures
* pytest fixtures easy example
* pytest fixtures nuts and bolts
* pytest session scoped fixtures