Testing Methodology
Hi-Tech Outsourcing has a vast experience in software testing field. Our testing methodology has helped us to minimize project risk and streamline testing releases. QA team is involved from the initial stage of the requirement.
1- Test Requirement:
We start the testing course by developing Requirement Specification document where the functionality requirements are documented.
For Test Coverage, Test Traceability matrix is developed.
2- Test Planning:
Test plan is a document, which describes the scope, process and objective of testing. It describes some of the following steps:
- Describes the functionality to be tested
- Test Deliverables
- Schedules and Resource allocations
- Test Environment Details
- Functionality to be tested
- Identifying the tools to be used
Test planning is carried out on the basis of IEEE Standard for Software Test Documentation (IEEE Std 829-1998) and other industry specifications.
3- Test Design:
Test Case:-Test Scenario is created for the identified functionality. Then, our Test Analyst will create test cases based on test scenarios. In this document, Input and the Expected Output for functionality will be documented. The test cases are designed based on various Test design techniques.
Unit test case preparation is initiated for program releases in a progressive manner in line with delivery commitments. Integration test cases are written for testing integration between the modules and overall flow of the project.
Test Data:- Based on the test cases created, we will create Input data before test case execution. Our Testing team is designing the test cases so that it covers all the application functionality but not exceeding cost and time constraint
Test Scripts:- Next step is Identifying the Test for automation. Preparing Test Scenario for the Testers will identify the functionality and create scripts for automating the test. We create the scripts and data for automation and execute the scripts
Test Environment:- Set up of the Test environment this involves the Hardware and Software Installation, Configuration of all Tools and Software.
Test Execution:- Here the test cases are executed. The bugs are tracked and documented. The scripts will be run for the test that needs automation. Various testing methods such as system, integration testing and techniques are followed in Hi-Tech to identify maximum bugs in the application under test.
4. Test Reporting:
Test reporting, analysis and Bug fixing management
Our QA person will track the bug and report in Bug Tracking Tools. Once the bugs are fixed from development team, Retesting/Regression testing is done to assure that the bugs are closed.
5. Test Closure:
Testing Team will prepare Test Summary report based on the test results. Test Summary report summarizes all the testing activities that were performed during the testing phase. The customers are aware about the testing activities and the status of the project testing. Then the Acceptance testing will be performed by the end Customers.
Software Test Life Cycle
Testing Types
We have experience and expertise in the following types of testing and offer 100% test guarantee.
- Functionality Testing
- Regression testing
- Performance Testing
- Compatibility Testing
- Usability Testing
- GUI Testing
- User Acceptance Testing
Functionality Testing :
Hitech’s Functional testing service aims to find how well the system executes the functions it is supposed to execute-including user commands, data manipulation, searches and business processes, user screens, and integrations. Our testing procedure covers the obvious surface type of functions, as well as the back-end operations.
Our experts test the individual components and processes before testing the entire system. We use industry standard defect tracking tools to track defects in the system and deliver detailed test metrics at the end of each test cycle.
Regression testing
Based on the product functionality testing cycle we conduct Regression testing which ensures the proper behavior of an application after fixes or modifications are made to the system or its environment.
Our testing experts fix Optimal time to schedule regression tests.
How much regression testing is required?
Functions that require more rigorous testing based on changes applied. With specific expertise and proven techniques to achieve efficiencies in regression testing, our experts can put their experience to work for you to ensure that your software defects are fixed for each new release.
Performance Testing :
Predicting performance capability of online solutions is essential to succeed in this competitive market. Our team has rich experience in analyzing the performance of the application using Open Source Tools (Open STA), etc. We focus on analysis, monitoring, identifying bottle necks and providing recommendations, thus offering an end-to-end performance solution for the complete application.
Hitech, an Independent Testing Services provider offers the following performance testing services to manage your risk with developing or deploying business critical systems. The team will help in determining the scope, complexity and size of the load, and the test architecture used for test execution.
In Load Test, we measure server response times to verify if the application can sustain expected maximum number of concurrent users and expected maximum size of the database.
In Stress Test, we measure server response times at varying loads starting from low load (low number of concurrent users), medium load (average number of concurrent users) through high load (expected maximum number of concurrent users through highest possible number of concurrent users until unacceptable levels of response times are experienced) to validate application's stability and validity
Compatibility Testing :
Our compatibility testing will verify product reliability with respect to fast-evolving industry standards. For software products that work on different hardware platforms, with different protocols, under different OS and with different applications, compatibility testing will provide you with crucial data on the product behavior.
Web applications need to be compatible with multiple browsers and products need to install under a variety of platforms. These aspects are tested through browser compatibility tests and platform compatibility tests. Server applications would be tested and qualified on different versions of Unix/Linux; thick client applications working on a variety of windows operating system variations would be verified. Computing environment may contain some or all of the below mentioned elements:
- Computing capacity of Hardware Platform
- Operating systems
- Other System Software (Web server, Networking/ Messaging tool, etc.)
- Browser compatibility (Firefox, Internet Explorer, Netscape, Safari, etc.)
Usability Testing:
Most common questions our team would address during Usability Testing:
- Is the Application/Software easy to use for the end users?
- Can the end users carry out the most common tasks without considerable help?
- What is the rate of ‘Ease of Learning’ and ‘Speed of task completion’?
- Will the end user be satisfied while using this application?
- Is the application in line with current Industry Standards?
We conduct Usability testing which helps in identification of the difficulties a user may face while using the application, the time taken to complete tasks, and the likely satisfaction level of a user with the application. Our team starts with setting the test environment, and then comes test moderation and finally the compilation and summary of observations. The Usability Report publishes to the client consisting of testing results after compilation and recommendations. Our team members also review the recommendations with the client.
Usability Evaluations via Real Users
Usability evaluation principals are defined to help development teams to observe the end user's perspective to the application. Our analysis team understands ease of navigation through you application to improve the repeated visitors to your website or acceptance ratio of your application. Set of people evaluate the application based on user actions, aim to use the application, end point of application and feedback based evaluation. It is very important for an application developer/designer to know where the real time users are looking when they first come to the application. This would provide guidance towards the client expectation from the application.
GUI Testing
GUIs have become the established alternative to traditional forms-based user interfaces. GUIs are the assumed user interface for virtually all systems development using modern technologies. There are several reasons why GUIs have become so popular:
- GUIs provide the standard look and feel of a client operating system.
- GUIs are so flexible that they can be used in most application areas.
User Acceptance Testing:
User Acceptance Testing is often the final step before rolling out the application.
Usually the end users who will be using the applications test the application before ‘accepting’ the application.
This type of testing gives the end users the confidence that the application being delivered to them meets their requirements.
This testing also helps nail bugs related to usability of the application
Hitech’s domain knowledge has led us to work with client’s right from the Requirement Definition stage and to effectively participate and manage the user acceptance testing process
User Acceptance Testing – Prerequisites:
The application is fully developed before the User Acceptance testing can be done.
Various levels of testing (Unit, Integration and System) are already performed on the application so most of the technical bugs have already been fixed before UAT.
What to Test?
During this type of testing the specific focus is the exact real world usage of the application. The Testing is done in an environment that simulates the production environment.
How to Test?
The user acceptance testing is usually a black box type of testing. In other words, the focus is on the functionality and the usability of the application rather than the technical aspects. It is generally assumed that the application would have already undergone Unit, Integration and System Level Testing.
Advantages to Business:
- Track Record of Handling several projects from different domains
- Rich experience in Domain Knowledge
- To reduce the Risk and improve Customer Satisfaction
- Well expertise in Coordination with Application Development Team & Change Management to understand functionality being delivered to testing for each release
- Track progress of testing on a daily basis and provide statistics to Business.
- Ensure deliverables are completed as per agreed schedules
Domain Expertise
Application Areas
Our Testing Services are spread across multiple domains including:
- Web Applications
- Desktop Application
- B2B and B2C Portal Testing
- E-Commerce Applications
- ERP applications
Technology Expertise:
The Testing Services extend across following platforms:
- Windows & MS Technologies-.Net
- PHP , MYSQL
- ASP, JAVA, SQLServer
Tools Expertise
Hitech Outsourcing services has strong skills & expertise in open-source test tools and industry standard tools to support your manual testing and test automation efforts.
Defect logging and tracking and Analysis- Mantis, Bugzilla
Test Deliverables:
Contact us to get more information about our custom software testing solution, software testing methodology and software test life cycle porcess.