Testing and Quality Assurance
Testing the written application is a critical part of the development life cycle. Testing is done at a few different levels.
Functional testing is the first phase. This phase makes sure that all required functionality is not only in the application, but also works as designed. A developer should not do this testing because she has knowledge of the application and won't necessarily test all combinations of user input. Therefore, a third party who isn't related to the development should test the application or write the associated scripts to test it.
Load testing tests whether an application can handle the required transactions. This testing is usually performed by software. If the test comes back unsatisfactory, an engineer can analyze the results and point out the problem areas that then can be rewritten for the best performance.
A testing group skill set includes a wide array of skills from the general end user to an engineer capable of developing testing scripts for various software products such as JMeter.