Blog / field notes
Building and testing software.
Practical notes on Pytest, AI engineering, team habits, legacy systems, and the work required to make software safe to change.
GitHub Actions Python Testing: A Complete pytest CI Guide
Run pytest automatically on GitHub pull requests. Start with 5 local tests, add reports and checks for supported Python versions, then block failing merges.
OpenAI Codex Tutorial: Free Full Course with Python
A free, 3-hour, project-based OpenAI Codex tutorial for Python developers. Build, test, deploy, and review a real app with Codex.
Behavior-Driven Development in Python with pytest-bdd
Learn behavior-driven development in Python by turning shared booking rules into Gherkin scenarios and executable tests with pytest-bdd.
Unit Testing AI Agents with Pytest
Test a small tool-using AI agent without calling an LLM. Use pytest fixtures and mocks to check tool calls, answers, failures, and provider adapters.
Pytest Hooks Tutorial with Practical Examples
Understand when pytest hooks help, build a plugin that selects tests and reports failures, then learn how to choose hooks for your own test suite.
How to Test a LangGraph Agent with pytest
Use pytest fixtures, parametrization, and exception assertions to test a LangGraph agent: direct answers, tool calls, and service failures.
FastAPI Testing with Pytest: A Practical API Testing Tutorial
Test a small FastAPI shipping API with pytest. See which checks catch a wrong response, a broken threshold, and invalid input, then learn when to introduce fixtures.
How to Onboard a Python Team to Testing with Pytest
Learn how a 15-developer Python team used shared practice, legacy-code pinch points, and CI to turn pytest into an everyday engineering habit.
Pytest Mocking Tutorial: Patch Dependencies Without Hiding Bugs
Test a wallet with a controlled exchange rate, simulate lookup failures, and see how stricter mocks catch calls that real code would reject.
Pytest for Beginners: Write and Run Your First Python Test
Write your first pytest test for a shipping rule, learn to read a failure, and catch a bug that a passing test misses. Follow each step in a small Python example.
Unit Testing vs Integration Testing vs E2E: Python Examples
Follow one Python converter through unit, integration, and end-to-end tests. Break its calculation, configuration, and output to see why each boundary matters.
AI Coding Agents: Best Practices for Reliable Software
AI coding agents make implementation faster. The harder question is how to trust the result as the software grows. Clear requirements, useful tests, and readable code give developers a way to keep control.
Pytest Fixtures and Parametrization Best Practices
Reuse pytest setup without hiding what each test checks. Follow an inventory example through fixtures, parameter tables, failures, and fresh test data.
Python Unit Testing Best Practices: 10 pytest Rules
Write Python unit tests that survive refactoring. Use pytest to protect behavior, choose useful cases, control dependencies, and keep the suite fast.
Write Python Tests with AI: Build a Pytest Skill
See how AI-generated tests can repeat a bug or expose it. Connect clear requirements to a pytest testing harness, then collect the workflow into a reusable skill.
Test-Driven Development in Python with pytest: A Practical Guide
Build a seat-reservation rule one failing test at a time. Use pytest to see what is missing, protect rejected requests, and refactor with 4 passing cases.
Build software that is safe to change.
istranin.dev publishes practical guides to Python testing and AI engineering, with code examples for your own projects. Learn to build maintainable pytest suites, test AI agents, and run checks in CI.
Explore the courses