10.3 Functional testing
Throughout the chapters of this book we have made a point of unit testing the code we have been working on.
The combination of the thorough code coverage of Zend Framework's unit tests with any application specific
unit tests should, from the programmer's perspective, provide ongoing feedback that the code is performing as
expected. However, even a system with all unit tests passing successfully may fall short in other areas such as
how the system functions when in actual use. To test this we need to move onto what what can be somewhat
broadly referred to as "functional testing".
While testing the functionality of the system can be narrowed into more specific areas such as its usability,
security, performance, etc, in this case we're going to outline more general methods of testing the system from
the perspective of the end user, that is, we will be attempting to test what the user can do with the system.
These methods can then be applied more specifically as needed, for example, in security testing we could test
whether a user that is not logged-in is able to access a restricted area.
10.3.1 Functional testing with Selenium
Selenium is a tool for testing web applications the same way you do; with a web browser. Anyone familiar
with recording a macro will recognise that, at its simplest, Selenium IDE is a tool to record, edit and playback
actions.
Pages:
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295