This document discusses automated integration regression testing. It describes the different layers of testing including using Gherkin and the behave library to write test cases in a readable format, mapping test steps to Python functions using the Germanium library, and using Selenium in the backend to interact with browsers. Jenkins is used to run the test suites in Docker containers on a nightly basis against deployed applications. Typical tests involve a series of user actions and verifications like logging in, completing tasks, and logging out. Challenges include test maintenance, failures in the Jenkins environment that are hard to reproduce locally, and dependencies on constantly changing environments and application states.