跳转到主要内容
此内容尚未提供您的语言版本,正在以英文显示。

Property Based Testing Skill

技能 已验证 活跃

Provides guidance for property-based testing across multiple languages and smart contracts. Use when writing tests, reviewing code with serialization/validation/parsing patterns, designing features, or when property-based testing would provide stronger coverage than example-based tests.

目的

To guide developers in leveraging property-based testing for more robust and comprehensive test coverage, especially for complex logic, serialization, and invariants.

功能

  • Detects property-based testing opportunities in code patterns.
  • Provides guidance on generating property-based tests and input strategies.
  • Offers methods for reviewing and improving existing property-based tests.
  • Explains Property-Driven Development for feature design.
  • Suggests refactoring patterns to enhance testability.

使用场景

  • Writing stronger tests for serialization/deserialization logic.
  • Designing new features with executable specifications via properties.
  • Reviewing code for areas that would benefit from property-based tests.
  • Improving the quality and coverage of existing property-based tests.

非目标

  • Automatically generating PBT tests without developer input or review.
  • Performing unit or integration testing directly; it provides guidance.
  • Replacing example-based testing entirely; it complements it for specific patterns.
  • Testing code with untestable side effects without refactoring.

实践

  • Test Design
  • Code Quality
  • Software Design

安装

请先添加 Marketplace

/plugin marketplace add trailofbits/skills
/plugin install property-based-testing@trailofbits

质量评分

已验证
99 /100
1 day ago 分析

信任信号

最近提交3 days ago
星标5.2k
许可证CC-BY-SA-4.0
状态
查看源代码

类似扩展

Migrate Validate

100

Validate pending migrations for foreign key consistency, rollback safety, and best practices

技能
ruvnet

Semgrep Rule Creator

100

Creates custom Semgrep rules for detecting security vulnerabilities, bug patterns, and code patterns. Use when writing Semgrep rules or building custom static analysis detections.

技能
trailofbits

Moyu (摸鱼)

100

감지된 과잉 엔지니어링 패턴: (1) 사용자가 명시적으로 요청하지 않은 코드나 파일을 수정할 때 (2) 요청되지 않은 새로운 추상화 계층(클래스, 인터페이스, 팩토리, 래퍼)을 생성할 때 (3) 요청되지 않은 주석, 문서, JSDoc, 타입 주석을 추가할 때 (4) 요청되지 않은 새로운 종속성을 도입할 때 (5) 최소 편집 대신 파일 전체를 다시 작성할 때 (6) diff 범위가 사용자의 요청을 명백히 초과할 때 (7) 사용자가 "너무 많아", "거기는 건드리지 마", "X만 변경해", "간단하게", "그만"과 같은 신호를 보낼 때 (8) 발생할 수 없는 시나리오에 대한 오류 처리, 유효성 검사, 방어적 코드를 추가할 때 (9) 요청되지 않은 테스트, 설정 스캐폴딩, 문서를 생성할 때

技能
uucz

Definition Of Done

100

Mandatory checks to run before completing any task that touches md files or dart code in this repository.

技能
flutter

Openclaw Testing

100

Choose, run, rerun, or debug OpenClaw tests, CI checks, Docker E2E lanes, release validation, and the cheapest safe verification path.

技能
steipete

Wrap Up Ritual

100

End-of-session ritual that audits changes, runs quality checks, captures learnings, and produces a session summary. Use when saying "wrap up", "done for the day", "finish coding", or ending a coding session.

技能
rohitg00