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.Helpers
module with semantic helper functionsmix spex
command 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 spex
command with proper lifecycle management - GUI Testing: Built-in helpers for Scenic applications with MCP server integration
- Documentation: Comprehensive guides in
/docs
directory
Architecture
- Built on ExUnit for reliability and compatibility
- Controlled execution environment via
mix spex
only - Automatic compilation and application lifecycle management
- Clean separation between framework and user code