UsefulLinks
Computer Science
Cybersecurity
Property-Based Testing
1. Introduction to Property-Based Testing
2. Fundamental Concepts
3. Property-Based Testing Workflow
4. Data Generation Techniques
5. Advanced Shrinking
6. Stateful Property-Based Testing
7. Practical Applications
8. Security Testing Applications
9. Best Practices and Guidelines
10. Tools and Frameworks
11. Advanced Topics
5.
Advanced Shrinking
5.1.
Shrinking Fundamentals
5.1.1.
Shrinking Objectives
5.1.1.1.
Minimality Goals
5.1.1.2.
Readability Improvement
5.1.1.3.
Debugging Assistance
5.1.2.
Shrinking Strategies
5.1.2.1.
Greedy Shrinking
5.1.2.2.
Binary Search Shrinking
5.1.2.3.
Heuristic-Based Shrinking
5.1.3.
Shrinking Metrics
5.1.3.1.
Size Reduction
5.1.3.2.
Complexity Reduction
5.1.3.3.
Semantic Preservation
5.2.
Implementation Approaches
5.2.1.
Integrated Shrinking
5.2.1.1.
Generator-Coupled Shrinking
5.2.1.2.
Type-Aware Shrinking
5.2.1.3.
Structural Shrinking
5.2.2.
Separate Shrinking Phase
5.2.2.1.
Post-Generation Shrinking
5.2.2.2.
Independent Shrinking Logic
5.2.2.3.
Shrinking Pipelines
5.2.3.
Custom Shrinking Logic
5.2.3.1.
Domain-Specific Shrinking
5.2.3.2.
Constraint-Aware Shrinking
5.2.3.3.
Performance-Optimized Shrinking
5.3.
Shrinking Complex Data Structures
5.3.1.
Collection Shrinking
5.3.1.1.
Element Removal
5.3.1.2.
Size Reduction
5.3.1.3.
Content Simplification
5.3.2.
Tree Shrinking
5.3.2.1.
Subtree Removal
5.3.2.2.
Depth Reduction
5.3.2.3.
Node Simplification
5.3.3.
Graph Shrinking
5.3.3.1.
Edge Removal
5.3.3.2.
Vertex Removal
5.3.3.3.
Connectivity Preservation
5.4.
Shrinking Quality Assessment
5.4.1.
Minimality Verification
5.4.1.1.
Local Minimality
5.4.1.2.
Global Minimality
5.4.1.3.
Practical Minimality
5.4.2.
Shrinking Effectiveness
5.4.2.1.
Reduction Ratio
5.4.2.2.
Shrinking Speed
5.4.2.3.
Quality Metrics
5.4.3.
Troubleshooting Shrinking Issues
5.4.3.1.
Stuck Shrinking
5.4.3.2.
Ineffective Shrinking
5.4.3.3.
Performance Problems
Previous
4. Data Generation Techniques
Go to top
Next
6. Stateful Property-Based Testing