Automated browser tests can be a nightmare to write and maintain. Unlike unit tests they’re tough to set up, slow to run, make permanent changes to data, and they’re incredibly brittle. Even a tiny CSS change can result in cascading failures!
You can’t ignore these issues, but you CAN design around them by adopting a few key patterns and techniques. Data creation helpers let you construct intricate data graphs in one line of code. Page Objects abstract away tedious browser automation code and make tests resilient to changes in HTML structure. Applied correctly, these patterns (and others) take away the pain and make UI tests a joy to create!
Pointy-haired boss by day, coder by night
Seth spent 21 years as a professional developer/architect before finally turning in his daily commit rights for a Microsoft Project product key. He now spends his days as a pointy-haired boss leading a small product development team in the search for simple solutions to complex problems. He is passionate about clean architecture, testable systems, and bringing order to chaos. Seth lives in Columbus, OH and is an active participant in the Midwest developer community. He’ll write TPS reports when he has to, but still enjoys writing, reviewing, and talking about code.