Testing an Interactive Voice Response System With Python and Pytest
A tutorial on writing automated tests for a Django and Twilio Interactive Voice Response (IVR) system using Python and Pytest.
Haki Benita is a software developer and technical lead specializing in databases, web development, software design, and performance tuning. He shares insights through interviews, trainings, and talks, and occasionally offers consultancy and contract work.
59 articles from this blog
A tutorial on writing automated tests for a Django and Twilio Interactive Voice Response (IVR) system using Python and Pytest.
A guide to creating and managing test fixtures for Django models using Pytest, focusing on the 'factory as a service' pattern.
A guide to creating a custom Markdown extension for Django to validate and transform links, improving content management for non-technical writers.
A tutorial on building an Interactive Voice Response (IVR) system using Python, Django, and the Twilio platform.
A technical guide comparing Django ORM GROUP BY queries with their SQL equivalents, aimed at developers comfortable with SQL.
A guide to common SQL mistakes and optimization opportunities for developers and data professionals, covering integer division, UNION vs UNION ALL, and query performance.
Explains how to prevent SQL injection in Python using psycopg2's low-level sql.Identifier and sql.Literal functions for safe query building.
A technical deep-dive into diagnosing and solving severe performance issues caused by an 'Export to Excel' feature in a Django system.
A technical guide on using SQL GROUP BY with window functions to retrieve the first or last value in a group, using a PostgreSQL event table example.
Explains security risks and best practices for managing user permissions in Django's admin interface to prevent data leaks.
A technical guide comparing Python methods for efficiently loading and transforming large, messy datasets into a PostgreSQL database.
A technical guide analyzing and improving serialization performance in Django Rest Framework, with benchmarks and practical solutions.
A technical guide on implementing hreflang tags in a multi-language Django site to improve SEO and inform search engines about available language versions.
A guide to creating database indexes in Django without causing downtime, covering atomic migrations and raw SQL.
A guide to optimizing Django dashboard performance using SQL grouping sets for advanced aggregation, including a cautionary note.
A developer explains why he's leaving Medium due to poor code support, a bad reading experience, and a frustrating writing interface for technical content.
Explores five different approaches to implementing polymorphism in Django models, a common challenge in Django ORM design.
A technical deep dive into solving PostgreSQL disk space issues by optimizing a deduplication query, focusing on reducing sort key size.
Analyzes performance issues with Django Admin's paginator on large datasets and explores solutions to eliminate slow row counting queries.
Explains a performance pitfall with Common Table Expressions (CTEs) in PostgreSQL versions 11 and earlier, showing how they can disable query optimization.