Test Automation

As Coupa eProcurement Express and Enterprise continue to advance, testing becomes a bigger priority and challenge. Towards the end of my Oracle career, I took on the additional responsibility for 100-person QA team split between the US and India. It gave me a first hand look at the “secrets” of testing enterprise software. Oracle is a complex beast, and the fact that most of the testing was done manually exacerbated the problem. It could take 12 months to QA a single release. I’d like to say that my short tenure with the QA team helped increase their focus on test automation, but it will take a while to tame the beast.

At Coupa, we are trying to do test automation right from the start. We’ve been able to release 3 versions of the open source project since July and so it will be 4 releases within a year with our upcoming Prime-Time release. Part of our strategy is to focus on automating unit tests in addition to the functional tests. Unit tests validate the individual units of source code and created by the developer. The functional tests look more at a flow approach, such as a test where user logs in, does a search, adds an item to his/her shopping cart, checks out. A complete suite of automated tests do both positive and negative testing. We’re not there yet, but the team is making good strides. Fortunately, we can supplement the automation with human testing.

We’re using a package called Selenium, an open source test automation tool. They even have a Firefox extension that allows you to record tests as you walk through the application. Some of the unit tests that we’ve created are included in the open source project and we hope to include the functional tests in the future.