Software testing is a process for the evaluation of the functionality of a software application with the intent of determining whether or not the software developed meets specified requirements and identifying defects to ensure that the product is free of defects so a quality product can be produced.

According to ANSI/IEEE 1059 standard – A process of analyzing a software item to detect the differences between existing and required conditions (i.e., defects) and to evaluate the features of the software item.

Why do we need Software Testing?

Because this allows us to ensure that our work is being done correctly and it is delivering the expected results, like, who wants a software that doesn’t work or that it doesn’t do what it is supposed to, after all the testing is the process or group of processes that checks how everything is working, every button, every page, every interface, it all needs testing.

And what if there is no software testing in the software development process?

Everything is changing rapidly and no one wants to be left behind, our lives are improving and we count on technology everyday, so think about this: we access our bank online, we do shopping online, we order food online, and many more, now what if these systems turn out to be defective. We all know that one small bug shows a huge impact on business in terms of financial loss and goodwill.

Some of the reasons why testing has become a very significant and integral part of the field of information technology are as follows:

  1. Cost-effectiveness
  2. Customer Satisfaction
  3. Security
  4. Product Quality
Software Testing and Methodologies | by Miktad Öztürk | The Startup | Medium

Testing Team

Test Manager: The test manager is hired when there are many testing groups. The number of testers and testing groups depends on the software testing workload. The test manager has below major roles:

  • Prepares test strategy
  • Prepare the test budget
  • Define test levels and test cycles
  • Develop strategy for estimating test effort
  • Develop strategy for test documentation, metrics and reporting
  • Guides and controls the testing teams

Test Leader: The test leader performs the roles of test manager in absence of test manager. In addition to that, test leader roles and responsibilities are listed below:

  • Prepare the test plan at each test level based on test strategy
  • Define the objectives, test items, approaches, risk, contingencies in testing process
  • Assign roles and provide schedule to testers
  • Identify the test specifications test activities for testers
  • Gather metrics and track the testing progress
  • Define entry and exit criteria

Testers (themselves): The testers group can comprise of entry level testers, senior testers, performance testers, automation testers and testers performing specific tests. Some of the responsibilities of a typical tester are listed below:

  • Gather the test requirements
  • Review the project documents to understand the requirements and identify the errors
  • Assist the test lead to prepare the test plan
  • Create the test documents like traceability matrix, test data and test cases
  • Set up and verify the test environment
  • Test the software at different levels and record the results
  • Identify, report and track the defects


Test Case Design Technique

Following are the typical design techniques in software engineering:

1. Deriving test cases directly from a requirement specification or black box test design technique. The Techniques include:

  • Boundary Value Analysis (BVA)
  • Equivalence Partitioning (EP)
  • Decision Table Testing
  • State Transition Diagrams
  • Use Case Testing

2. Deriving test cases directly from the structure of a component or system:

  • Statement Coverage
  • Branch Coverage
  • Path Coverage
  • LCSAJ Testing

3. Deriving test cases based on tester’s experience on similar systems or testers intuition:

  • Error Guessing
  • Exploratory Testing

References

Faculty, P. S. (2018, March 29). DIFFERENT ROLES IN A SOFTWARE TESTING TEAM. H2kinfosys Blog. https://www.h2kinfosys.com/blog/different-roles-software-testing-team/

Test Case Design Technique – Tutorialspoint. (n.d.). TutoPoint. Retrieved November 30, 2020, from https://www.tutorialspoint.com/software_testing_dictionary/test_case_design_technique.htm

R. (2020, November 28). What Is Software Testing | Everything You Should Know. Software Testing Material. https://www.softwaretestingmaterial.com/software-testing/

Dejar un comentario

Diseña un sitio como este con WordPress.com
Comenzar