Writing acceptance tests
So far, we used the curl
command to perform a suite of acceptance tests. That is, obviously, a considerable simplification. Technically speaking, if we write a REpresentational State Transfer (REST) web service, we could write all black-box tests as a big script with a number of curl
calls. However, this solution would be very difficult to read, understand, and maintain. What's more, the script would be completely incomprehensible to non-technical, business-related users. How do we address this issue and create tests with a good structure that are readable by users and meet their fundamental goal: automatically checking that the system is as expected? I will answer this question throughout this section.
Writing user-facing tests
Acceptance tests are written with users and should be comprehensible to users. This is why the choice of a method for writing them depends on who the customer is.
For example, imagine a purely technical person. If you...