Compétences testing
🧪

testing

Sûr 🌐 Accès réseau📁 Accès au système de fichiers⚙️ Commandes externes

Написание комплексных тестов для распределенных систем Rust

Également disponible depuis: CrazySwami,5t111111,ByronWilliamsCPA,Joseph OBrien,5t111111,Joseph OBrien

Написание надежных тестов для распределенных систем является сложной задачей без структурированного руководства. Этот навык предоставляет шаблоны тестирования для модульных тестов, интеграционных тестов, тестирования на основе свойств и фаззинга, чтобы помочь разработчикам обеспечить качество кода и выявить пограничные случаи.

Prend en charge: Claude Codex Code(CC)
📊 69 Adéquat
1

Télécharger le ZIP du skill

2

Importer dans Claude

Allez dans Paramètres → Capacités → Skills → Importer un skill

3

Activez et commencez à utiliser

Tester

Utilisation de "testing". Help me write unit tests for a Repository struct with success and error cases

Résultat attendu:

  • Группируйте связанные тесты в модуле tests
  • Используйте #[test] для синхронных тестов и #[tokio::test] для асинхронных тестов
  • Тестируйте как успешные пути, так и ошибочные условия
  • Используйте pretty_assertions::assert_eq для читаемых различий
  • Тестируйте пограничные случаи, такие как пустые строки и некорректные входные данные
  • Пример: Repository::new с недопустимым именем возвращает RepositoryError::InvalidName

Utilisation de "testing". How do I set up property-based testing for my protocol code

Résultat attendu:

  • Определите стратегии proptest, соответствующие вашему домену входных данных
  • Используйте генерацию на основе regex для строковых полей
  • Тестируйте циклическую сериализацию и десериализацию
  • Генерируйте случайные векторы байтов для бинарных протоколов
  • Настройте сохранение ошибок для отладки падающих случаев
  • Запускайте тысячи итераций для обнаружения пограничных случаев

Utilisation de "testing". Create integration tests for multi-node synchronization

Résultat attendu:

  • Настройте несколько экземпляров TestNode с временными директориями
  • Используйте futures::future::join_all для параллельного запуска узлов
  • Соединяйте узлы с помощью асинхронных методов подключения
  • Создавайте репозитории на одном узле и проверяйте распространение
  • Добавляйте задержки для завершения операций синхронизации
  • Утверждайте, что все узлы имеют синхронизированное состояние

Audit de sécurité

Sûr
v5 • 1/16/2026

This is a pure prompt-based skill containing only documentation and test pattern examples. No executable code, no file access, no network calls, and no command execution capabilities. The content provides legitimate Rust testing guidance using standard testing frameworks and patterns. All 52 static findings are false positives caused by the scanner flagging markdown code examples and metadata fields as security issues.

2
Fichiers analysés
408
Lignes analysées
3
résultats
5
Total des audits

Score de qualité

38
Architecture
100
Maintenabilité
87
Contenu
21
Communauté
100
Sécurité
83
Conformité aux spécifications

Ce que vous pouvez construire

Применение пирамиды тестирования

Реализуйте комплексное тестовое покрытие с модульными, интеграционными, E2E и свойствными тестами в соответствии с лучшими практиками индустрии

Тестирование P2P синхронизации

Пишите интеграционные тесты с несколькими узлами для проверки синхронизации репозитория и поведения консенсуса между валидаторами

Реализация фаззинга

Настройте цели фаззинга для обнаружения пограничных случаев и потенциальных уязвимостей в коде парсинга протоколов

Essayez ces prompts

Основы модульного тестирования
Помогите мне написать модульные тесты для моего модуля Rust. Включите асинхронные тесты с tokio::test и используйте pretty_assertions для читаемых различий.
Интеграционные фикстуры
Создайте тестовую фикстуру для интеграционного тестирования, которая настраивает временный узел с временной директорией и тестовой конфигурацией.
Тестирование на основе свойств
Напишите стратегии proptest для проверки обработки имен репозиториев. Включите генерацию имен на основе regex и тесты проверки подписи.
Настройка фаззинга
Настройте цель cargo-fuzz для парсинга сетевых сообщений. Убедитесь, что фаззер корректно обрабатывает некорректный ввод без паники.

Bonnes pratiques

  • Следуйте пирамиде тестирования: много модульных тестов, несколько интеграционных, мало E2E тестов
  • Используйте тестирование на основе свойств для обнаружения пограничных случаев, которые пропускают ручные тесты
  • Запускайте фаззеры непрерывно для обнаружения уязвимостей парсинга в коде протоколов

Éviter

  • Избегайте размещения всех тестов в одной функции #[test]
  • Не пропускайте тестирование ошибочных случаев в пользу только счастливого пути
  • Избегайте связывания тестов с деталями реализации, которые часто меняются

Foire aux questions

Какие фреймворки тестирования Rust поддерживает этот навык?
Стандартная библиотека тестирования, tokio::test для async, proptest для тестирования на основе свойств и cargo-fuzz для фаззинга.
Какое максимальное тестовое покрытие рекомендуется?
Стремитесь к высокому покрытию критических путей. Используйте cargo llvm-cov для генерации отчетов и выявления непокрытого кода.
Могу ли я использовать этот навык с существующими фреймворками тестирования?
Да, шаблоны работают с любым фреймворком тестирования Rust. mockall рекомендуется для имитации зависимостей.
Безопасны ли мои тестовые данные?
Этот навык только предоставляет руководство. Он не читает, не записывает и не передает какие-либо тестовые данные из вашего проекта.
Почему мои асинхронные тесты завершаются по тайм-ауту?
Убедитесь, что вы используете #[tokio::test] и избегаете блокировки в асинхронных контекстах. Проверьте пропущенные точки await.
Чем это отличается от cargo test?
Этот навык предоставляет шаблоны и руководство по тестированию. cargo test — это фактическая команда для запуска тестов в вашем проекте.

Détails du développeur

Structure de fichiers

📄 SKILL.md