QA Tutorials

SOFTWARE TESTING TYPES

SYSTEM TESTING BY QA

The software testing is done at all the levels of software development with specific objectives at each level. The software project documents are reviewed at each level to identify the errors i.e. static testing. The developers test the programs and interfaces in white box testing.The QA team performs the system testing after white box testing. There is a huge list of software testing types defined in system testing. The software testing types can have synonyms or slightly varying types can be given different names.

The system testing can be either functional testing or a non functional testing. In functional testing, the QA team tests “what the system does?” and in non functional testing, “how the system works?”. Usually the software testing begins with functional testing that includes build acceptance testing or initial level testing, detailed testing of software functionalities, retesting and regression testing. The software testing types also include testing the software for browser compatibility, interfaces between the independent software. The non functional software testing types can be testing security and performance of the software. 

Build acceptance testing or initial level testing: A build, in simple terms is a complied code packaged as a single file i.e. .exe file. A build is tested for initial steps to check the readiness of the software for the detailed testing. e.g.: testing URL, page links, buttons etc.

Functional testing: The QA team tests all the functionalities of software in depth with different data sets which could be either manual testing or automation testing. The QA team identifies the defects and reports to developers.

Retesting: In the retesting, QA team tests if the defects are fixed appropriately by the developer.

Regression testing: The QA team tests the software to check if new defects are introduced into software due to changes in the software and its environment. Due to changes in the programs, there are possibilities of new defects in the related functionalities. 

Cross browser testing: It is to test the compatibility of the software with different browsers of different versions using cross browser testing tools.

External interface testing: It is also called system interface testing. The interface between two independent software is tested. e.g.: payment interface between flight reservation software and payment gateway.

Security testing: Security testing is about testing the security features of the software. The software should be secured from malicious attacks and hackers.

Performance testing: The speed or the efficiency of the software is tested in the performance testing which depends on various factors like number of users, volume of data in server, resources and usage. 

Database testing: Database testing is to view and validate the data in the database.

There are several other software testing types like robustness testing, usability testing, high availability testing, adhoc testing, compatibility testing, configuration testing, penetration testing, and the list goes on.

software testing types
software testing types

 

 

 

 

Software Testing Types:Check your understanding

1. Describe the different software testing types not listed in above article.

Facebook Comments
Tags

Related Articles

