Centralized testing package for Cracking Shells
git clone https://github.com/CrackingShells/Wobble.git
cd Wobble
pip install -e .pip install wobble# Install wobble
pip install -e .
# Run all tests
wobble
# Run specific test categories
wobble --category regression
wobble --category integration
# Save results to file
wobble --log-file test_results.json
# CI/CD integration with file output
wobble --format json --log-file ci_results.json --log-verbosity 3
# Enhanced test discovery
wobble --discover-only # Show test counts by category
wobble --discover-only --discover-verbosity 2 # Show uncategorized test details
wobble --discover-only --discover-verbosity 3 # Show all tests with decorators
# Test execution with decorator display
wobble --verbose # Shows [@decorator_name] for each test
# Get help
wobble --help# Clone the repository
git clone https://github.com/CrackingShells/Wobble.git
cd Wobble
# Install in development mode
pip install -e .
# Install Node.js dependencies for semantic release
npm install# Run all tests with wobble
wobble
# Run tests by category
wobble --category regression
# Run with verbose output
wobble --verbose
# Alternative: use unittest directly
python -m unittest discover testsWobble provides enhanced test discovery with multiple verbosity levels and decorator display:
# Discovery verbosity levels
wobble --discover-only --discover-verbosity 1 # Test counts by category (default)
wobble --discover-only --discover-verbosity 2 # + Uncategorized test details
wobble --discover-only --discover-verbosity 3 # + All tests with decorator info
# Test execution with decorator display
wobble --verbose # Shows [@decorator_name] for tests
wobble --category regression --verbose # Regression tests with decoratorsDecorator Display Examples:
[@regression_test]- Regression test[@integration_test]- Integration test[@slow_test]- Slow-running test[@regression_test, @slow_test]- Multiple decorators
We use Conventional Commits for automated versioning:
# Use commitizen for guided commits
npm run commit
# Or commit manually with conventional format
git commit -m "feat: add new feature"
git commit -m "fix: resolve issue with X"
git commit -m "docs: update README"Complete documentation is available in the docs/articles/ directory:
- Getting Started - Installation and basic usage
- CLI Reference - Complete command reference
- Test Organization - Test categorization strategies
- Integration Guide - Repository integration
- Architecture Overview - System design
- Contributing Guidelines - Development workflow
We welcome contributions! Please see our Contributing Guide for details on:
- Development workflow
- Code style guidelines
- Testing requirements
- Pull request process
This project is licensed under the GNU Affero General Public License v3 - see the LICENSE file for details.
- Homepage: https://github.com/CrackingShells/Wobble
- Bug Reports: https://github.com/CrackingShells/Wobble/issues
- Documentation: docs/articles/