Go to content

Declarative Test Setup by Brian Norman

Recording brought to you by American Express. https://americanexpress.io/kotlin-jobs A good test should be fast, reliable, and concise. Unfortunately end-to-end API tests can often suffer in all 3 areas. Large amounts of test setup required by end-to-end API tests can make them slow, flaky, and verbose. But what’s the fix? At Datasite, we built a Kotlin DSL! Instead of writing repetitive, imperative code to perform test environment setup, we designed a DSL which declaratively defines the environment components needed for end-to-end tests. This allows us to optimize when and how the setup is performed, improves standardization of the environment, and simplifies the code required for test setup. Come learn how Datasite built this custom Kotlin DSL. Learn how we made it extensible, idempotent, and performant and how it helped us standardize end-to-end test configuration across dozens of backend services. Talk by: Brian Norman #KotlinDSL #KotlinConf

April 12, 2023