Hillel Wayne - Beyond Unit Tests: Taking Your Testing to the Next Level - PyCon 2018

PyCon 2018 · 38K views · 2018 · 29:21

Open on YouTube

Testing, debugging & developer toolsPython, Ruby & scripting languagesLogic & formal methodstalk

Why Hacker News recommends it

HN commenters point to it as a concise, convincing case for better testing practice short of full formal methods.

What it is

Hillel Wayne's PyCon 2018 talk on testing beyond pytest and mypy. It introduces property-based testing with the Hypothesis library and design-by-contract with dpcontracts, and shows how to combine them with an existing test suite.

Recommended by 3 HN commenters across 3 different months, 2018 to 2023.

What Hacker News said

Strong rec jononor · 2019-04 · on “The Case for Formal Methods”

I found this talk (by the same person being interviewed) to be concise and convincing on how to do better than typical practice, without going to full formal methods. Hillel Wayne - Beyond Unit Tests: Taking Your Testing to the Next Level - PyCon 2018 [this video]

Recommends sn9 · 2018-12 · on “Ask HN: Best talks of 2018?”

Some of my favorite talks from Strange Loop: * Contracts For Getting More Programs Less Wrong: [LINK] * "It's Just Matrix Multiplication": Notation for Weaving: [LINK] * Hackett: a metaprogrammable Haskell: [LINK] * Git from the Ground Up: [LINK] From PyCon: * Beyond Unit Tests: Taking Your Testing to the Next Level: [this video] * Dataclasses: The code generator to end all code generator: [LINK] * Automating Code Quality: [LINK] There are probably more I might add later as I remember them.

Recommends spion · 2023-01 · on “What if writing tests was a joyful experience?”

Most of the non-joyful experience of writing tests lies in the context preparation, not so much in the expected outputs. I think we need a modern version of design by contract instead. Its one of the most powerful techniques of testing software is unfortunately often ignored and overlooked these days... Some less known things about design by contract: - you can easily test way more than types in preconditions and postconditions - extreme web controller postcondition example: every time there is a 200 response to a POST /new request, there should be at least one document more in storage than there was before the request. (caveat: unless there are deletes - then sum the deletes up too) - thing