Popularity
3.8
Declining
Activity
7.5
-
82
3
17
Programming language: Go
License: Apache License 2.0
go-localstack alternatives and similar packages
Based on the "Mock" category.
Alternatively, view go-localstack alternatives based on common mentions on social networks and blogs.
-
hoverfly
Lightweight service virtualization/ API simulation / API mocking tool for developers and testers -
smtpmock
SMTP mock server written on Golang. Mimic any 📤 SMTP server behavior for your test environment with fake SMTP server. -
monkey
One line to mock functions/methods/variables in place without dependency injection or code generation
InfluxDB – Built for High-Performance Time Series Workloads
InfluxDB 3 OSS is now GA. Transform, enrich, and act on time series data directly in the database. Automate critical tasks and eliminate the need to move data externally. Download now.
Promo
www.influxdata.com

Do you think we are missing an alternative of go-localstack or a related project?
README
go-localstack
Go Wrapper for using localstack in go testing
Installation
Please make sure that you have Docker installed.
go get github.com/elgohr/go-localstack
Usage
With SDK V2
func ExampleLocalstackWithContextSdkV2() {
ctx, cancel := context.WithTimeout(context.Background(), 20*time.Second)
defer cancel()
l, err := localstack.NewInstance()
if err != nil {
log.Fatalf("Could not connect to Docker %v", err)
}
if err := l.StartWithContext(ctx); err != nil {
log.Fatalf("Could not start localstack %v", err)
}
cfg, err := config.LoadDefaultConfig(ctx,
config.WithRegion("us-east-1"),
config.WithEndpointResolverWithOptions(aws.EndpointResolverWithOptionsFunc(func(_, _ string, _ ...interface{}) (aws.Endpoint, error) {
return aws.Endpoint{
PartitionID: "aws",
URL: l.EndpointV2(localstack.SQS),
SigningRegion: "us-east-1",
HostnameImmutable: true,
}, nil
})),
config.WithCredentialsProvider(credentials.NewStaticCredentialsProvider("dummy", "dummy", "dummy")),
)
if err != nil {
log.Fatalf("Could not get config %v", err)
}
myTestWithV2(cfg)
}
With SDK V1
func TestWithLocalStack(t *testing.T) {
ctx, cancel := context.WithTimeout(context.Background(), 20*time.Second)
defer cancel()
l, err := localstack.NewInstance()
if err != nil {
log.Fatalf("Could not connect to Docker %v", err)
}
if err := l.StartWithContext(ctx); err != nil {
log.Fatalf("Could not start localstack %v", err)
}
myTestWith(&aws.Config{
Credentials: credentials.NewStaticCredentials("not", "empty", ""),
DisableSSL: aws.Bool(true),
Region: aws.String(endpoints.UsWest1RegionID),
Endpoint: aws.String(l.Endpoint(localstack.SQS)),
})
}
*Note that all licence references and agreements mentioned in the go-localstack README section above
are relevant to that project's source code only.