Showing posts with label Testing Types. Show all posts
Showing posts with label Testing Types. Show all posts

40 Testing Interview Questions on Testing Types

What’s Ad Hoc Testing ?
A testing where the tester tries to break the software by randomly trying functionality of software.

What’s the Accessibility Testing ?
Testing that determines if software will be usable by people with disabilities.

What’s the Alpha Testing ?
The Alpha Testing is conducted at the developer sites and in a controlled environment by the end user of the software

What’s the Beta Testing ?
Testing the application after the installation at the client place.

What is Component Testing ?
Testing of individual software components (Unit Testing).

What’s Compatibility Testing ?
In Compatibility testing we can test that software is compatible with other elements of system.

What is Concurrency Testing ?
Multi-user testing geared towards determining the effects of accessing the same application code, module or database records. Identifies and measures the level of locking, deadlocking and use of single-threaded code and locking semaphores.

What is Conformance Testing ?
The process of testing that an implementation conforms to the specification on which it is based. Usually applied to testing conformance to a formal standard.

What is Context Driven Testing ?
The context-driven school of software testing is flavor of Agile Testing that advocates continuous and creative evaluation of testing opportunities in light of the potential information revealed and the value of that information to the organization right now.

What is Data Driven Testing ?
Testing in which the action of a test case is parameterized by externally defined data values, maintained as a file or spreadsheet. A common technique in Automated Testing.

What is Conversion Testing ?
Testing of programs or procedures used to convert data from existing systems for use in replacement systems.

What is Dependency Testing ?
Examines an application’s requirements for pre-existing software, initial states and configuration in order to maintain proper functionality.

What is Depth Testing ?
A test that exercises a feature of a product in full detail.

What is Dynamic Testing ?
Testing software through executing it. See also Static Testing.

What is Endurance Testing ?
Checks for memory leaks or other problems that may occur with prolonged execution.

What is End-to-End testing ?
Testing 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.

What is Exhaustive Testing ?
Testing which covers all combinations of input values and preconditions for an element of the software under test.

What is Gorilla Testing ?
Testing one particular module, functionality heavily.

What is Installation Testing ?
Confirms that the application under test recovers from expected or unexpected events without loss of data or functionality. Events can include shortage of disk space, unexpected loss of communication, or power out conditions.

What is Localization Testing ?
This term refers to making software specifically designed for a specific locality.

What is Loop Testing ?
A white box testing technique that exercises program loops.

What is Mutation Testing ?
Mutation testing is a method for determining if a set of test data or test cases is useful, by deliberately introducing various code changes (’bugs’) and retesting with the original test data/cases to determine if the ‘bugs’ are detected. Proper implementation requires large computational resources

What is Monkey Testing ?
Testing a system or an Application on the fly, i.e just few tests here and there to ensure the system or an application does not crash out.

What is Positive Testing ?
Testing aimed at showing software works. Also known as “test to pass”. See also Negative Testing.

What is Negative Testing ?
Testing aimed at showing software does not work. Also known as “test to fail”. See also Positive Testing.

What is Path Testing ?
Testing in which all paths in the program source code are tested at least once.

What is Performance Testing ?
Testing conducted to evaluate the compliance of a system or component with specified performance requirements. Often this is performed using an automated test tool to simulate large number of users. Also know as “Load Testing”.

What is Ramp Testing ?
Continuously raising an input signal until the system breaks down.

What is Recovery Testing ?
Confirms that the program recovers from expected or unexpected events without loss of data or functionality. Events can include shortage of disk space, unexpected loss of communication, or power out conditions.

What is the Re-testing testing ?
Retesting- Again testing the functionality of the application.

What is the Regression testing ?
Regression- Check that change in code have not effected the working functionality

What is Sanity Testing ?
Brief test of major functional elements of a piece of software to determine if its basically operational.

What is Scalability Testing ?
Performance testing focused on ensuring the application under test gracefully handles increases in work load.

What is Security Testing ?
Testing which confirms that the program can restrict access to authorized personnel and that the authorized personnel can access the functions available to their security level.

What is Stress Testing ?
Stress testing is a form of testing that is used to determine the stability of a given system or entity. It involves testing beyond normal operational capacity, often to a breaking point, in order to observe the results.

