Testing is hard, which is why developers tend to avoid it. Testing non-deterministic things is even harder, which is unfortunate, since we're all writing AI-infused applications, and AI models are notoriously non-deterministic. What happens when the applications start using advanced features, such as RAG, tools, and agents? How do you test these applications? There must be some tools, technologies, and practices out there that can help, while not costing your organization lots of money!
Join Java Champions Oleg & Eric in this session as they explore some of these tools & technologies, such as Testcontainers, LangChain4j, Quarkus, and Ollama. They'll bring together Oleg's Testcontainers knowledge and Eric's testing obsessions, getting hands-on and show how you can incorporate these tools and technologies into your inner and outer loop processes.
You'll see how effortlessly Quarkus integrates with Testcontainers, and how Testcontainers can be used in conjunction with popular LLMs when writing tests. You'll also learn about how to use containers to extend your testing into your CI environments, so you can always be sure that if your tests are green you're good to go!
Eric Deandrea
Eric Deandrea is a Java Champion & Senior Principal Developer Advocate at IBM, focusing on application development technologies. Eric has over 25 years of experience designing and building Java-based solutions and developer training programs. He is a contributor to various OSS projects, including Quarkus, Spring, LangChain4j, WireMock, and Microcks, as well as a speaker at many public events and user groups around the world. Eric recently put his Quarkus and Spring knowledge to use by publishing his first book, 'Quarkus for Spring Developers (https://red.ht/quarkus-spring-devs).' Outside of work, Eric enjoys boating on the lakes of New Hampshire, ice hockey, and martial arts, in which he holds a black belt in Kempo Karate.
Oleg Šelajev
Oleg Šelajev is a developer advocate at Docker working mainly on developer productivity, Testcontainers, improving how we set up local development environments and tests, and building applications with AI parts. Developer. Author. Speaker. Java Champion. Docker captain. Loves all languages.