Question

In: Computer Science

What is the general principle behind software testing? Explain.

What is the general principle behind software testing? Explain.

Solutions

Expert Solution

Software Testing:

Software testing is the process of removing bugs from the software in order to function efficiently and as per the final requirement. We need to resolve the issues with the sodtware being built hence testing is required to test the working of software. Testing team is appointed for the testing of the software. Suppose we are making a mobile game application, Now when we start making the application, we need to step by step see the functionality of the game. Like, the functioning of the game on various operating systems, working on phones with low RAM etc. Now if these issues are resolved, then we may get some more issues. Like consider a game of shooting, suppose we get an error while having multi-player format, then testing is done to check what type of errors we are getting and then make the updates and changes in the code.

Need of software testing:

  1. Tesing exposes the lacks in software, errors, time equation, support on various platforms. When the software is tested in cycles from the start to end, we have finalized product as per the requirement.
  2. Testing improves the security of the software and makes if safer.It reduces the vulnerability of the software.
  3. Cost of the software product is reduced as the testing process ensures testing from the start of the product development life-cycle.
  4. Testing helps in finalizing the product for release and helps in taking the end user in our confidence.

Version release: You know we get updates of the softwares we use like YouTube, FaceBook, media player etc. The new versions are realised by solving the issues of earlier versions. If you check the info of the new version, you will find the list of issues resolved.

Principles of software testing:

There are seven principles of software testing :

  1. Exhaustive Testing: Every software is teeted on the main functionality. But exhaustive testing means that the testing of all the possibities, all the inputs, performance checking etc. This increases the time, cost, team member requirement, reasearch etc. It is good to try to test the main functions of the software, but practically impossible to test the software on all fronts. Example :Suppose we are making an Onilne Ide for Java language, it is impossible to test for every exception, error, and input, output of the java language program.
  2. Presence of defects: Testing shows presence of defects in the software system and also shows how the software performs. As we test the defects are exposed. On the contrary testing doesn't gurantee that the defects are over and the software is perfect for use.
  3. Early Testing : The software testing begins from the start of the software building cycle. Thus it reduces the effort if we compare software testing only after completion of the product.
  4. Defect Clustering: The project is divided into modules. Certain modules have large number of defects. Thus defect clustering states that we can identify the defective modules who cause large number of errors and make changes in them accordingly. Proper planning is required for the defect clustering. Pareto principle states that 80 percent of defects are due to 20 percent of code.
  5. Pesticide paradox : The same test cases used always result in not finding the new issues. Therefore change in test cases accordingly are needed as per the timley requirements.
  6. Context Dependancy: The testing is always done on the same context as the application being built. The texting depends on the type of the software being built. Like we can not use testing of gaming application on testing of media player application.
  7. Absence of error: Along with resolving of issues and bugs, the software should be of use to the end user, If the software has no use even though it is bug free, then that will not be accpeted by the end user.

Conclusion: Software testing is done for making the application as feasible as possible to the end user. It is a tool used in accordance with the development to solve the problems and satisfy the end user before hand.


Related Solutions

what is the principle behind salt fractionation of proteins
what is the principle behind salt fractionation of proteins
what are unidirectional magnetic moments? and what is the principle behind them.
what are unidirectional magnetic moments? and what is the principle behind them.
What is the underlying principle behind the hardy-Cross Method
What is the underlying principle behind the hardy-Cross Method
Describe the principle behind the working of a motor and the generator?Then, explain the “motor- generator...
Describe the principle behind the working of a motor and the generator?Then, explain the “motor- generator duality”
1. Describe the general principle of and sources of error associated with CLIA-waived testing of hematocrit...
1. Describe the general principle of and sources of error associated with CLIA-waived testing of hematocrit procedures 2. Describe (compare and contrast) the disorders diagnosed or monitored with laboratory coagulation testing 3. Explain how the prothrombin test and INR calculation are used together to monitor coagulations status for a patient. 4. Evaluate the use of platelet counts in coagulation testing
What do we mean by “efficient markets”? Explain the idea behind testing for market efficiency
What do we mean by “efficient markets”? Explain the idea behind testing for market efficiency
Explain the importance and conceptual idea behind Heisenberg’s Uncertainty Principle. What would a speed of 6x10^6...
Explain the importance and conceptual idea behind Heisenberg’s Uncertainty Principle. What would a speed of 6x10^6 m/s +/- 1% mean?
In Software engineer, Technical testing metrics fall into two major categories. What are they? explain in...
In Software engineer, Technical testing metrics fall into two major categories. What are they? explain in detail.
What is the principle behind the velocity measurement of fuid? What is static pressure? 7. What...
What is the principle behind the velocity measurement of fuid? What is static pressure? 7. What is flow rate? How to measure the flow rate? How to determine the volmne flow rate for given meter type, fluid characteristics, pressure measurement, temperature and pipe size?
What is hypothesis testing? Explain the general process and the steps included in conducting a hypothesis...
What is hypothesis testing? Explain the general process and the steps included in conducting a hypothesis test? What is the difference between parametric and nonparametric hypothesis testing?
ADVERTISEMENT
ADVERTISEMENT
ADVERTISEMENT