Consumer Contract Tests
Our integration tests using browser automation are difficult to write and fail more often due to flawed test design or browser instability than actual bugs in the code being tested. Consumer contract testing is an alternate testing approach which could be easier to implement, faster to run, and more effective at catching problems. In addition to reducing our reliance on browser automation, it could also catch inter-service bugs that we currently miss due to the impracticality of a large end-to-end test suite spanning all the Open edX services.
We want to prototype an implementation of consumer contract tests, using an existing framework if practical, and if successful create a plan for using it more extensively.