azure-devops-test-manager
Release Notes - Azure DevOps Test Manager v1.0.0
Release Date: October 29, 2024
Version: 1.0.0
Repository: iqbaljunaid/azure-devops-test-manager
PyPI: azure-devops-test-manager
π Major Release - Production Ready!
We're excited to announce the v1.0.0 stable release of Azure DevOps Test Manager! This release marks the first production-ready version of our comprehensive tool for managing Azure DevOps test points with XML integration and intelligent fuzzy matching capabilities.
Key Features
Core Test Management
- Complete Test Point Management: List, filter, and update test points from Azure DevOps test plans and suites
- Bulk Operations: Efficiently update multiple test points with batch operations
- Advanced Filtering: Filter test points by outcome, automation status, state, and name patterns
- Detailed Test Information: Retrieve comprehensive test case details including steps, parameters, and metadata
XML Integration & Automation
- XML Test Results Parser: Parse JUnit/pytest XML test results seamlessly
- Intelligent Fuzzy Matching: Smart matching between XML test names and Azure DevOps test case names using configurable similarity thresholds
- Automated Updates: Automatically update test point outcomes based on XML results
- Multiple XML Format Support: Compatible with various testing frameworks (JUnit, pytest, NUnit)
Command Line Interface
- Dual CLI Commands: Access via
azure-devops-test-managerorado-test-manager - Multiple Output Formats: Console, JSON, and CSV output support for integration flexibility
- Dry Run Mode: Preview changes before applying them with
--dry-run - Comprehensive Help: Built-in help system with examples and usage patterns
- Version Support: Added
--versionflag for easy version checking
Security & Configuration
- Environment Variable Configuration: Secure credential management through environment variables
- Flexible Authentication: Support for Personal Access Tokens with proper scope validation
- Configuration Validation: Built-in validation and helpful error messages for setup issues
What's New in v1.0.0
Modern Python Development
- Python 3.10+ Support: Updated to require Python 3.10 or higher for modern language features
- Type Hints Throughout: Comprehensive type annotations for better IDE support and code reliability
- Modern Packaging: Built with
pyproject.tomland setuptools-scm for dynamic versioning - Clean Architecture: Object-oriented design with clear separation of concerns
Package Management & CI/CD
- PyPI Publishing: Now available on the Python Package Index for easy installation
- GitHub Actions CI/CD: Automated testing and publishing pipeline with trusted publishing
- Automated Testing: Comprehensive test structure with pytest, coverage reporting, and type checking
- Code Quality: Integrated linting (flake8), formatting (black), and type checking (mypy)
Developer Experience
- Rich Documentation: Comprehensive README with examples, installation guides, and usage patterns
- Development Setup: Easy development installation with
pip install -e ".[dev]" - Multiple Installation Methods: Support for pip, source installation, and development setup
- Clear Error Messages: Helpful error handling with actionable feedback
Installation
From PyPI (Recommended)
pip install azure-devops-test-managerFrom Source
git clone https://github.com/iqbaljunaid/azure-devops-test-manager.git
cd azure-devops-test-manager
pip install -e .Quick Start
1. Setup Environment Variables
export AZURE_DEVOPS_PAT="your-personal-access-token"
export AZURE_DEVOPS_ORG="https://dev.azure.com/your-org"
export AZURE_DEVOPS_PROJECT="your-project-name"2. List Test Points
# List all test points in a test plan
azure-devops-test-manager list-test-points --plan-id 12345
# Export to JSON
azure-devops-test-manager list-test-points --plan-id 12345 --output json > results.json3. Update from XML Results
# Update test points based on XML test results
azure-devops-test-manager update-from-xml --plan-id 12345 --xml-file test-results.xml
# Preview changes first
azure-devops-test-manager update-from-xml --plan-id 12345 --xml-file test-results.xml --dry-run4. Check Version
azure-devops-test-manager --version
# Output: azure-devops-test-manager 1.0.0Technical Specifications
Dependencies
- Core Requirements:
requests>=2.28.0- Azure DevOps REST API interactionsbeautifulsoup4>=4.11.0- HTML test step parsingfuzzywuzzy>=0.18.0- Intelligent name matchingpython-Levenshtein>=0.12.0- Enhanced fuzzy matching performanceazure-devops>=7.1.0b4- Official Azure DevOps Python SDKazure-core>=1.33.0- Azure SDK core functionality
Python Compatibility
- Supported Versions: Python 3.10, 3.11, 3.12
- Dropped Support: Python 3.8 and 3.9 (for modern language features)
- Platform Support: Cross-platform (Windows, macOS, Linux)
API Compatibility
- Azure DevOps API Version: 7.1
- REST API Coverage: Test Plans, Test Suites, Test Points, Test Cases
- Authentication: Personal Access Token (PAT)
Performance & Reliability
Optimizations
- Batch Operations: Efficient bulk updates to minimize API calls
- Intelligent Caching: Reduced redundant API requests
- Connection Pooling: Optimized HTTP connections for better performance
- Error Recovery: Robust error handling with retry logic
Reliability Features
- Input Validation: Comprehensive validation of user inputs and configuration
- Graceful Degradation: Continues operation when non-critical features fail
- Detailed Logging: Comprehensive error messages and debugging information
- Safe Operations: Dry-run mode prevents accidental changes
Use Cases
Development Teams
- Automated Testing Integration: Connect your CI/CD pipeline test results directly to Azure DevOps
- Test Result Reporting: Generate comprehensive test reports in multiple formats
- Quality Assurance: Track test execution and outcomes across multiple test runs
QA Engineers
- Manual Test Management: Bulk update test outcomes after manual testing sessions
- Test Plan Analysis: Export and analyze test plan data for reporting
- Cross-Framework Support: Work with results from various testing frameworks
DevOps Engineers
- Pipeline Integration: Incorporate test result updates into deployment pipelines
- Automated Reporting: Generate test reports for stakeholders and management
- Compliance Tracking: Maintain audit trails of test executions and outcomes
Migration from Alpha Versions
If you were using alpha versions (1.0.0a1, etc.), please note:
Breaking Changes
- Python Version Requirement: Now requires Python 3.10+ (previously supported 3.8+)
- Import Paths: Ensure you're using the correct module imports for any programmatic usage
Recommended Upgrade Steps
- Update Python: Ensure you're running Python 3.10 or higher
- Reinstall Package:
pip uninstall azure-devops-test-manager && pip install azure-devops-test-manager - Test Configuration: Run
azure-devops-test-manager --versionto verify installation - Update Scripts: Review any custom scripts using the package
Contributing
We welcome contributions! Please see our contributing guidelines in the repository.
Development Setup
git clone https://github.com/iqbaljunaid/azure-devops-test-manager.git
cd azure-devops-test-manager
pip install -e ".[dev]"Running Tests
pytest tests/ --cov=azure_devops_test_managerDocumentation & Support
- GitHub Repository: iqbaljunaid/azure-devops-test-manager
- Issue Tracker: Report bugs and request features
- PyPI Package: azure-devops-test-manager
- License: MIT License
Release Artifacts
GitHub Release
- Tag:
v1.0.0 - Source Code: Available in zip and tar.gz formats
- Checksums: Provided for verification
PyPI Package
- Package Name:
azure-devops-test-manager - Version:
1.0.0 - Wheel: Universal wheel available for fast installation
- Source Distribution: Available for custom builds
Acknowledgments
Thank you to all contributors, early adopters, and the Azure DevOps community for making this release possible!
Special Thanks
- The Azure DevOps team for comprehensive API documentation
- The Python packaging community for excellent tooling
- All alpha testers who provided valuable feedback
What's Next?
Looking ahead to future releases:
Planned Features (v1.1.0+)
- Enhanced reporting capabilities
- Additional XML format support
- Performance optimizations
- Extended Azure DevOps API integration
- Web interface for non-technical users
Community Requests
We're actively collecting feedback and feature requests. Please share your ideas in our GitHub Issues!