What is Smoke Testing ?
A quick-and-dirty test that the major functions of a piece of software work. Originated in the hardware testing practice of turning on a new piece of hardware for the first time and considering it a success if it does not catch on fire.

What is Soak Testing ?
Running a system at high load for a prolonged period of time. For example, running several times more transactions in an entire day (or night) than would be expected in a busy day, to identify and performance problems that appear after a large number of transactions have been executed.

What’s the Usability testing ?
Usability testing is for user friendliness.

What’s the User acceptance testing ?
User acceptance testing is determining if software is satisfactory to an end-user or customer.

What’s the Volume Testing ?
We can perform the Volume testing, where the system is subjected to large volume of data.

Here are the elaborate Definations for all the types of testing>>
Don't miss any article:Get it by E-mail

Globalization Testing

Globalization Testing:
The goal of globalization testing is to detect potential problems in application design that could inhibit globalization. It makes sure that the code can handle all international support without breaking functionality that would cause either data loss or display problems. Globalization testing checks proper functionality of the product with any of the culture/locale settings using every type of international input possible.Proper functionality of the product assumes both a stable component that works according to design specification, regardless of international environment settings or cultures/locales, and the correct representation of data.
Don't miss any article:Get it by E-mail

Localization Testing

Localization Testing:
Localization is the process of customizing a software application that was originally designed for a domestic market so that it can be released in foreign markets. This process involves translating all native language strings to the target language and customizing the GUI so that it is appropriate for the target market. Depending on the size and complexity of the software, localization can range from a simple process involving a small team of translators, linguists, desktop publishers and engineers to a complex process requiring a Localization Project Manager directing a team of a hundred specialists. Localization is usually done using some combination of in-house resources, independent contractors and full-scope services of a localization company.
Don't miss any article:Get it by E-mail

Partition Testing

Partition Testing:
Basic idea: Divide program input space into(quasi-)equivalence classes- Underlying idea of specification-based, structural, and fault-based testing
Partition Method:
Step 1: Analyze the specification- Identify individual functional units that can be tested separately.For each unit Identify: parameters and characteristics environment and characteristics-classify units into categories
Step2: Partition the categories into choices
Step3: Determine constraints among the choices
Step4: Write tests and documentation
Don't miss any article:Get it by E-mail

Smoke Testing Vs Sanity Testing

Smoke Testing Vs Sanity Testing
1. "Smoke Testing" is usually done on the nightly/interim build to test its stability. Therefore "smoke Testing" is often called as "Build verfication Testing" too. In contrast, "Sanity Testing" is usually done during the later cycles after thorough regression cycle are over. When multiple cycle of testing are executed, "Sanity Testing " is done towards the product release phase.
2. "Smoke Testing" is done following a shallow and wide approach where all the basic and major areas are tested without going too deep into the functionality. In contrast, "Sanity Testing" is usually a focused but limited form of regression testing, which follows a deep and narrow approach to test a particular functionality in detail.
3. "Smoke Testing" is done by developers before the build is released or by testers before accepting a build for further testing. On the other hand, "Sanity Testing" is done mostly by the testers.
4. "Smoke Tests" are mostly in form of scripted form whereas "Sanity Tests" are mostly non-scripted.
5. "Smoke Testing" can be compared with the normal health check-up of the product whereas the "Sanity Testing" can be compared with some specialized tests to reveal possible problem with a particular functionality of the product.
Don't miss any article:Get it by E-mail

Software Testing Types

Types of Software Testing:
Black box testing - Internal system design is not considered in this type of testing. Tests are based on requirements and functionality.

White box testing - This testing is based on knowledge of the internal logic of an application’s code. Also known as Glass box Testing. Internal software and code working should be known for this type of testing. Tests are based on coverage of code statements, branches, paths, conditions.

Unit testing - Testing of individual software components or modules. Typically done by the programmer and not by testers, as it requires detailed knowledge of the internal program design and code. may require developing test driver modules or test harnesses.

Incremental integration testing - Bottom up approach for testing i.e continuous testing of an application as new functionality is added; Application functionality and modules should be independent enough to test separately. done by programmers or by testers.

