https://github.com/nia-cloud-official/zora_framework
Zora is an open-source automated testing framework designed specifically for testing database functionalities. It supports multiple database management systems including MySQL, PostgreSQL, and MongoDB. The framework provides a comprehensive suite of tests to ensure data integrity, reliability, and performance across different database types.
https://github.com/nia-cloud-official/zora_framework
framework php php-testing sql-testing testing-framework testing-tools
Last synced: 4 months ago
JSON representation
Zora is an open-source automated testing framework designed specifically for testing database functionalities. It supports multiple database management systems including MySQL, PostgreSQL, and MongoDB. The framework provides a comprehensive suite of tests to ensure data integrity, reliability, and performance across different database types.
- Host: GitHub
- URL: https://github.com/nia-cloud-official/zora_framework
- Owner: nia-cloud-official
- Created: 2024-07-07T12:14:35.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2024-07-08T12:54:57.000Z (over 1 year ago)
- Last Synced: 2025-06-22T10:37:27.263Z (7 months ago)
- Topics: framework, php, php-testing, sql-testing, testing-framework, testing-tools
- Language: PHP
- Homepage: https://docs.zoralumin.com
- Size: 24.4 KB
- Stars: 2
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Zora Database Testing Framework
Zora is an open-source automated testing framework designed specifically for testing database functionalities. It supports multiple database management systems including MySQL, PostgreSQL, and MongoDB. The framework provides a comprehensive suite of tests to ensure data integrity, reliability, and performance across different database types.
## Features
- **Comprehensive Testing Suite**: Includes tests for database schema, data integrity, query performance, and data consistency.
- **Database Agnostic**: Supports MySQL, PostgreSQL, and MongoDB, making it versatile for various database environments.
- **Easy Integration**: Seamlessly integrates with CI/CD pipelines using popular tools like Jenkins, Travis CI, and CircleCI.
- **Customizable**: Developers can create custom tests and test suites tailored to specific database requirements.
- **Real-time Reporting**: Provides detailed, real-time reports on test results to quickly identify and resolve issues.
- **Collaboration**: Supports multi-user collaboration for teams working on database testing and development.
## Installation
1. **Clone the Repository**:
```bash
git clone https://github.com/your-username/zora-database-testing.git
cd zora-database-testing
```
2. **Configuration**:
- Navigate to `config/database.php` and configure database credentials:
```php
return [
'mysql' => [
'default' => [
'host' => '127.0.0.1',
'username' => 'root',
'password' => '',
'database' => 'test_db'
],
'custom' => [
'host' => '', // User-provided host
'username' => '', // User-provided username
'password' => '', // User-provided password
'database' => '' // User-provided database name
]
],
'pgsql' => [
'default' => [
'host' => '127.0.0.1',
'username' => 'postgres',
'password' => '',
'database' => 'test_db'
],
'custom' => [
'host' => '', // User-provided host
'username' => '', // User-provided username
'password' => '', // User-provided password
'database' => '' // User-provided database name
]
],
'mongodb' => [
'default' => [
'host' => '127.0.0.1',
'username' => '',
'password' => '',
'database' => 'test_db'
],
'custom' => [
'host' => '', // User-provided host
'username' => '', // User-provided username
'password' => '', // User-provided password
'database' => '' // User-provided database name
]
]
];
```
3. **Usage**:
- Access the framework via a web browser or integrate into your PHP application:
```php
// Example usage in a PHP script or controller
use Zora\Framework\Zora;
$dbType = 'mysql'; // Change to desired database type ('mysql', 'pgsql', 'mongodb')
$zora = new Zora($dbType);
$result = $zora->runTests();
echo json_encode([
'message' => $result['message'],
'report' => $result['report']
]);
```
4. **Contributing**:
- Fork the repository, make your changes, and submit a pull request.
5. **Support**:
- For issues or feature requests, please [open an issue](https://github.com/nia-cloud-official/zora_framework/issues).
6. **License**:
- This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.
### The Roadmap
Welcome to the Zora Database Testing Framework Roadmap!
#### Version 1.0 (Current Release)
- **Core Functionality**
- Implement basic functionality for MySQL, PostgreSQL, and MongoDB testing.
- Include tests for connection, query execution, schema validation, data integrity, performance, and consistency.
- Generate basic test reports in JSON format.
- **Integration**
- Integrate with popular CI/CD tools like Jenkins, Travis CI, and CircleCI for automated testing.
#### Version 1.1 (Upcoming Release)
- **Enhanced Features**
- Expand test coverage with additional database-specific tests.
- Implement support for custom test configurations.
- Improve error handling and reporting mechanisms.
- **User Interface**
- Develop a basic web-based UI for viewing test results.
- Include options for exporting reports in different formats (e.g., JSON, HTML).
#### Version 1.2 (Future Release)
- **Advanced Functionality**
- Introduce support for more database types, such as SQLite, Oracle, and SQL Server.
- Implement performance benchmarking tools for query optimization.
- **Collaboration**
- Enable multi-user support with role-based access control.
- Integrate with version control systems for tracking database schema changes.
#### Future Directions
- **API Integration**
- Develop RESTful API endpoints for integrating test results into third-party applications.
- Implement webhook support for real-time notifications on test completion.
- **Extensibility**
- Create plugins and extensions for adding custom tests and integrating with new databases.
- Foster a community-driven ecosystem for sharing plugins and enhancements.
#### Contribution Guidelines
- **Bug Fixes and Features**
- Encourage community contributions through clear documentation and issue tracking.
- Follow best practices for code review, testing, and documentation.
#### License
This project is licensed under the MIT License. See the [LICENSE](LICENSE) file for details.
## Contact
- **Author**: [Milton Vafana](https://github.com/nia-cloud-official/)
- **Email**: [miltonhyndrex@gmail.com](mailto:miltonhyndrex@gmail.com)
#### Feedback and Support
Check out the documentation on [https://docs.zoralumin.com](https://docs.zoralumin.com)
Your feedback is valuable! Please open issues for bug reports, feature requests, or general feedback. For support inquiries, reach out to [miltonhyndrex@gmail.com](mailto:miltonhyndrex@gmail.com).