Tests are based on requirements and functionality. Not based on any knowledge of internal design or code.
White box testing
Tests are based on coverage of code statements, branches, paths, conditions. Based on knowledge of the internal logic of an application's code.
Unit testing
The most 'micro' scale of testing; to test particular functions or code modules. Typically done by the programmer and not by testers, as it requires detailed knowledge of the internal program design and code.Not always easily done unless the application has a well-designed architecture with tight code; may require developing test driver modules or test harnesses.
Incremental integration testing
Continuous testing of an application as new functionality is added; requires that various aspects of an application's functionality be independent enough to work separately before all parts of the program are completed, or that test drivers be developed as needed; done by programmers or by testers.
Integration testing
Testing of combined parts of an application to determine if they function together correctly. The 'parts' can be code modules, individual applications, client and server applications on a network, etc. This type of testing is especially relevant to client/server and distributed systems.
Functional testing
Black-box type testing geared to functional requirements of an application; testers should do this type of testing. This doesn't mean that the programmers shouldn't check that their code works before releasing it (which of course applies to any stage of testing.)
System testing
Black box type testing that is based on overall requirements specifications; covers all combined parts of a system.
End-to-End testing
Similar to system testing; the 'macro' end of the test scale; involves testing of a complete application environment in a situation that mimics real-world use, such as interacting with a database, using network communications, or interacting with other hardware, applications, or systems if appropriate.
Sanity testing
Typically an initial testing effort to determine if a new software version is performing well enough to accept it for a major testing effort. For example, if the new software is crashing systems every 5 minutes, bogging down systems to a crawl, or destroying databases, the software may not be in a 'sane' enough condition to warrant further testing in its current state.
Regression testing
Re-testing after fixes or modifications of the software or its environment. It can be difficult to determine how much re-testing is needed, especially near the end of the development cycle. Automated testing tools can be especially useful for this type of testing.
Acceptance testing
Final testing based on specifications of the end-user or customer, or based on use by end-users/customers over some limited period of time.
Load testing
Testing an application under heavy loads, such as testing of a web site under a range of loads to determine at what point the system's response time degrades or fails.
Stress testing
Term often used interchangeably with 'load' and 'performance' testing. Also used to describe such tests as system functional testing while under unusually heavy loads, heavy repetition of certain actions or inputs, input of large numerical values, large complex queries to a database system, etc.
Performance testing
Term often used interchangeably with 'stress' and 'load' testing. Ideally 'performance' testing (and any other ‘type' of testing) is defined in requirements documentation or QA or Test Plans. Performance testing which is sometimes treated as a part of system testing tries to show that the application is not able to fulfill its task in the amount of time it is supposed to.
Usability testing
Testing for 'user-friendliness'. Clearly this is subjective, and will depend on the targeted end-user or customer. User interviews, surveys, video recording of user sessions, and other techniques can be used. Programmers and testers are usually not appropriate as usability testers.
Install/Uninstall testing
Testing of full, partial, or upgrade install/uninstall processes.
Recovery testing
Testing how well a system recovers from crashes, hardware failures, or other catastrophic problems.
Security testing
Testing how well the system protects against unauthorized internal or external access, willful damage, etc; may require sophisticated testing techniques.
Compatibility testing
Testing how well software performs in a particular hardware/software/operating system/network/etc. environment.
Comparison testing
Comparing software weaknesses and strengths to competing products.
Alpha testing
Testing of an application when development is nearing completion; minor design changes may still be made as a result of such testing. Typically done by end-users or others, not by programmers or testers.
Beta testing
Testing of an application after development and testing are essentially completed and final bugs and problems need to be found before final release. Design changes may not be made. Problems found in this stage but not fixed may be included in the Release notes. Typically done by end-users or others, not by programmers or testers.
Search Your Question
Thursday, April 17, 2008
Types of Testing
Labels:
Software Testing
Subscribe to:
Post Comments (Atom)
Archives
-
▼
2008
(992)
-
▼
April
(208)
- Can you name different software development life c...
- What is Microsoft Analysis Service?
- Explain what is “AutoPostBack” feature in ASP.NET ?
- Can you explain what is DCOM ?
- What do you understand by Data mining and Data War...
- How can we find out what the garbage collector is ...
- How can we stop our code being reverse-engineered ...
- How do you stop a running thread?
- How does an AppDomain get created?
- How is method overriding different from method ove...
- Is COM+ dead? Is COM+ is not needed anymore?
- Is DCOM dead? not needed anymore?
- Should you use ReaderWriterLock instead of Monitor...
- What are different types of caching in ASP.Net?
- What are the validation controls?
- What are user controls and custom controls?
- What does aspnet_regiis -i do ?
- What is Regression Testing?
- What is the difference between an event and a dele...
- What is view state and use of it?
- What's a bubbled event?
- Why do we get errors when we try to serialize a Ha...
- Why is XmlSerializer so slow?
- How can I load the icons provided by .NET dynamica...
- In windows forms what class does Icon derive from?
- How's anchoring different from docking in windows ...
- Why is it not a good idea to insert code into Init...
- Why is it not a good idea to insert code into Init...
- What is ErrorProvider control? When would you use it?
- Can you debug a Windows Service? How ?
- How can a win service developed in .NET be install...
- What is a Windows Service and how does its lifecyc...
- What does AspCompat="true" mean and when should it...
- Is it possible to prevent a browser from caching a...
- Is it possible to prevent a browser from caching a...
- What technology enables out-of-proc communication ...
- What are some of the responsibilities of the CLR?
- What are some features of the CLR?
- What are some features of the CLR?
- What are namespaces used for in .NET?
- How do class property members work in C#?
- What does a binding define in a WSDL document? Wha...
- What are the main similarities and differences bet...
- What information do you need to know in order to a...
- True false questions - Set 1
- True false questions - Set 2
- True false questions - Set 3
- What are CAO's i.e. Client Activated Objects ?
- Can you configure a .NET Remoting object via XML f...
- What does a Port define? What does the PortType de...
- What makes web services usable in almost any devel...
- When should a struct be used instead of a class?
- How does the switch statement in C# differ from th...
- What are some similarities and differences between...
- What is the main Difference between Managed code a...
- In Dot Net What are different type of JIT ?
- Is versioning applicable to private assemblies?
- What is .Net Remoting
- What was .net Framework 3.0 earlier known as?
- What are the changes to the version of the .NET Fr...
- Can DotNet Framework 3 be installed over Framework 2?
- What is the version of C# In .net Framework 3.0?
- What Operating system are supported by Framework 3.0?
- What are the 4 basic new technologies included in ...
- What is a workflow? How does Windows workflow foun...
- What are the components found in Windows workflow ...
- What tool is available for creating workflows in d...
- What Improvements does WCF offers over its earlier...
- What contemporary computing problems WCS solves?
- What are WCF features and what communication probl...
- What is High assurance certificate?
- What contemporary computing problems WPF solves?
- What is XAML ?
- What is XBAP?
- What is a service contract ( In WCF) ?
- In terms of WCF, What is a message?
- In terms of WCF, What is a service?
- In terms of WCF, What is an endpoint?
- In terms of WCF, What is an application endpoint?
- In terms of WCF, What is an infrastructure endpoint?
- In terms of WCF, What is an address?
- In terms of WCF, What is binding?
- What is a message contract?
- IN WCF, what do you understand by metadata of a se...
- What are activities in Windows Workflow Foundation?
- What do you mean by Code Refactoring?
- What is ASP.Net Web Matrix?
- What do you mean by shipping in terms of sql server ?
- What is 'Write-ahead log' in Sql Server 2000 ?
- What is DOM?
- What is XPATH?
- What is the difference between abstract class and ...
- What is a Satellite Assembly ?
- What is late binding ?
- What do you understand by the term "immutable"?
- enforce a call from an inherited constructor to an...
- How do you make sure that your code runs when the ...
- Why does code get a security exception when its ru...
- Can you use the Win32 API from a .NET Framework pr...
- How do in-process and cross-process communication ...
-
▼
April
(208)
No comments:
Post a Comment