This directory contains all testing frameworks, quality assurance tools, and automated validation systems for the IT-Journey project.
The IT-Journey testing framework follows modern DevOps practices with emphasis on:
test/
โโโ README.md # This comprehensive guide
โโโ hyperlink-guardian/ # Complete link health monitoring system
โ โโโ scripts/ # Core testing scripts
โ โ โโโ guardian.sh # Main link testing engine
โ โ โโโ ai-analyzer.py # AI-powered failure analysis
โ โ โโโ validate.sh # Local validation and testing
โ โโโ config/ # Configuration files
โ โ โโโ guardian-config.yml # Main configuration
โ โ โโโ exclusions.txt # URL exclusion patterns
โ โ โโโ test-config.json # Test environment settings
โ โโโ templates/ # Output and report templates
โ โ โโโ issue-template.md # GitHub issue template
โ โ โโโ report-template.html # HTML report template
โ โโโ docs/ # Testing documentation
โ โโโ setup.md # Setup and configuration guide
โ โโโ usage.md # Usage examples and patterns
โ โโโ troubleshooting.md # Common issues and solutions
โโโ [future-test-frameworks]/ # Additional testing systems
The flagship testing system that provides comprehensive link health monitoring with AI-powered analysis.
# Run basic link health check
./test/hyperlink-guardian/scripts/guardian.sh
# Run with verbose output and custom settings
./test/hyperlink-guardian/scripts/guardian.sh --verbose --parallel 15
# Validate the system locally
./test/hyperlink-guardian/scripts/validate.sh
The system uses a layered configuration approach:
The testing framework integrates seamlessly with GitHub Actions:
Workflow Location: .github/workflows/hyperlink-guardian.yml
Schedule: Daily at 3:00 AM UTC (configurable)
Triggers:
Outputs:
test-results/
โโโ summary.json # High-level statistics and metadata
โโโ detailed-results.csv # Complete test results with timestamps
โโโ broken-links.json # Categorized broken link analysis
โโโ ai-analysis.json # AI-generated insights and recommendations
โโโ performance-metrics.json # Execution timing and resource usage
โโโ artifacts/ # Supporting files and logs
โโโ raw-links.txt # All discovered links
โโโ test-log.txt # Execution log with debug info
โโโ screenshots/ # Visual evidence (future enhancement)
The AI analysis provides:
test/
The system is designed for extensibility:
Custom Link Types: Add new URL patterns and validation rules
Enhanced AI Analysis: Extend prompts and analysis categories
Additional Outputs: Create new report formats and destinations
Integration Points: Connect with external monitoring systems
# Set up development environment
cd test/hyperlink-guardian
./scripts/validate.sh --setup
# Run tests with development settings
./scripts/guardian.sh --config config/test-config.json --verbose
# Test AI analysis locally (requires OPENAI_API_KEY)
export OPENAI_API_KEY="your-key-here"
./scripts/ai-analyzer.py --input ./test-results --verbose
The testing framework serves multiple educational purposes:
Variable | Description | Default | Required |
---|---|---|---|
SITE_URL |
Target site URL for testing | Auto-detected | No |
OPENAI_API_KEY |
OpenAI API key for AI analysis | None | For AI features |
MAX_PARALLEL |
Maximum parallel link tests | 10 | No |
TIMEOUT |
Request timeout in seconds | 30 | No |
VERBOSE |
Enable verbose logging | false | No |
Guardian Config (config/guardian-config.yml
):
site:
url: "https://bamr87.github.io/it-journey"
timeout: 30
retry_count: 2
testing:
max_parallel: 10
exclude_patterns:
- "localhost"
- "127.0.0.1"
ai_analysis:
model: "gpt-4"
max_tokens: 3000
temperature: 0.3
No Links Found: Check file patterns and exclusion rules
Permission Denied: Ensure scripts are executable (chmod +x
)
AI Analysis Fails: Verify OPENAI_API_KEY is set correctly
Timeout Errors: Increase timeout values for slow connections
# Enable comprehensive debugging
export VERBOSE=true
export DEBUG=true
./test/hyperlink-guardian/scripts/guardian.sh --verbose
test/hyperlink-guardian/docs/
for detailed guidestesting
labelTesting improvements are always welcome:
The test directory embodies the IT-Journey commitment to quality, education, and automation - ensuring that every learner has access to reliable, up-to-date educational resources while providing real-world examples of modern testing practices.