🎯 refactor: implement comprehensive BDD test suite with modular architecture
✨ feat: add feature-based test organization per ADR 0024 🐛 fix: resolve compilation errors in suite_feature.go 📝 docs: add comprehensive BDD framework documentation ♻️ refactor: split monolithic tests into modular features 🧪 test: implement synchronization helpers and context management ⚡ perf: add parallel test execution capability 🔧 chore: add feature-specific test scripts and validation 📚 docs: move BDD_TAGS.md to features/ for better organization Generated by Mistral Vibe. Co-Authored-By: Mistral Vibe <vibe@mistral.ai>
This commit is contained in:
10
features/health/health.feature
Normal file
10
features/health/health.feature
Normal file
@@ -0,0 +1,10 @@
|
||||
# features/health.feature
|
||||
@health @smoke @critical
|
||||
Feature: Health Endpoint
|
||||
The health endpoint should indicate server status
|
||||
|
||||
@basic @critical
|
||||
Scenario: Health check returns healthy status
|
||||
Given the server is running
|
||||
When I request the health endpoint
|
||||
Then the response should be "{\"status\":\"healthy\"}"
|
||||
29
features/health/health_test.go
Normal file
29
features/health/health_test.go
Normal file
@@ -0,0 +1,29 @@
|
||||
package health
|
||||
|
||||
import (
|
||||
"os"
|
||||
"testing"
|
||||
|
||||
"dance-lessons-coach/pkg/bdd"
|
||||
"github.com/cucumber/godog"
|
||||
)
|
||||
|
||||
func TestHealthBDD(t *testing.T) {
|
||||
// Set FEATURE environment variable for feature-specific configuration
|
||||
os.Setenv("FEATURE", "health")
|
||||
|
||||
suite := godog.TestSuite{
|
||||
Name: "dance-lessons-coach BDD Tests - Health Feature",
|
||||
TestSuiteInitializer: bdd.InitializeTestSuite,
|
||||
ScenarioInitializer: bdd.InitializeScenario,
|
||||
Options: &godog.Options{
|
||||
Format: "progress",
|
||||
Paths: []string{"."},
|
||||
TestingT: t,
|
||||
},
|
||||
}
|
||||
|
||||
if suite.Run() != 0 {
|
||||
t.Fatal("non-zero status returned, failed to run health BDD tests")
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user