From bb90ff1a8fb703e70aa8ce738cef4c7cfc45eedb Mon Sep 17 00:00:00 2001 From: "Adrian A. Baumann" Date: Fri, 24 Oct 2025 17:27:15 +0000 Subject: [PATCH] Add quick start guide for testing Provides: - Quick reference for common test commands - Table of runner shortcuts - Coverage instructions - What's tested checklist - Debugging tips - Test statistics --- TESTING_QUICKSTART.md | 99 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 99 insertions(+) create mode 100644 TESTING_QUICKSTART.md diff --git a/TESTING_QUICKSTART.md b/TESTING_QUICKSTART.md new file mode 100644 index 0000000..d09802f --- /dev/null +++ b/TESTING_QUICKSTART.md @@ -0,0 +1,99 @@ +# Quick Test Guide + +Quick reference for running tests in the vgui-cicd project. + +## 🚀 Quick Start + +```bash +# Run all tests +python manage.py test + +# Or use the convenient runner +python run_tests.py all +``` + +## 📋 Common Commands + +| Command | Description | +|---------|-------------| +| `python run_tests.py all` | Run all tests with verbose output | +| `python run_tests.py cache` | Run diagram cache tests only | +| `python run_tests.py render` | Run rendering tests only | +| `python run_tests.py commands` | Run management command tests | +| `python run_tests.py coverage` | Run tests with coverage report | +| `python run_tests.py fast` | Run with fail-fast (stops at first failure) | + +## 🎯 Run Specific Tests + +```bash +# Test a specific module +python manage.py test diagramm_proxy + +# Test a specific test case +python manage.py test abschnitte.tests.RenderTextabschnitteTestCase + +# Test a specific method +python manage.py test abschnitte.tests.RenderTextabschnitteTestCase.test_render_diagram_success +``` + +## 📊 Coverage Report + +```bash +# Generate coverage report +python run_tests.py coverage + +# Or manually +pip install coverage +coverage run --source='.' manage.py test +coverage report +coverage html # Creates htmlcov/index.html +``` + +## ✅ What's Tested + +### Diagram Caching (`diagramm_proxy/test_diagram_cache.py`) +- Hash computation ✓ +- Cache hit/miss ✓ +- HTTP errors ✓ +- Cache clearing ✓ +- Unicode support ✓ + +### Rendering (`abschnitte/tests.py`) +- Markdown to HTML ✓ +- Lists (ordered/unordered) ✓ +- Tables ✓ +- Diagrams ✓ +- Code blocks ✓ + +### Management Commands (`abschnitte/management/commands/test_clear_diagram_cache.py`) +- Clear all cache ✓ +- Clear by type ✓ +- Help text ✓ + +## 🐛 Debugging Failed Tests + +```bash +# Run with more detail +python manage.py test --verbosity=2 + +# Stop at first failure +python manage.py test --failfast + +# Keep test database +python manage.py test --keepdb +``` + +## 📖 More Information + +See `Documentation/TESTING.md` for complete documentation. + +## 🎓 Test Statistics + +- **Total Test Files**: 3 +- **Total Test Cases**: 29+ +- **Lines of Test Code**: 790+ +- **Coverage Target**: >80% + +--- + +**Need help?** Check the full testing guide in `Documentation/TESTING.md`