75 thoughts on “SOFTWARE TESTING TYPES”

  1. Some of the different software testing types I could think of – Smoke testing, Boundary testing, UAT, Stress testing, Volume testing, etc.

  2. Describe the different software testing types not listed in above article ?
    Static Testing
    Dynamic testing- white box and black testing
    white box- unit/component, integration test.
    black box test – system test, UAT- alpha and Beta test.

  3. Other types of testings not listed in the above reading
    Ad-hoc Testing: This is informal testing and is unstructured and be performed by any stakeholder with no reference to any test case
    Accessibility testing: The aim of this testing is to determine if the contents of the website be easily accessed by disabled people. Various checks such as color and contrast, font size ,clear and concise texts are tested.
    API testing: is a testing similar to unit testing and each of software APIs are tested as per API specification. It is done mostly by testing team and is complex and needs extensive coding skills.
    Boundary Value testing: testing here is done to check for defects at boundary conditions
    BIG BANG Integration Testing: Here all or almost all of the modules are developed and then coupled together.

  4. Describe the different software testing types not listed in above article.
    Dynamic testing- white box and black testing
    black box test –
    system test,
    UAT:- alpha and Beta test.
    white box- unit/component, integration test.
    API testing: is a testing similar to unit testing and each of software APIs are tested as per API specification. It is done mostly by testing team and is complex and needs extensive coding skills.

  5. Describe the different software testing types not listed in above article.
    Ad-hoc testing
    This type of testing is also called as informal or Structural testing. Ad-hoc testing finds the defects that
    were not found by existing test cases. It is also referred to as a Random and Monkey testing.
    Boundary Value Testing (BVT)
    BVT is a technique based on “Errors aggregates at boundaries”. In this type of technique testing is done
    to check the defects at boundary conditions. A range of numbers are checked in this technique.
    All pairs Testing
    All pairs testing is a black box testing approach. Each input is tested in pairs of input. It is very helpful for designing tests for application involving multiple parameters.

  6. 1. Static testing – project documents are reviewed to identify any errors such as missing information/requirements or errors in logic
    2. Unit/component testing – test each program independently
    3. Integration testing – test interfaces or interlinks between programs
    4. User Acceptance Testing (UAT) – testing done by end users or client to check if the software developed is as per their requirements

  7. User Acceptance Testing ( UAT) which I noticed probably not mentioned in above article. UAT is last phase of the software testing process in which actual software users test the software to make sure it works in real-world scenarios. This testing is important to verify if everything works as it should before final distribution to client site. In this last phase of software testing, test done in IT environment is called Alpha testing and test done in real environment is Beta testing. In Both testing the purpose is same, it gives the users to directly interact with software and find out if it works as expected and meets the requirement and criteria. Defects and bugs will be recorded and it is reported to developer for correction.

  8. White box testing:
    The two types of white box testing are unit testing (component testing) is testing each program component in isolation and integration testing test the interfaces between the program components. White box testing is done by the developers using tools in the development environment.
    Black box testing
    Black box testing {specification-based testing} comprises of system testing and user acceptance testing (UAT). Independent team of QA analysts conduct system testing to establish the quality of the software.. The system testing is performed using various different Software Testing tools, in the test environment. Users can test the usability of the software in User acceptance testing after the system testing,. The QA analysts may assist the users in the UAT. Alpha testing is when the users perform the UAT in IT environment. Beta testing is when the software is tested by the users in the real or pre-production environment.

  9. 1.Alpha testing : This is the most common type of testing used in software and is done to identify defects in the software before releasing to the market or the users.

    2.Beta testing: It is a formal type testing which is done by customers or end users .
    3.Back-end testing :in back – end testing GUI is not involved but there can be issues involved like data loss, data corruption etc and these issues are critical to fixing before system goes live
    Into production
    4.Black box testing :In this method of software testing the internal structure / design is not known to the tester
    5.Unit testing : Here testing is done of an individual unit or group of related units.

  10.  Ad-hoc Testing: An informal testing, where the objective of testing is to find the defects without any test case.

     Gorilla Testing: The functionality of a module is tested where the test is performed by the tester and the developer.

     Mutation Testing: It’s a type of white box testing in which the source code of one of the programs is changed to verify whether the existing test case can identify the defects.

  11. Exploratory testing: explore the software to identify defects.this is experience based testing.
    Sanity Testing: here defects are fixed and a newer version of software is released.

  12. Describe the different software testing types not listed in above article.
    A1) Sanity testing : when developers fix the defects after the smoke test, sometimes they come up with new version of software. For the new version initial testing has to be done again which is known as sanity testing. In sanity testing initial steps of functionalities in which defects are fixed will be tested.
    Exploratory testing : Explore software to understand and also identify defects in less time.

  13. Name and describe the different types of software testing that you might have come across.
    –Smoke testing: Smoke test is the basic test that check the functionality of the application.
    High availability testing: Test the availability of backup server when the default server fail.
    Volume testing: Test the performance of the software with different volume of the data to identify the maximum number of users supported by the software

  14. Smoke testing and sanity testing. Smoke testing is done to verify if the critical functionalities of the software are working after the software build is complete. Sanity testing is done to test if bugs have been fixed and to check new functionalities.

  15. Ans.: End-to-End Testing or “E2E Testing”: is quite similar to System Testing. It involves testing of the application in a environment that simulates the real-world use, such as interacting with a database, using network communications, or interacting with other hardware, applications, or systems.
    Ad-hoc Testing: is performed without any planning of process and without any documentation like Test Case or Test Scenarios. It involves test design and simultaneous test execution. For Ad-hoc testing the testers possess significant understanding of the software before testing it.
    Monkey Testing: It is done with no specific test in mind. Here the monkey is the producer of any input data (which can be either a file data or can be an input device data). It involves pressing some keys randomly and checking whether the software fails or not.
    Exploratory Testing: It involves simultaneous learning, test design and test execution. It is a type of Ad-hoc Testing, but only difference is that in this case, the tester does not have much idea about the application & he explores the system in an attempt to learn the application and simultaneously test it

  16. Smoke testing:Smoke test is the basic test that check the functionality of the application.
    Sanity Testing: here defects are fixed and a newer version of software is released

  17. Basics of software testing
    There are two basics of software testing: blackbox testing and whitebox testing.
    Blackbox Testing
    Black box testing is a testing technique that ignores the internal mechanism of the system and focuses on the output generated against any input and execution of the system. It is also called functional testing.
    Whitebox Testing
    White box testing is a testing technique that takes into account the internal mechanism of a system. It is also called structural testing and glass box testing.
    Black box testing is often used for validation and white box testing is often used for verification.

    Types of testing
    There are many types of testing like…

    Unit Testing
    Unit testing is the testing of an individual unit or group of related units. It falls under the class of white box testing. It is often done by the programmer to test that the unit he/she has implemented is producing expected output against given input.
    Integration Testing
    Integration testing is testing in which a group of components are combined to produce output. Also, the interaction between software and hardware is tested in integration testing if software and hardware components have any relation. It may fall under both white box testing and black box testing.
    Functional Testing
    Functional testing is the testing to ensure that the specified functionality required in the system requirements works. It falls under the class of black box testing.
    System Testing
    System testing is the testing to ensure that by putting the software in different environments (e.g., Operating Systems) it still works. System testing is done with full system implementation and environment. It falls under the class of black box testing.
    Stress Testing
    Stress testing is the testing to evaluate how system behaves under unfavorable conditions. Testing is conducted at beyond limits of the specifications. It falls under the class of black box testing.
    Performance Testing
    Performance testing is the testing to assess the speed and effectiveness of the system and to make sure it is generating results within a specified time as in performance requirements. It falls under the class of black box testing.
    Usability Testing
    Usability testing is performed to the perspective of the client, to evaluate how the GUI is user-friendly? How easily can the client learn? After learning how to use, how proficiently can the client perform? How pleasing is it to use its design? This falls under the class of black box testing.
    Acceptance Testing
    Acceptance testing is often done by the customer to ensure that the delivered product meets the requirements and works as the customer expected. It falls under the class of black box testing.
    Regression Testing
    Regression testing is the testing after modification of a system, component, or a group of related units to ensure that the modification is working correctly and is not damaging or imposing other modules to produce unexpected results. It falls under the class of black box testing.
    Beta Testing
    Beta testing is the testing which is done by end users, a team outside development, or publicly releasing full pre-version of the product which is known as beta version. The aim of beta testing is to cover unexpected errors. It falls under the class of black box testing.

  18. This article tells about diferent types of software testing. There are so many types of testing done during the software life cycle, some of them are mentioned below,
    Browser compatibility testing
    High availability testing
    Boundary value testing
    Exploratory testing
    user acceptance testing
    System testing
    Alpha and beta testing
    Sanity testing
    load testing etc.

  19. 1.robustness testing: the process of verifying the robustness (i.e. correctness) of test cases in a test process/ robustness -as the degree to which a system or component can function correctly in the presence of invalid inputs or stressful environmental conditions.
    2.usability testing: evaluating a product or service by testing it with representative users
    3.high availability testing: testing the undisrupted functioning of a system for a long time so that users face no troubles in accessing the system almost all the times.
    4.adhoc testing: it 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.
    5.compatibility testing: non-functional testing to check whether your software is capable of running on different hardware, operating systems, applications , network environments or Mobile devices.
    6.configuration testing: testing an application with multiple combinations of software and hardware to find out the optimal configurations that the system can work without any flaws or bugs
    7.penetration testing: (also called pen testing) is the practice of testing a computer system, network or Web application to find vulnerabilities that an attacker could exploit.

  20. Ad-hoc testing: software testing performed without proper planning and documentation.
    Monkey Testing: Test the functionality randomly without knowledge of application and test cases is called Monkey testing.
    Sanity Testing: this is the basic functional testing conducted by test engineer whenever receive build from the development team.
    Smoke testing: This is also basic functional testing conducted by the developer or tester before releasing the build to the next cycle.
    End to End testing: testing the overall functionalities of the system including the data integration among all the modules are called the end to end testing.
    Exploratory testing: Exploring the application and understanding the functionalities adding or modifying the existing test cases for better testing is called exploratory testing.

  21. Sanity testing: is a software testing that verifies that error is fixes and report there is a good software stability after several tests.
    Smoke testing: is a software testing that verifies initial builds when the sw is relatively unstable.

  22. The different software testing types :
    Acceptance testing,Accessibility testing,Beta testing,Smoke testing,Sanity testing,Integration testing,System testing,Exploratory testing

  23. There are many types of functional and non-functional software testing.
    Exploratory testing: This testing can be done in any time during the project to understand the software and find the defects.
    User Acceptance Testing: Alpha and beta testing come under UAT. Alpha testing is done in the IT environment and beta testing is done in the real-time environment.
    Volume Testing: test performance of the software with diff volume of data and identify the max volume of data supported by the software.
    Load Testing: test performance of the software with diff no of users and identify the max no of users supported by the software
    Stress Testing: test performance of the software with diff no of resources and identify the max no of resources are required by the software.
    Soak Testing: Test performance of the software under continuous usage.
    Browser Compatibility testing: Test compatibility of the software with the specific version of the browser.
    High availability Testing: Test availability of the backup servers when default server fails.
    Negative testing: Negative testing is necessary to validate the input with Invalid input. The main purpose of this testing is to check whether software or system can handle the invalid/unexpected input or not appropriate error messages are displaying or not when invalid inputs are entered.
    Positive Testing: Positive testing determines that software works as expected. The software is tested with valid possibilities and valid data values. If an error occurs, then the software fails.

  24. The different software testing types not listed in above article
    Smoke testing,Sanity testing, white box testing(unit and integration testing),negative testing, positive testing and user acceptance testing.

  25. Other types of testing not mentioned above are:
    – Positive testing: testing the software with valid input
    -Negative testing: testing the software with invalid input
    – Load testing: test the software with different number of users it can accept
    – Volume testing: test the software with different volumes of data it can accept
    – Stress testing: test the software with different number of resources it can accept
    – Soak testing: test the software performance under continuous usage
    – Portability testing: test the software in different devices like iphone, android, PC, ipad
    – User Acceptance testing: software tested by the users
    – Alpha testing: Users test the software in the IT environment
    – Beta testing: Users test the software in the real time environment

  26. Positive testing, negative testing, User acceptance testing, smoke testing, high availability testing, integration testing.

  27. This article focusses on different types of software testing like functional and non-functional testing, smoke esting, sanity testing, retesting, regression testing, performance testing, compatibility testing, high availability testing, inter system tetsing, security testing etc..

  28. Happy Path Testing: The objective of Happy Path Testing is to test an application successfully on a positive flow. It does not look for negative or error conditions. The focus is only on the valid and positive inputs through which application generates the expected output.
    Load Testing: It is a type of non-functional testing and the objective of Load testing is to check how much of load or maximum workload a system can handle without any performance degradation. It helps to find the maximum capacity of the system under specific load and any issues that cause the software performance degradation.

  29. Install/Uninstall Testing :
    Installation and uninstallation testing is done on processes on different operating systems under different hardware or software environment.
    Comparison Testing : Comparison of a product’s strength and weaknesses with its previous versions .
    Branch Testing : The code is tested thoroughly by traversing at every branch.

  30. Static testing : Review of the project documents to identify the errors by QA.
    Functional testing : Test initial steps of the each functional.
    Smoke testing: Test each functionality in detail and in the depth with the different steps and data.
    Sanity testing: Test initial steps of the functionality in which defects are fixed.
    Retesting: Test if the defects are fixed by the developers.
    Regression testing: Test if the new defects are introduced in to software due to changes in software and it environments.
    Browser compatibility testing: test compatibility of the software with specific version of the browser.
    External testing: Test interface between two independent software.
    High availability testing: Test availability of the back up server when the default servers fails.

  31. Apart from the above ,the other types of testing includes:
    1) Sanity testing.
    2) Integration testing
    3)User acceptance testing
    4)Unit testing
    5)Portability testing.
    6) Recovery testing.
    7)Reliability testing.

  32. Smoke testing : Test the initial steps of each functionality. For eg: login page/links/button, pages, etc.
    Sanity Testing: Sanity testing is done to test the initial steps of functionality in which the defects are fixed
    Performance Testing: Speed and efficiency of the software is tested in this type of testing
    Volume Testing:This type of testing is done to find out the amount of users the software can handle.
    Soak testing:This type of testing is done to check the performance of the software under continuous usage

  33. Agile Testing
    Agile Testing is a type of software testing that accommodates agile software development approach and practices.
    API Testing
    API testing is a type of testing that is similar to unit testing. Each of the Software APIs are tested as per API specification.
    Automated testing
    This is a testing approach that makes use of testing tools and/or programming to run the test cases using software or custom developed test utilities.
    All Pairs testing
    Also known as Pair-wise testing, is a black box testing approach and a testing method where for each input is tested in pairs of input.
    Beta Testing
    This is a formal type of software testing that is carried out by end customers in real time environment.
    Alpha Testing
    This is a formal type of software testing that is done in IT environment either by Users or IT team.
    Backward Compatibility Testing
    Type of software testing performed to check that the newer version of the software.
    Boundary Value Testing (BVT)
    Boundary Value Testing is a testing technique that is based on concept “error aggregates at boundaries”.
    Big Bang Integration testing
    This is one of the integration testing approaches, in Big Bang integration testing all or all most all of the modules are developed and then coupled together.
    Bottom up Integration testing
    Bottom-up integration testing is an integration testing approach where testing starts with smaller pieces or sub-systems of the software till all the way up covering entire software system.

    Reference: http://www.testingexcellence.com

  34. Beta Testing:
    This is a formal type of software testing that is carried out by end customers before releasing or handing over software to end users.
    Smoke Testing:
    This test is done to make sure that software under testing is ready or stable for further testing.
    Acceptance Testing:
    Formal testing conducted to determine whether a system satisfies its acceptance criteria and to enable the customer to determine whether to accept the system or not. It is usually performed by the customer.
    Ad-hoc Testing:
    Testing performed without planning and documentation – the tester tries to ‘break’ the system by randomly trying the system’s functionality. It is performed by the testing team.
    Sanity Testing:
    Initial level of testing. Defects identified at the initial level to avoid major problems later.

  35. other types of testing are:
    1.White box testing
    2.Black Box testing
    3.Positive testing
    4.Negative testing
    5.Static testing
    6.Load testig
    7.Volume Testing
    8.Cross Browse testing
    9.Resource testing

  36. 1. Exploratory testing: It is just to understand the software functionality at initial level
    2. Smoke testing: It is to test if the defects are fixed by the developer at the initial level of each functionality
    3. Unit/Component testing: It is the white box testing done by developers to test if each module of software is working properly.
    4. Integration testing: This also comes under white box testing done by developers to test the interfaces between programs
    5. Installation testing; To check if software is successfully installed and it’s running as per expectation
    6. Accessibility testing: It is to test whether the software is compatible to use by handicapped person also.
    7. UAT testing: Testing performed by the end user.

  37. 1. Exploratory Testing – Explore the Software to understand the software and its defects, usually done if duration is less.
    2. Sanity Testing – Test the initial steps of the functionality in which the defects were fixed.
    3. Load Testing – Test the Performance of the software with different number of users and identify the maximum numbers supported by the software.
    4. Stress Testing – test the Performance of the software with different number of resources and identify the number of resources required to run the software smoothly..
    5. Soak Testing – Test the performance of the software under continuous usage..
    6. High Availability Testing – Test the availability of the back up servers when the actual servers were fail.
    7. Volume Testing – Test the performance of the software with different volumes of data to identify the maximum supported by the software.

  38. Ad-hoc testing
    This type of software testing is very informal and unstructured and can be performed by any stakeholder with no reference to any test case or test design documents.
    The person performing Ad-hoc testing has a good understanding of the domain and workflows of the application to try to find defects and break the software. Ad-hoc testing is intended to find defects that were not found by existing test cases.

    Acceptance Testing
    Acceptance testing is a formal type of software testing that is performed by end user when the features have been delivered by developers. The aim of this testing is to check if the software confirms to their business needs and to the requirements provided earlier. Acceptance tests are normally documented at the beginning of the sprint (in agile) and is a means for testers and developers to work towards a common understanding and shared business domain knowledge.

    Accessibility Testing
    When doing accessibility testing, the aim of the testing is to determine if the contents of the website can be easily accessed by disable people. Various checks such as color and contrast (for color blind people), font size for visually impaired, clear and concise text that is easy to read and understand.

    Automated testing
    This is a testing approach that makes use of testing tools and/or programming to run the test cases using software or custom developed test utilities. Most of the automated tools provided capture and playback facility, however, there are tools that require writing extensive scripting or programming to automate test cases.
    All Pairs testing
    Also known as Pair-wise testing, is a black box testing approach and a testing method where for each input is tested in pairs of inputs, which helps to test software works as expected with all possible input combinations.

    Beta Testing
    This is a formal type of software testing that is carried out by end customers before releasing or handing over software to end users. Successful completion of Beta testing means customer acceptance of the software.

    Black Box testing
    Black box testing is a software testing method where testers are not required to know coding or internal structure of the software. Black box testing method relies on testing software with various inputs and validating results against expected output. More on Black Box Testing.

    Agile Testing
    Agile Testing is a type of software testing that accommodates agile software development approach and practices. In an Agile development environment,testing is an integral part of software development and is done along with coding.

  39. 1.Describe the different software testing types not listed in above article.
    Alpha Testing: The objective of this testing is to identify all possible issues or defects before releasing it into the market or to the user.
    Beta Testing: Beta Testing is a formal type of software testing which is carried out by the customer. It is performed in Real Environment before releasing the product to the market for the actual end users.
    Boundary Value Testing: Boundary value testing is used for testing a different range of numbers.
    Graphical User Interface (GUI) Testing: The objective of this GUI testing is to validate the GUI as per the business requirement.
    Accessibility Testing: The aim of accessibility testing is to determine whether the software or application is accessible for disabled people or not.

  40. Some of the performance testing are
    1. Load Testing- Test the performance of the software with different number of users and identify the maximum number of users supported by the software
    2. Volume Testing- Test the performance of the software with different volume of data and identify the maximum volume of data supported by the software.
    3. Stress Testing – Test the performance of the software with different number of resources and identify the number of resources required by the software
    4. Soak Testing-Test the performance of the software under continuous usage

  41. There are many different types of functional and non-functional testing. Some examples are as follow:

    Functional testing:
    – Smoke testing: also known as ‘build verification testing’ (when software is relatively unstable) to ensure that the most important functions work to determine if build is stable. Example: Can application starts successfully?

    – Sanity testing: testing the relatively stable builds after multiple rounds of regression testing and to verify the new functionalities and bug fixes work. Example: Verifying new functionality, bug fixes in the build but not in detail

    – Beta testing: this is done by customer and is performed in real environment before releasing the product to the market for theactual end users.

    Non-Functional testing examples are Compliance testing, Install testing, Recovery testing

    Other types of testing:
    – Black box testing: Also known as behavioral, opaque-box, closed-box, specification-based or eye-to-eye testing is a software testing method that analyses the functionality of software/application without knowing much about the internal structure/design of the items that is being tested and compares the input value with the output value. Main focus is on the functionality of the system as a whole. The test is done by the testers who not necessarily have programming/coding knowledge.

    Black box testing techniques:
    – Equivalence partiotioning
    – Boundry value analysis
    – Decision table testing
    – state transition testing
    – Error guessing
    – Graph-based testing methods
    – Comparison testing

    White box testing technique:
    – Having a knowledge aout the actual code and internal structure of the application.
    – It is done at a lower level of tesitng such as unit testing and integration testing
    – This is done by develoers or testers with programming knowledge

  42. Some of the other different software testing types are unit Testing, Integration Testing, UAT, Alpha Testing, Beta Testing, Smoke Testing , data , volume Testing Soak Testing & Sanity Testing etc

  43. Describe the different software testing types not listed in above article.

    -Smoke testing, Sanity Testing, Exploratory Testing, high Availability Testing, Adhoc Testing, Cross browsing Testing, Interface
    testing,Volume testing ,Load testing etc.

  44. There are many types of system testing, some of them are under:
    1.Soak Testing-{usage}test the performance of the software under continuous usage.
    2.Load Testing:Test the performance of the softwarewith different number of user and identify the maximum number of the user supported by the software.
    3.Exploratory Testing-Try to explore the software to understand it and identify the defects.We do not follow very organize way but depends on the skills of QA
    4.Stress Testing:Test the performance of the software with different number of resources and identify the number of resources require by the software
    5.Volume Testing:Test the performance of the software with different volume of data and identify maximum volume of data supported by the software

  45. Acceptance Testing : Is the last level of testing, it follows System testing. It can be internal(Alpha testing) or External (Customer acceptance testing and UAT)
    Hybrid Testing: Is done when user wants to use application soon. It involves isolating a section of software and then dividing it into three layers, main focus being the middle layer. It includes functional testing, compatibility testing etc.

  46. Q. Describe the different software testing types not listed in above article.
     Exploratory Testing:
    Exploratory testing is an approach to software testing that is described as simultaneous learning, test design and test execution. It is an unscripted testing technique. It is usually done at the beginning before smoke testing, BUT it can be done at any time.
     Performance Testing Types:
    – Load testing (Users):
    Load testing is a kind of Performance Testing which determines a system’s performance under real-life load conditions. This testing helps determine how the application behaves when multiple users access it simultaneously. This testing usually identifies – The maximum operating capacity of an application.
    – Volume testing/Flood Testing (Data):
    Volume testing or flood testing is a Performance Testing, where the software is subjected to a huge volume of data. Volume testing is done to analyze the system performance by increasing the volume of data in the database.

    – Stress testing (Resources):
    Stress Testing is a performance testing activity that determines the robustness of software by testing beyond the limits of normal operation. It tests the performance of the software with different number of resources and identify the number of resources required by the software. For example, identify the number of servers required by the software. Stress testing is particularly important for “mission critical” software but is used for all types of software.
    – Soak Testing (Usage):
    Soak testing is a type of performance testing that verifies a system’s stability and performance characteristics over an extended period or under a continuous usage. It is typical in this type of performance test to maintain a certain level of user concurrency for an extended period. Example: 2 to 3 weeks of continuous observation of performance of the software.

     High Availability Testing:
    Test the availability of back up servers when the actual servers fail.
     Ad Hoc Testing:
    Ad hoc testing is a commonly used term for software testing performed without planning and documentation but can be applied to early scientific experimental studies. The tests are intended to be run only once, unless a defect is discovered. Ad hoc testing is the least formal test method.
     Usability Testing:
    It is a non-functional testing technique that is a measure of how easily the system can be used by end users. It is difficult to evaluate and measure but can be evaluated based on the below parameters: Level of Skill required to learn/use the software

  47. Unit testing: Unit testing is a level of software testing where individual units/ components of a software are tested. The purpose is to validate that each unit of the software performs as designed.

    Integration Testing :Integration Testing is a level of software testing where individual units are combined and tested as a group. The purpose of this level of testing is to expose faults in the interaction between integrated units.

    System testing:System testing is a level of software testing where a complete and integrated software is tested. The purpose of this test is to evaluate the system’s compliance with the specified requirements.

    Sanity Testing:The main aim of Sanity testing to check the planned functionality is working as expected. Instead of doing whole regression testing the Sanity testing is perform.

  48. Additional Types of 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.
    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 problem
    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.

  49. 1. Describe the different software testing types not listed in above article.

    There are many types of Software testing.
    Some of them are
    High Availability Testing- If the server fails, can the existing servers share the load or a backup server is required.
    Sanity Testing – It is another initial level testing. Retesting the initial steps of functionalities in which the defects are fixed.
    Hybrid Testing – Hybrid testing uses top down and bottonm up techniques of the integration testing to test. It is also called as sandwich testing. It has 3 layers. The middle layer is the target layer, the layer above the target layer and the layer below the target layer. Testing is focused on the middle Target layer. If the user wants to work on the working version of the software as soon as possible, this type of testing is done.
    Risk based Testing – This type of testing is done to identify the risks involved in the project. Risks can have a positive impact(business opportunity) or a negative impact(can be a threat) on the business, technical, cost and quality targets of the project. Risks are of two types
    *Project risks – staff issues, technical issues, supplier issues etc
    * Product Risks – software is not as per the requirements, defective software etc.
    End to End Testing – Testing the software from starting to the end. All functionalities within the software, their interfaces, external interfaces, interactions with different systems in an environment similar to the real time environment. The modern software systems are more complex and interconnected with each other. So if a subsystem fails the whole system may collapse. Here the knowledge of the whole system and the sub system is a must.
    Negative Testing – An example of Negative testing is the user enters incorrect data and system display the correct error message. The main intention of negative testing is to test if the error message is not showing when it is supposed to show or error message shows when it is not supposed to show. Negative testing scenarios – not populating required fields, entering more characters than the range etc.
    Portability testing – Testing to see the flexibility of using the application or system on different system environments and if it is movable from one system to another. It is measured in terms of maximum effort taken to transfer from one system to other system. All the cost in the life of the software can be saved if portability testing is done properly. The main purpose of portability testing is to move the application across different environments and not just platforms. Example: application is developed to work on google android, windows operating systems, apple IOS etc.

  50. sanity testing: test the initial steps of each functionality in which defects are fixed.
    alpha testing: once the system testing is done customer perform the testing in it environment before release.
    beta testing: the customer perform the testing in real environment.
    exploratory testing: explore the application to identify the defects.

  51. Some of the software testing types not listed in the above article are:
    1) Exploratory testing
    QA explores the software to understand and identify defects
    It is done when time is insufficient.
    It can be done anytime during the project.
    2) Smoke testing or Initial level testing
    It tests the initial steps of each functionality
    Eg – login link, valid links, buttons, tabs etc.
    QA reports these defects to the developer who will fix defects and prepare a new version of the software.
    3) Sanity testing
    When a new version is developed by the developer, it cannot be released without further testing. That testing is called Sanity testing.
    4) Browser Compatibility Testing
    To test compatibility of software with specific browsers
    Eg – IE, Firefox, Chrome, Safari
    5) User Acceptance Testing
    When the end users test the software with the help of BA and QA, its called User Acceptance Testing.
    6) Alpha Testing
    When the end users test the software in the IT environment, its called Alpha Testing
    7) Beta Testing
    When the software is tested in the real environment, its called Beta Testing.

  52. Th different Types of Testing are
    1.Sanity testing.
    2.Smoke testing.
    3.Interface testing.
    4.Regression testing.
    5.Beta/Acceptance testing.

  53. Other types of Functional testing not covered under this topics are
    Unit Testing
    Integration Testing
    User Acceptance Testing
    Alpha and Beta

    Non- Functional Testing
    Performance Testing
    Load testing
    Stress testing
    Volume testing
    Security testing
    Compatibility testing
    Install testing
    Recovery testing
    Reliability testing
    Usability testing
    Compliance testing
    Localization testing

  54. users can test the usability of the software in User acceptance testing.
    UAT- is classified into alpha test and beta test.
    Usability of the system tested in IT environment is called alpha testing.If the usability of the system is tested by
    a group of targeted end users it is beta testing.

    Soak testing is a type of performance testing which tests the system’s performance characteristics
    and stability over a long period of time under the continuous usage of the software. It handles issues
    related to memory allocation, log files and database resource utilization. This testing is used to find
    whether the system will stand up to very large volume of data usage over longer period of time and observing
    the effect caused to the design.

    Penetration testing is a type of testing performed to discover any potential security breaches
    in the software before any hacker does it. This type of testing is done on a computer network system to check the
    security vulnerabilities that an attacker could exploit. Penetration testing is also called as Pen testing
    or ethical hacking.
    The primary goal of pen testing is to identify all weak spots in an organisation’s security posture.

  55. To mention some
    • Vulnerability testing:- Testing to identify weakness of the software, hardware and the network.
    • Recovery testing:- Testing to validates how well the application or system recovers from crashes or disasters.
    • Risk based Testing:- Testing based on priority. That is the functionalities or requirements that have highest impact on business and in which the probability of failure is very high being tested prior.
    • Gorilla Testing:- performed by a tester or developer. Testing of functionality in the module is tested thoroughly and heavily to check the robustness of the application.
    • Reliability testing
    • Usability testing:- User friendliness check is done. Testing is done if a new user can understand the application easily or not.
    • Happy path Testing:- The objective of Happy Path Testing is to test an application successfully on a positive flow. It does not look for negative or error conditions.
    • Localization testing

  56. Unit Testing :testing individual component of program
    Integration Testing: testing the interfaces of all unit components
    User Acceptance Testing :UAT is final testing done by the users of the system with some help from the testers.
    Alpha Testing: where UAT is done in IT environment
    Beta Testing: UAT done in real environment
    Smoke Testing: Test initial steps of each functionality to make sure its ready!
    Sanity Testing: Test initial steps of each functionality once the defects in the previous version has been fixed.
    Recovery testing: Testing time taken to recover after the system has crashed
    Usability testing: Testing the user friendliness of the system
    Compliance testing: testing the compliance of the software with the laws, rules and regulations

  57. 1. Static testing – project documents are reviewed to identify any errors such as missing information/requirements or errors in logic
    2. Unit/component testing – test each program independently
    3. Integration testing – test interfaces or interlinks between programs
    4. User Acceptance Testing (UAT) – testing done by end users or client to check if the software developed is as per their requirements.

Leave a Reply

Your email address will not be published. Required fields are marked *

Close