Tagged in testing :
Creating Android Lint Checks: A Survival Guide
At Wealthfront, we’ve observed that the cost of resolving an issue becomes exponentially higher the later it is discovered. For example, a defect discovered at design time is far easier to resolve than one which has already reached our clients. And between those extremes, we can discover issues at code authoring, compilation, or automated test… Read more
Designing a harness for readable, thorough Android tests
At Wealthfront, we are committed to automation – both in the products we build, and in how we ensure quality. In this post we’ll explore how our automated test harness enables Android developers to quickly build tests for almost any scenario. Part 1: Writing “fluent” Espresso test code Since they are designed to operate in… Read more
Retrying e2e test suites with Jest
At Wealthfront, we pride ourselves on reliable test coverage across our codebases. However, like many engineering teams, we haven’t been able to completely eliminate flakiness from our end to end (e2e) test suites. While migrating to puppeteer certainly helped, it didn’t eliminate the problem entirely. We’ll get into what causes these flakes below, but suffice… Read more
Automating Data Quality Checks on External Data
Written by Emily Shiue and Melissa Chen The code was simple: query the third party API, if the “ModifiedAt” date returned was more recent than ours, send a notification to our clients. We had all the unit tests, integration tests, and monitoring in place. It had been running smoothly in production for months. So how… Read more
Migrating from Capybara to Puppeteer
A little over 9 months ago, Wealthfront converted 100% of our end-to-end tests from Selenium (via Capybara) to Puppeteer. The process involved converting hundreds of tests that provide coverage for just about all of Wealthfront’s product offerings on the website. This blog post will cover why we migrated away from Selenium, the process we used… Read more
Halving iOS Test Time with Partitioning in Jenkins Pipelines
At Wealthfront, testing is core to the culture of our engineering organization and business. In fact, on the iOS team, testing is woven into our development process. We host and manage our own continuous integration (CI) pipeline on Jenkins which runs our unit and UI test suites. As most iOS developers know, UI tests take… Read more