HawksCode Softwares Pvt. Ltd
COURSE DETAIL

Software testing is an investigation conducted to provide stakeholders with information about the quality of the product or service under test. Software testing can also provide an objective, independent view of the software to allow the business to appreciate and understand the risks of software implementation. Test techniques include, but are not limited to, the process of executing a program or application with the intent of finding software bugs (errors or other defects).

It involves the execution of a software component or system to evaluate one or more properties of interest. In general, these properties indicate the extent to which the component or system under test:

  • meets the requirements that guided its design and development,
  • responds correctly to all kinds of inputs,
  • performs its functions within an acceptable time,
  • is sufficiently usable,
  • can be installed and run in its intended environments, and
  • achieves the general result its stakeholders desire.

As the number of possible tests for even simple software components is practically infinite, all software testing uses some strategy to select tests that are feasible for the available time and resources. As a result, software testing typically (but not exclusively) attempts to execute a program or application with the intent of finding software bugs (errors or other defects).

Software testing can provide objective, independent information about the quality of software and risk of its failure to users and/or sponsors.

 

  • Designation
  • Software Tester
  • Department
  • Quality Control
  • Line Manager
  • Senior Software Tester
  • Job Aim
  • To perform software tests to ensure quality
  • Responsibilities
  • Review of software requirements
  • Preparation of test cases
  • Execution of tests
  • Reporting of defects
  • Preparation of test reports
  • Essential Skills
  • Proficiency in written and spoken English
  • Organized
  • Detailed
  • Skeptical
  • Basic knowledge of computers
  • Teamwork

 

 

Software testing can be conducted as soon as executable software (even if partially complete) exists. The overall approach to software developmentoften determines when and how testing is conducted. For example, in a phased process, most testing occurs after system requirements have been defined and then implemented in testable programs. In contrast, under an Agile approach, requirements, programming, and testing are often done concurrently.

Testing with a Purpose

Software testing is performed to verify that the completed software package functions according to the expectations defined by the requirements/specifications. The overall objective to not to find every software bug that exists, but to uncover situations that could negatively impact the customer, usability and/or maintainabilit.

From the module level to the application level, this article defines the different types of testing. Depending upon the purpose for testing and the software requirements/specs, a combination of testing methodologies is applied. One of the most overlooked areas of testing is regression testing and fault tolerant testing.

Definition of Testing Types

Functional Testing

Module testing verifies that individual software unit performs as expected according to the requirements using a small subset of possible input parameters. At the application level, testing verifies that the entire application functions together according to the requirements. Example:

Passing in real world parameters as well as valid but unusual parameter.

Parametric Testing

At the module level, testing verifies that individual software unit performs as expected according to the requirements for the full range of valid input parameters. Example:

Passing in each parameter at its minimum, maximum and median values, as well as passing in parameters at the minimum and maximum values at the same time.

Fault Tolerant Testing

Module testing verifies that individual software unit does not perform in a detrimental or unexpected manner for illegal or out-of-range input parameters. At the application level, testing verifies that the entire application functions together in a graceful manner according to the requirements when presented with unexpected and/or out-of-range values. Example:

Passing null pointers and the full range of possible values for each parameter.

Integration Testing

Integration testing is an additional step that is used when different sub-systems are being developed simultaneously by independent developers. It verifies that the parameters passed between sub-systems are being handled correctly. Example:

Passing null pointers and the full range of possible values for each parameter.

Regression Testing

Regression testing is retesting sub-systems/modules/units to insure that modifications to one sub-system/module/unit does not cause unexpected results in another sub-system/module/unit. This is also known as ripple effect testing

 

HawksCode Softwares Pvt. Ltd
Course Number: ES 240

Online Courses

Register into various online courses, start learning, attempt quizzes and get certificated provided by India's top universities.

Start Learning Online

Career Helper

Get to know about your passion and make it your career.Get online Education in india

Get Started