Campus Oxide
Search :
 
Projects   
Seminar   
Tutorials   
  EAI
  Sun IDM
 Quality Assurance
 Quality Control
 Java
 C/C++
 Oracle
  Glossary
Case Study   
 
 
CampusOxide Dot Image Testing Types
 
The purpose of this document is to understand Software Testing procedure.

TYPES OF TESTING

  • Functional Testing
    Functional testing will include verification and validation of all the features and functionalities developed against the external specifications provided. Functional testing shall include:

    • To verify all the given functionalities that are required by client exist in the first place.
    • To validate that the system functionalities are as per the specified and defined requirements.
    • To check and observe the response of the system when positive values are given in the form of test scenarios.
    • To check and observe the response of the system when negative/invalid data is given in the form of test scenarios. The system should handle all sorts of erroneous / invalid data and give appropriate messages wherever applicable.
  • Interface Testing
    The user’s interaction with the application/product is verified by User Interface testing. The basic aim of UI testing is ensure that the User-Interface provides the user with the appropriate access and navigation through the functions of the targeted test. Additionally the confirmation of the UI objects adhering to client specifications is also tested through the UI testing. It shall include the following:

    • UI Object alignment
    • Testing on different screen resolutions
    • Testing on different versions of different browsers. For Example: Internet Explorer, Netscape, Opera, Hot Java etc.
    • Testing on different versions of Operating System. For Example: Microsoft, Unix, Linux, Apple etc.
    • Fonts, sizes and color of objects and screen within the Data Center product
    • Testing on the various page links/URLs within the product
    • Tab sequencing within the Data Center product
    • Various messages generated by the Data Center product.
    • Overall user-friendliness in terms of look and feel and aesthetics.
  • Boundary Value Testing
    The boundary value analysis starts with the identification of specific and bounded ranges of input values for the system. Once the ranges are known the test cases are developed to exercise the minimum and maximum values in the form of an input to the system and then checking the stimuli of the system.

    Examples of Boundary Value Testing:

    • Checking for the login page wherein the password should not be less than five characters and not greater than sixteen characters.
    • Testing will also be conducted beyond established limits.
  • Configuration Testing
    Configuration testing verifies the operation of the target-of-test on different software and hardware configurations. In most production environments, the particular hardware specifications for the client workstations, network connections, and database servers vary. Client workstations may have different software loaded (for example, applications, drivers, and so on) and, at any one time, many different combinations may be active using different resources.

    Main objective of configuration testing is to exercise the target-of-test on the required hardware and software configurations to observe and log target behavior under different configurations and identify changes in configuration state

    To perform configuration testing Open and close various non-target-of-test related software, such as the Microsoft Excel and Word applications, either as part of the test or prior to the start of the test. Execute selected transactions to simulate actors interacting with the target-of-test and the non-target-of-test software

    Example: Testing a web application on IE5.5 and Netscape 6.0

  • Installation Testing
    Installation testing has two purposes. The first is to ensure that the software can be installed under different conditions (such as a new installation, an upgrade, and a complete or custom installation) under normal and abnormal conditions. Abnormal conditions include insufficient disk space, lack of privilege to create directories, and so on. The second purpose is to verify that, once installed, the software operates correctly. This usually means running a number of tests that were developed for Function Testing.

    Main objectives of Installation testing is to exercise the installation of the application onto each required hardware configuration under the following conditions to observe and log installation behavior and configuration state changes:

    • New installation: a new machine, never installed previously with application to be tested
    • Update: a machine previously installed application, same version
    • Update: a machine previously installed application, older version
  • Regression Testing
    The selective retesting of a software system that has been modified to ensure the bugs have been fixed and no other previously-working functions have failed as a result of fixing and that newly added features have not created problems with previous versions of the software. Also referred to as verification testing, regression testing is initiated after a programmer has attempted to fix a recognized problem or has added source code to a program that may have introduced errors.

    It is a quality control measure to ensure that the newly-modified code still complies with its specified requirements and that unmodified code has not been affected by the maintenance activity. The regression testing is done to verify that components, related with the reported bug, are working properly. The process continues until the exit criterion is met. Regression testing brings confidence in the quality of product and reflects the state of stability of product.

  • Database Testing
    • Database testing is important as the application’s performance heavily depends on database. Database performance problems can make the application bad. In an age where response time and accelerated access to information is most critical issue, slow or poor performing transactions can cause users to lay the performance blame on application. When thousands of database transactions and procedures are involved, the performance issues become exponentially difficult to analyze.
    • To solve this problem effectively, following points need to be verified….
    • That the schema design is as per the specification approved by the client.
    • Integrity of the database.
    • Relationship among the tables.
    • Access control – accounts (user-name and passwords), user permissions, password protection.
    • Contents of the database. The contents should be verified against the raw data as per the specifications.
    • Check the queries and procedures to get the data from database.
    • Capture, analyze and optimize the SQL that is passed between the database and the application and the users.
    • Load and Stress test should test both, the database and the application to ensure that the addition of extra users does not introduce other performance problems.
    • Try to find out and pinpoints the transactions and procedures most damaging to performance.
    • Simulate, manage and measure complex multi-client loads on SQL Server Databases.
    • Monitor server activity and detect anomalies in real time.
  • Security Testing
    The process to determine that an information system protects data and maintains functionality as intended. Security of the information system can be defined as the control structure established to manage the integrity, confidentiality and availability of information system data and resources.

    The following points should be considered for the testing.

    • Access restriction into specific information system and applications to prevent unauthorized individuals from accessing programs and data.
    • Check for the minimum password controls such as the minimum and maximum length, composition, expiration periods, use of previous passwords, initial login rule etc.
    • Check the process for identifying what systems are backed up, how often, and how often they are verified and where they are stored and secured.
  • Volume Testing/Load Testing
    These tests are done by testing the application for expected load. It can provide baseline performance and capacity statistics. It can test the scalability of application by using an increasing workload test, thresholds this is something like a “real world test” of the application.

    First the maximum request times, which the customers should experience, is decided, this is done from the business and usability point of view, not from a technical point of view. At this point it is needed to calculate the impact of a slow application on company’s sales and support costs.Load tests are executed normally for Internet applications.

    Then the anticipated load and load pattern is calculated for the application which is then simulated using various server load Tools.

    At the end the test results are compared with the requests times wanted. Now it is evident from results that some work is needed to be done when requests take longer then time out or even generate error messages.

    Load tests are executed normally for Internet applications.

  • Stress Testing
    These tests are simulated attacks with excessive load on the application. In the real world situations like this can be created by a massive spike of users - far above the normal usage – e.g. caused by a running multiple analysis or queries.

    These tests also determine the breaking point or unacceptable performance point of a system to reveal the maximum service level it can achieve. The goals of stress tests are to learn under what load server generates errors, whether it will come back online after such a massive spike at all or crash and when it will come back online.

    Stress tests can be performed for both web based application and desktop application.

  • Performance Testing
    These tests are used to test each part of the server or the application to find out what parts of the application are slow and how you can make them faster.

    Using several Tools this type of testing can be performed by simulating some 20-40 simultaneous requests on one URL and recording the average time until the requests are answered. By changing the programming code it is possible to find the points, which can be considered to gain more application performance. Performance testing is mainly used for optimizing the performance of web-based applications.

  • SMOKE TESTING
    A quick-and-dirty test that the major functions of a piece of software work without bothering with finer details. 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.
 
Reference Video
 
 
 
If you want to know more on Testing Types, Please invite us in your campus.
 




 
© 2009 CampusOxide All Rights Reserved
Disclaimer|Privacy Policy|Sitemap