Testing involves operation of a system or application under controlled condition
s and evaluating the results. The controlled conditions should include both norm al and abnormal conditions. Testing should intentionally attempt to make things go wrong to determine if things happen when they shouldn't or things don't happe n when they should. It is oriented to 'detection'. Unit testing : a method by which individual units of source code, sets of one or more computer program modules together with associated control data, usage proc edures, and operating procedures are tested to determine if they are fit for use . a unit : the smallest testable part of an application. procedural programming: a unit could be an entire module, but is more co mmonly an individual function or procedure. object-oriented programming: a unit is often an entire interface, such a s a class, but could be an individual method. Alternatively, some people distinguish unit testing from component testing by th e degree to which components are isolated. In unit testing, called components ar e replaced with stubs, simulators, or trusted components, and calling components are replaced with drivers or trusted super components, so that the component be ing tested is isolated. In component testing, all stubs and simulators are repla ced with real implementations. What is verification? validation? Verification typically involves reviews and meetings to evaluate documents, plan s, code, requirements, and specifications. This can be done with checklists, iss ues lists, walkthroughs, and inspection meetings. Validation typically involves actual testing and takes place after verifications are completed. The term 'IV & V' refers to Independent Verification and Validation. What's a 'test plan'? A software project test plan is a document that describes the objectives, scope, approach, and focus of a software testing effort. The process of preparing a te st plan is a useful way to think through the efforts needed to validate the acce ptability of a software product. The completed document will help people outside the test group understand the 'why' and 'how' of product validation. It should be thorough enough to be useful but not so overly detailed that no one outside t he test group will read it. The following are some of the items that might be in cluded in a test plan, depending on the particular project: What's a 'test case'? A test case describes an input, action, or event and an expected response, to de termine if a feature of a software application is working correctly. A test case may contain particulars such as test case identifier, test case name, objective , test conditions/setup, input data requirements, steps, and expected results. T he level of detail may vary significantly depending on the organization and proj ect context. Note that organizations vary considerably in their handling of test cases; many utilize less-detailed 'test scenarios' that allow for simpler and m ore adaptable/maintainable test documentation. Regression: middle english regresse, latin regressus - regredi - to go back Regression - a trend or shift towards a lower or less perfect state. Regression testing is a type of software testing that seeks to uncover new softw are bugs, or regressions, in existing functional and non-functional areas of a s ystem after changes such as enhancements, patches or configuration changes, have