workhop online
Testing with Go
DevOps Masterclass
This 3-day workshop will start with the basics of Go language and then dive into TDD and various testing libraries and techniques to implement effective Go applications.
About the Testing with Go Course
Go is the language used for creating many of the popular DevOps tools and libraries. It's being used for writing high-performing micro-services. It is simple and allows you getting fast binaries for all the major platofrms from the same source code.
This 3-day workshop will start with the basics of Go language and then dive into TDD and various testing libraries and techniques to implement effective Go applications.
What You'll Learn in This workhop
-
Write idiomatic Go code with structs, slices, channels, and goroutines
-
Apply TDD practices with test-first development and clean code principles
-
Use mocking, BDD, and acceptance testing frameworks effectively
-
Implement mutation testing and generate test data for robust test suites
Testing with Go Outline
1. Day 1: Go language basics
- • Preparing working environment: tools, IDE, references
- • Introduction to Go syntax: types, vars, consts, functions, loops, conditionals
- • Organizing Go code base
- • Overview of Go standard library
- • Working with data structures: structs, arrays, slices, maps
- • Working with I/O primitives: files, channels
- • Working with functional primitives and parallel execution: functions, closures, threads, goroutines
- • Introduction to TDD
2. Day 2: Deep dive into unit testing
- • Introduction to TDD: test driven development actually works (Test-first approach, TDD schools: London vs. Detroit)
- • Overview of Go testing libraries: testing, testify, gocheck, gopwt
- • Organizing test code base (writing readable tests, making error message readable, creating test domain specific languages)
- • Using mocks & stubs (with gomock)
3. Day 3: Advanced testing techniques
- • Unit tests vs integration tests
- • Generating test data (with faker)
- • Behavior driven development (BDD) with ginkgo
- • ATDD (acceptance test driven development)
- • Mutation testing with go-mutetesting
Who Should Attend
-
developers
-
software architects
-
technical project managers
-
system administrators
What's Included
Pricing
Frequently Asked Questions
Ready to Get Started?
Register now and take your skills to the next level.