10 repositorios
Frameworks for unit testing, regression testing, and finding logic bugs.
Explore 10 awesome GitHub repositories matching part of an awesome list · Database Testing. Refine with filters or upvote what's useful.
Testcontainers for Java is a library for launching and managing disposable Docker containers to provide isolated dependencies for automated tests. It provides specialized provisioners for containerized databases, a manager for WebDriver browser containers, and an orchestrator for deploying multi-container applications via Docker Compose. The project ensures reproducible data states through database schema initialization and provides integration with JUnit to manage the lifecycle of external services. It supports automated browser testing by launching Selenium containers with the ability to re
Allows running real database engines in Docker containers during tests to replace mocks or in-memory databases.
Hypothesis is a Python property-based testing library and data generation engine. It enables the discovery of edge cases and bugs by generating a wide range of randomized inputs based on defined strategies and shrinking complex failing examples to their smallest possible form. It also functions as a state machine testing framework to verify system behavior across sequences of interdependent operations. The project features a fuzzing integration layer that converts raw byte buffers from coverage-guided fuzzers into structured test cases. It includes a persistence mechanism to store and synchro
Implements a specialized storage mechanism to track and manage the history of test cases and failures.
Hibernate ORM es un mapeador objeto-relacional para Java y una implementación completa de la Jakarta Persistence API. Funciona como una capa de abstracción de bases de datos SQL que traduce modelos de objetos Java a esquemas de bases de datos relacionales para gestionar la persistencia y el ciclo de vida de los datos. El framework se distingue por su arquitectura de aislamiento de datos multi-inquilino (multi-tenant) para separar la información de los clientes dentro de una misma instancia de base de datos. También cuenta con un generador de esquemas que produce y actualiza automáticamente estructuras relacionales basadas en mapeos de entidades. El sistema cubre áreas como la gestión de transacciones, control de concurrencia mediante bloqueos y seguimiento de datos temporales para auditoría. Proporciona herramientas para optimizar la obtención de datos mediante estrategias de grafos de entidades y admite tipos de datos avanzados como vectores y caracteres nacionalizados. El proyecto incluye un conjunto completo de utilidades de prueba para la capa de persistencia, incluyendo filtrado de dialectos de bases de datos y pruebas de cumplimiento de especificaciones.
Includes utilities to execute or skip specific tests dynamically based on the database dialect in use.
This project is a reference implementation of Domain-Driven Design, Clean Architecture, and Command Query Responsibility Segregation (CQRS) patterns using the Go programming language. It serves as a sample application to demonstrate how to decouple core domain rules from infrastructure and delivery mechanisms. The system is built as a gRPC microservices architecture, utilizing type-safe communication and service contracts. It implements an event-driven architecture to manage eventual consistency and asynchronous processing, specifically employing the Outbox pattern to ensure reliable messagin
Ensures data persistence layers function correctly by running tests against real database engines in containers.
Tortoise ORM is an asynchronous object-relational mapper for Python that mirrors Django's model and queryset API while running on asyncio. It defines database tables as Python classes with typed fields and supports foreign key, many-to-many, and one-to-one relations, providing a chainable query API for filtering, annotating, grouping, and prefetching related objects without blocking the event loop. The ORM includes a built-in migration engine that detects model changes, generates migration files, and applies or reverts schema changes through a command-line tool. It connects to PostgreSQL, MyS
Allows skipping tests based on the connected database's supported features or dialect.
Testcontainers for .NET es una biblioteca de pruebas de Docker y un framework de pruebas de integración diseñado para gestionar el ciclo de vida de contenedores desechables. Proporciona abstracciones de alto nivel como un wrapper de la API de Docker para aprovisionar infraestructura efímera, reemplazando mocks con instancias reales de bases de datos, mensajería y motores de búsqueda para garantizar entornos de prueba aislados y reproducibles. El proyecto se distingue por un patrón de configuración de contenedor mediante constructor y un mecanismo de enlace de puertos dinámico que evita colisiones durante la ejecución concurrente de pruebas. Permite una comunicación servicio a servicio confiable a través de orquestación de red virtual y alias de red, y garantiza la disponibilidad del servicio mediante comprobaciones de preparación basadas en polling para endpoints HTTP y puertos TCP. La biblioteca proporciona módulos especializados para bases de datos relacionales, NoSQL y vectoriales, así como brokers de mensajería y emuladores de servicios en la nube. Su superficie de capacidades se extiende a la configuración de imágenes de contenedor, recolección de logs y la simulación de condiciones de red para verificar la resiliencia del sistema. Admite la conectividad a runtimes de Docker locales y remotos a través de variables de entorno y archivos de configuración estandarizados.
Provisions disposable relational, NoSQL, or vector database instances in Docker to verify data persistence and query logic.
Automated testing to find logic and performance bugs in database systems
Automated testing to find logic bugs in DBMS implementations.
PostgreSQL Unit Testing Suite
Unit testing framework for PostgreSQL.
Regression Testing your SQL queries
Regression testing tool for SQL queries.
DbFit is a database testing framework that supports easy test-driven development of your database code.
Framework for test-driven development of database code.