- Verification: As I always remember it "Building the product right" i.e. right process is followed to create the product.It typically involves reviews and meetings to evaluate documents, plans, code, requirements and specifications.
- Validation: "Building the right product" i.e. in conformance to the user requirements.It typically involves actual testing and takes place after verifications are completed.
- Quality: A software which is conforming to the customer requirements and is reasonably bug free. There are number of factors that affect quality: reliability,efficiency,security,portability,correctness,integrity,usability and most important maintainability.
- Test plan: A document that describes the objectives, scope, approach and focus of a software testing effort. The process of preparing a test plan is a useful way to think through the efforts needed to validate the acceptability of a software product. The completed document will help people outside the test group understand the why and how of product validation.
- Test case: A test case is a document that describes an input, action, or event and its expected result, in order to determine if a feature of an application is working correctly.
- Black box testing: A testing which focuses on the external behaviour of the product without keeping in mind or have the knowledge of internal design or code.
- White box testing: A testing based on the internal design or code of the product and is meant to uncover design errors.Tests are based on coverage of code statements, branches, paths and conditions.
- Unit Testing:Unit testing is the first level of dynamic testing and is first the responsibility of developers and then that of the test engineers. Unit testing is performed after the expected test results are met or differences are explainable/acceptable.
- Usability testing:Testing for 'user-friendliness'. Clearly this is subjective and depends on the targeted end-user or customer. User interviews, surveys, video recording of user sessions and other techniques can be used. Programmers and developers are usually not appropriate as usability testers.
- Integration Testing: Testing which is performed to ensure that distinct parts of the product work correctly when put together. The flow of control and data is checked for correctness.
- System testing: Testing of a system on whole including any third party softwares and hardware.
- End-to-end testing:Similar to system testing, the *macro* end of the test scale is testing a complete application in a situation that mimics real world use, such as interacting with a database, using network communication, or interacting with other hardware, application, or system.
- Regression testing:Testing to ensure the software remains intact. A baseline set of data and scripts is maintained and executed to verify changes introduced during the release have not "undone any previous code. Expected results from the baseline are compared to results of the software under test. All discrepancies are highlighted and accounted for, before testing proceeds to the next level.
- Sanity testing: Sanity testing is performed whenever cursory testing is sufficient to prove the application is functioning according to specifications. This level of testing is a subset of regression testing. It normally includes a set of core tests of basic GUI functionality to demonstrate connectivity to the database, application servers, printers, etc.
- Performance testing: Performance testing verifies loads, volumes and response times, as defined by requirements.
- Load testing: Load testing is testing an application under heavy loads, such as the testing of a web site under a range of loads to determine at what point the system response time will degrade or fail.
- Installation testing: Installation testing is testing full, partial, upgrade, or install/uninstall processes. The installation test for a release is conducted with the objective of demonstrating production readiness. This test includes the inventory of configuration items, performed by the application's System Administration, the evaluation of data readiness, and dynamic tests focused on basic system functionality. When necessary, a sanity test is performed, following installation testing.
- Security testing: testing how well the system is protected against unauthorized internal or external access, or willful damage. This type of testing usually requires sophisticated testing techniques.
- Error testing: error testing is testing how well a system recovers from crashes, hardware failures, or other catastrophic problems. Also known as recovery testing.
- Compatibility testing: Compatibility testing is testing how well software performs in a particular hardware, software, operating system, or network environment.
- Comparison testing: Testing that compares software weaknesses and strengths to those of competitors' products.
- Acceptance testing: Acceptance testing is black box testing that gives the client/customer/project manager the opportunity to verify the system functionality and usability prior to the system being released to production. The acceptance test is the responsibility of the client/customer or project manager, however, it is conducted with the full support of the project team. The test team also works with the client/customer/project manager to develop the acceptance criteria.
Wednesday, June 25, 2008
QA Glossary
While working in QA,I came across lots of terminologies which in the long run do skip out of mind. We use those terms so often to our convenience that the meanings also get twisted with them. So I decided to just have a re look at them and kind of reminder of the actual contexts and explain them in my words.
Labels:
QA terminology,
testing,
testing glosssary
Monday, June 23, 2008
Introduction
Hi
This is Jaanvi Singh. I am a software test engineer ,now a stay at home mom, who is just in love with this profession. Inspite of staying at home,I want to keep sharpening my testing skills and not stay away from this beautiful art and craft of testing. I hope this blog will allow me to be in touch with the world's best testers and share my expertise,views,tips and tricks across the table.
Cheers!
This is Jaanvi Singh. I am a software test engineer ,now a stay at home mom, who is just in love with this profession. Inspite of staying at home,I want to keep sharpening my testing skills and not stay away from this beautiful art and craft of testing. I hope this blog will allow me to be in touch with the world's best testers and share my expertise,views,tips and tricks across the table.
Cheers!
Labels:
Introduction
Subscribe to:
Comments (Atom)
