Test & Code :  Python Testing for Software Engineering

Test & Code is a weekly podcast hosted by Brian Okken. The show covers a wide array of topics including software engineering, development, testing, Python programming, and many related topics. When we get into the implementation specifics, that's usually Python, such as Python packaging, tox, pytest, and unittest. However, well over half of the topics are language agnostic, such as data science, DevOps, TDD, public speaking, mentoring, feature testing, NoSQL databases, end to end testing, automation, continuous integration, development methods, Selenium, the testing pyramid, and DevOps.



episode 81: TDD with flit

In the last episode, we talked about going from script to supported package.
I worked on a project called subark and did the packaging with flit.

Today's episode is a continuation where we add new features to a supported package and how to develop and test a flit based package.


  • viewing stages of a project with git tags
  • flit support for editable installs
  • flit description entry in pyproject.toml to put README on pypi.
  • development dependencies in pyproject.toml
  • editor layout for optimal TDD-ing
  • test case grouping
  • modifications to traditional TDD that helps me develop faster.

code and command snippets from episode:

For git checkout of versions:

$ git clone https://github.com/okken/submark.git $ cd submark $ python3 -m venv venv --prompt submark $ source ./bin/activate (submark) $ git checkout v0.1 ... etc ... (submark) $ git checkout v0.7

To grab the latest again:

(submark) $ git checkout master

pyproject.toml change for README to show up on pypi:

[tool.flit.metadata] ... description-file = "README.md" ...

Adding dev dependencies to pyproject.toml:

[tool.flit.metadata.requires-extra] test = ["pytest", "pytest-cov", "tox"]

Installing in editable mode (in top level repo directory). works in mac, linux, windows:

(submark) $ flit install --pth-file

or for mac/linux:

(submark) $ flit install -s

Sponsored By:

  • PyCharm Professional: PyCharm is designed by programmers, for programmers, to provide all the tools you need for productive Python development.

Support Test & Code - Python Testing & Development


  • submark · PyPI
  • submark on GitHub
  • The pyproject.toml config file — Flit 1.3 documentation
  • Flit install — Flit 1.3 documentation
  • Test & Code 80: From Python script to Maintainable Package


 2019-07-17  25m