EuroPython 2016

The hook-based plugin architecture of py.test

Speaker(s) Floris Bruynooghe

The hook-based plugin system used by py.test and being made available as a stand alone package allows easy extensibility based on defined extension points which can be implemented using hook functions in the plugins. Plugins can themselves call these hooks as well as define future extension points allowing for a very flexible design.

py.test itself uses this plugin system from the ground up with the entire application being implemented by built-in plugins. This architecture has proven powerful and flexible over the years, on both command line tools as well as long running daemons. This talks will describe how the plugin system works and how it deals with passing arguments and return values 1:N hook calls. It will also describe how to design an application consisting entirely of plugins. While not specifically talking about py.test it will also give a solid understanding on how plugins work in py.test.


Org-mode source:


Do you have some questions on this talk?

New comment