Acceptance Testing

Acceptance testing is a unique aspect and integral part of the eXtreme Programming method, in that the code the developers produce is not considered "finished" until a stakeholder agrees that it meets the stated objectives. Acceptance testing can be done in any fashion that allows the stakeholder to insure that the new software correctly implements its functional vision. Acceptance testing can include positive testing (that it does what the stakeholder expects) and negative testing (that doing unexpected things does not break the code or the system).