Changelog
View SourceAll notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
[0.1.0] - 2024-07-06
Added
- Initial release of Spex framework
- Given-When-Then DSL for executable specifications
- Built on ExUnit with AI-optimized features
Spex.Helpersmodule with semantic helper functionsmix spexcommand for running specifications- Manual mode with interactive step-by-step execution
- Built-in support for Scenic GUI testing
- Context flow between test steps
- Framework setup helpers for application lifecycle management
- Comprehensive documentation and examples
Features
- Core DSL:
spex,scenario,given_,when_,then_,and_macros - Semantic Helpers:
start_scenic_app/2,can_connect_to_scenic_mcp?/1,application_running?/1 - Manual Mode: Interactive testing with IEx shell integration
- Mix Integration: Dedicated
mix spexcommand with proper lifecycle management - GUI Testing: Built-in helpers for Scenic applications with MCP server integration
- Documentation: Comprehensive guides in
/docsdirectory
Architecture
- Built on ExUnit for reliability and compatibility
- Controlled execution environment via
mix spexonly - Automatic compilation and application lifecycle management
- Clean separation between framework and user code