Languages

Swift

Swift is a programming language developed by Apple, designed to develop different applications across Apple’s platforms.

❋ Swift Overview

  • SwiftCheck - Best used for native Swift applications and libraries, inspired by Haskell’s QuickCheck

Groovy Software Labs is not affiliated with these libraries in any way.

❋ Property-Based Testing Libraries

  • SwiftLint - Highly configurable with built-in rules and integrates with Xcode and CI pipelines

  • SwiftFormat - Automatic formatter often used along side SwiftLint

Groovy Software Labs is not affiliated with these linters in any way.

❋ Linting Tools

❋ Getting Started

Python

Python is a high-level programming language known mostly for its readability, as well as its rich ecosystem.

❋ Python Overview

  • Hypothesis - Best used for general python testing

Groovy Software Labs is not affiliated with Hypothesis in any way.

❋ Property-Based Testing Libraries

  • Ruff - Written in Rust and is extremely fast

  • Pylint - Excellent at producing deep static analysis and detailed recommendations

  • Flake8 - Lightweight and extensible with plugins

Groovy Software Labs is not affiliated with these linters in any way.

❋ Linting Tools

❋ Getting Started (Coming Soon)

TypeScript

TypeScript is a statically typed superset of JavaScript, that enables developers to write safer and more maintainable code.

❋ TypeScript Overview

  • fast-check - Best used for TypeScript and JavaScript projects

  • jsverify - Inspirted by Haskell’s QuickCheck

  • testcheck-js - Port of Clojure’s test.check, and is most commonly used by functional programmer enthusiasts

Groovy Software Labs is not affiliated with these libraries in any way.

❋ Property-Based Testing Libraries

  • ESLint - Highly customizable, supports TypeScript and JavaScript through the TypeScript ESLint plugin

  • Biome - Modern four-in-one formatter and linter that focuses on speed and configuration

Groovy Software Labs is not affiliated with these linters in any way.

❋ Linting Tools

❋ Getting Started (Coming Soon)