Log in

goodpods headphones icon

To access all our features

Open the Goodpods app
Close icon
Test & Code - 146: Automation Tools for Web App and API Development and Maintenance - Michael Kennedy

146: Automation Tools for Web App and API Development and Maintenance - Michael Kennedy

02/28/21 • 48 min

Test & Code

Building any software, including web apps and APIs requires testing.
There's automated testing, and there's manual testing.

In between that is exploratory testing aided by automation tools.

Michael Kennedy joins the show this week to share some of the tools he uses during development and maintenance.

We talk about tools used for semi-automated exploratory testing.
We also talk about some of the other tools and techniques he uses to keep Talk Python Training, Talk Python, and Python Bytes all up and running smoothly.

We talk about:

  • Postman
  • ngrok
  • sitemap link testing
  • scripts for manual processes
  • using failover servers during maintenance, redeployments, etc
  • gitHub webhooks and scripts to between fail over servers and production during deployments automatically
  • floating IP addresses
  • services to monitor your site: StatusCake, BetterUptime
  • the affect of monitoring on analytics
  • crash reporting: Rollbar, Sentry
  • response times
  • load testing: Locus

Links:


Sponsored by:

  • The Complete pytest course is now a bundle, with each part available separately.
  • Whether you need to get started with pytest today, or want to power up your pytest skills, PythonTest has a course for you.
★ Support this podcast on Patreon ★
plus icon
bookmark

Building any software, including web apps and APIs requires testing.
There's automated testing, and there's manual testing.

In between that is exploratory testing aided by automation tools.

Michael Kennedy joins the show this week to share some of the tools he uses during development and maintenance.

We talk about tools used for semi-automated exploratory testing.
We also talk about some of the other tools and techniques he uses to keep Talk Python Training, Talk Python, and Python Bytes all up and running smoothly.

We talk about:

  • Postman
  • ngrok
  • sitemap link testing
  • scripts for manual processes
  • using failover servers during maintenance, redeployments, etc
  • gitHub webhooks and scripts to between fail over servers and production during deployments automatically
  • floating IP addresses
  • services to monitor your site: StatusCake, BetterUptime
  • the affect of monitoring on analytics
  • crash reporting: Rollbar, Sentry
  • response times
  • load testing: Locus

Links:


Sponsored by:

  • The Complete pytest course is now a bundle, with each part available separately.
  • Whether you need to get started with pytest today, or want to power up your pytest skills, PythonTest has a course for you.
★ Support this podcast on Patreon ★

Previous Episode

undefined - 145: For Those About to Mock - Michael Foord

145: For Those About to Mock - Michael Foord

A discussion about mocking in Python with the original contributor of unittest.mock, Michael Foord.

Of course we discuss mocking and unittest.mock.

We also discuss:

  • testing philosophy
  • unit testing and what a unit is
  • TDD
  • where Michael's towel is, and what color

Micheal was instrumental in the building of testing tools for Python, and continues to be a pragmatic source of honest testing philosopy in a field that has a lot of contradictory information.

Links:

★ Support this podcast on Patreon ★

Next Episode

undefined - 147: Testing Single File Python Applications/Scripts with pytest and coverage

147: Testing Single File Python Applications/Scripts with pytest and coverage

Have you ever written a single file Python application or script?
Have you written tests for it?
Do you check code coverage?

This is the topic of this weeks episode, spurred on by a listener question.

The questions:

  • For single file scripts, I'd like to have the test code included right there in the file. Can I do that with pytest?
  • If I can, can I use code coverage on it?

The example code discussed in the episode: script.py

def foo(): return 5 def main(): x = foo() print(x) if __name__ == '__main__': # pragma: no cover main() ## test code # To test: # pip install pytest # pytest script.py # To test with coverage: # put this file (script.py) in a directory by itself, say foo # then from the parent directory of foo: # pip install pytest-cov # pytest --cov=foo foo/script.py # To show missing lines # pytest --cov=foo --cov-report=term-missing foo/script.py def test_foo(): assert foo() == 5 def test_main(capsys): main() captured = capsys.readouterr() assert captured.out == "5\n"

Suggestion by @cfbolz if you need to import pytest:

if __name__ == '__main__': # pragma: no cover main() else: import pytest

Sponsored by:

  • The Complete pytest course is now a bundle, with each part available separately.
  • Whether you need to get started with pytest today, or want to power up your pytest skills, PythonTest has a course for you.
★ Support this podcast on Patreon ★

Episode Comments

Generate a badge

Get a badge for your website that links back to this episode

Select type & size
Open dropdown icon
share badge image

<a href="https://goodpods.com/podcasts/test-and-code-41514/146-automation-tools-for-web-app-and-api-development-and-maintenance-m-12114780"> <img src="https://storage.googleapis.com/goodpods-images-bucket/badges/generic-badge-1.svg" alt="listen to 146: automation tools for web app and api development and maintenance - michael kennedy on goodpods" style="width: 225px" /> </a>

Copy