Cloud native Pytest tips and tricks from ground zero (Pragmatic AI Solutions, 2022)
Learn to master Pytest via these tips and tricks 00:00 Intro 01:00 Key Concepts in Testing 10:00 Key Testing Terminology 15:00 Kazien equals DevOps 18:22 Setup Github 23:00 Setup Github Codespaces 25:00 Explaining Python pip freeze 33:00 Create Makefile 37:00 Pin requirements.txt 38:00 Cloud development environment concepts: AWS Cloud9 to Github Codespaces 43:00 Setup Github Actions 44:00 Configuring Matrix testing of Python 48:00 Building simple Python scripts as part of CI/CD and linting them with Pylint 56:00 Setup AWS CloudShell for CI/CD 01:00:09 Adding Python 3.7, 3.8, 3.9 and 3.10 to Matrix testing 01:04:00 Setup AWS Cloud9 01:11:00 Refactoring Python project to include testing directory and library directory 01:19:00 Setup Python Test Coverage 01:22:00 Adding Pytest to Github Actions YAML file 01:29:00 Creating Python library file that searches wikipedia and tests it 01:36:00 Adding Python Fire command-line tool 01:42:00 Running Pytests by search expression 01:44:30 Running Pytests by specifying tests 01:46:00 Marking tests in Pytest and avoiding slow tests 01:48:00 Profiling testing speed using Pytest 01:56:39 Doing distributed testing with xdist to spread tests to multiple cores 02:05:21 Created distributed testing group to distribute to multiple cores 02:09:00 Setup 32 Core 60GB RAM Cloud9 Machine to run massively parallel Pytests 02:13:58 Running distributed testing that doubles the speed of the tests 02:23:00 Setup Cloud-Native AWS Code Build testing with buildspec.yml that does distributed testing to 8 Core Build client.