Integration testing - Testing of integrated modules to verify combined functionality after integration. Modules are typically 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 - This type of testing ignores the internal parts and focus on the output is as per requirement or not. Black-box type testing geared to functional requirements of an application.

System testing - Entire system is tested as per the requirements. 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, 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 - Testing to determine if a new software version is performing well enough to accept it for a major testing effort. If application is crashing for initial use then system is not stable enough for further testing and build or application is assigned to fix.

Regression testing - Testing the application as a whole for the modification in any module or functionality. Difficult to cover all the system in regression testing so typically automation tools are used for these testing types.

Acceptance testing -Normally this type of testing is done to verify if system meets the customer specified requirements. User or customer do this testing to determine whether to accept application.

Load testing - Its a performance testing to check system behavior under load. 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 - System is stressed beyond its specifications to check how and when it fails. Performed under heavy load like putting large number beyond storage capacity, complex database queries, continuous input to system or database load.

Performance testing - Term often used interchangeably with ’stress’ and ‘load’ testing. To check whether system meets performance requirements. Used different performance and load tools to do this.

Usability testing - User-friendliness check. Application flow is tested, Can new user understand the application easily, Proper help documented whenever user stuck at any point. Basically system navigation is checked in this testing.

Install/uninstall testing - Tested for full, partial, or upgrade install/uninstall processes on different operating systems under different hardware, software environment.
Recovery testing - Testing how well a system recovers from crashes, hardware failures, or other catastrophic problems.

Security testing - Can system be penetrated by any hacking way. Testing how well the system protects against unauthorized internal or external access. Checked if system, database is safe from external attacks.

Compatibility testing - Testing how well software performs in a particular hardware/software/operating system/network environment and different combination s of above.

Comparison testing - Comparison of product strengths and weaknesses with previous versions or other similar products.

Alpha testing - In house virtual user environment can be created for this type of testing. Testing is done at the end of development. Still minor design changes may be made as a result of such testing.

Beta testing - Testing typically done by end-users or others. Final testing before releasing application for commercial purpose.

Agile testing-Agile testing is a software testing practice that follows the statutes of the agile manifesto, treating software development as the customer of testing.
Agile testing involves testing from the customer perspective as early as possible, testing early and often as code becomes available and stable enough from module/unit level testing.
Since working increments of the software is released very often in agile software development there is also a need to test often. This is often done by using automated acceptance testing to minimize the amount of manual labor. Doing only manual testing in agile development would likely result in either buggy software or slipping schedules because it would most often not be possible to test the whole software manually before every release.

GUI software testing-In computer science, GUI software testing is the process of testing a product that uses a graphical user interface, to ensure it meets its written specifications. This is normally done through the use of a variety of test cases.

Volume testing-Volume Testing belongs to the group of non-functional tests, which are often misunderstood and/or used interchangeably. Volume testing refers to testing a software application for a certain data volume. This volume can in generic terms be the database size or it could also be the size of an interface file that is the subject of volume testing. For example, if you want to volume test your application with a specific database size, you will explode your database to that size and then test the application's performance on it. Another example could be when there is a requirement for your application to interact with an interface file (could be any file such as .dat, .xml); this interaction could be reading and/or writing on to/from the file. You will create a sample file of the size you want and then test the application's functionality with that file test the performance.

Sanity testing-it is a very brief run-through of the functionality of a program, system, calculation, or other analysis, to assure that the system or methodology works as expected, often prior to a more exhaustive round of testing.

Smoke testing -Smoke testing is done by developers before the build is released or by testers before accepting a build for further testing.

Ad hoc testing-Ad hoc testing is a commonly used term for software testing performed without planning and documentation.
The tests are intended to be run only once, unless a defect is discovered. Ad hoc testing is a part of exploratory testing, being the least formal of test methods.

Maintenance testing-Maintenance testing is that testing which is performed to either identify equipment problems, diagnose equipment problems or to confirm that repair measures have been effective. It can be performed at either the system level , the equipment level or the component level .

Hope you came to know how many types of testing are there.
Don't miss any article:Get it by E-mail