Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Software testing definition


Published on

Some Software Testing Definition

Published in: Technology, Education
  • Be the first to comment

Software testing definition

  1. 1. There are basic six type of testing 1. Unit Testing 2. Integration testing 3. Functional and system testing I ) Stress testing II ) Performance testing III) Usability testing 4. Acceptance testing 5. Regression testing 6. Beta testingI will explain only the major type of testing which are in the newevaluation form. 1
  2. 2. Failover Tests verify of redundancy mechanismswhile the system is under load.For example, in a web environment, failover testingdetermines what will happen if multiple web serversare being used under peak anticipated load and one ofthem dies and then how the remaining servers take theresponsibilities. 2
  3. 3. Checking the application on different platforms(Operating System) with different browsers, the mainaim of compatibility testing is to test weatherapplication can run successfully on different OS. 3
  4. 4. Usability Testing is nothing but the application is user friendly or not. i.e. easyto use and easy to operate.we will check font size, font color, back color, tables, borders etcIn a simple word, UT means to test how simple the application to use 4
  5. 5. Recovery testing means how our application softwarerecovers from abnormalities, such as application crashesWhenever an error occurs the application is recover fromerror properly and run remaining functionality properly 5
  6. 6. Recovery testing on TV means how our televisionrecovers from abnormalities like improper powersupply, voltage problems etc. 6
  7. 7. During the installation testing we validate thatwhether the Navigation, Path, Steps are provided toinstall the software end user successfully or notDuring uninstall whether the installation wizard isprovided to uninstall the software successfully 7
  8. 8. Security testing is a process to determine that an informationsystem protects data and maintains functionality as intended.It confirms that the program can restrict access to authorizedpersonnelThe authorized personnel can access the functions available totheir security level. 8
  9. 9. End to end testing is nothing but testing theapplication starting from scratch to the end afterintegrated all the modules.E2E is almost like UAT with an exception that it is doneby testers. 9
  10. 10. End to end testing means from the staring point to endpoint of testing of one s/w build.All the user interface testing, functional testing & non-functional testing is comes under this end to end testing. 10
  11. 11. Black box testing is testing that ignores the internalmechanism of a system or component and focuses solelyon the outputs generated in response to selected inputsand execution conditions.Black box testing also called functional testing andbehavioral testing 11
  12. 12. Black box testing attempts to find errors in the externalbehavior of the code in the following categories (1) Incorrect or missing functionality;(2) Interface errors; (3) Errors in data structures used by interfaces;(4)Behavior or performance errors; and (5) Initialization and termination errors.Through this testing, we can determine if the functionsappear to work according to specifications. 12
  13. 13. With black box testing, the software tester does not (or shouldnot) have access to thesource code itself.The code is considered to be a “big black box” to the testerwho can’t see inside the box.The tester knows only that information can be input into tothe black box, and the black box will send something back out.Based on the requirements knowledge, the tester knows whatto expect the black box to send out and tests to make sure theblack box sends out what it’s supposed to send out 13
  14. 14. A black-box test takes into account only the input andoutput of the software without regard to the internal codeof the program. 14
  15. 15. unit testing is a method by which individual units ofsource code are tested to determine if they are fit for use.A unit is the smallest testable part of an application. In procedural programming a unit may be anindividual function or procedure. Unit tests are created by programmers or occasionallyby white box testers. 15
  16. 16. The goal of unit testing is to isolate each part of the program andshow that the individual parts are correctThe tester will write some test code that will call a method withcertain parameters and will ensure that the return value of thismethod is as expected.Looking at the code itself, the tester might notice that there is abranch (an if-then) and might write a second test case to go downthe path not executed by the first test case.For example carefully observe the example of white box testing 16
  17. 17. White-box testing is testing that takes into account theinternal mechanism of a system or ComponentWhite-box testing is also known as structural testing,clear box testing, and glass box testingThe connotations of “clear box” and “glassbox” appropriately indicate that you have full visibilityof the internal workings of the software product,specifically, the logic and the structure of the code. 17
  18. 18. White box testing is used in three of the six basictypes of testing: unit, integration, and regressiontestingYou must be ensured that your test cases executeevery line of the code. 18
  19. 19. Basis Path Testing:We do this using a metric called the cyclomatic number whichis based on graph theory. The easiest way to compute thecyclomatic number is to count the number ofconditionals/predicates (diamonds) and add 1.Suppose the example If a player lands on a property owned by other players, heor she needs to pay the rent. If the player does not haveenough money, he or she is out of the game. If theproperty is not owned by any players, and the player hasenough money buying the property, he or she may buy theproperty with the price associated with the property 19
  20. 20. Look at the flow graph: 20
  21. 21. . In our example above, there are five conditionals. Therefore, ourcyclomatic number is 6, and we have six independent pathsthrough the code. We can now enumerate them:1. 1-2-3-4-5-10 (property owned by others, no money for rent)2. 1-2-3-4-6-10 (property owned by others, pay rent)3. 1-2-3-10 (property owned by the player)4. 1-2-7-10 (property available, don’t have enough money)5. 1-2-7-8-10 (property available, have money, don’t want to buyit)6. 1-2-7-8-9-10 (property available, have money, and buy it) 21
  22. 22. #include<stdio.h>float avg(float a, float b);//if a>b call avgfloat sum(float a, float b);// if a=b call sum()float max(float a, float b);//if a!=b call max()float avg(float a, float b){float f; f = (a + b)/2; return f; }float sum(float a, float b){ float sum=a+b; return sum; }float max(float a, float b) { float max; if(a>b) { max=a; return max; }Else return b; }void main(){float a,b; float average=0; float sum1=0; float max1; scanf("%f",&a); scanf("%f",&b);if(a>b){ float average = avg(a,b); printf("n The average value=%.2fn",average); }else if(a==b) { sum1 = sum(a,b); printf("n The sum value=%.2fn",sum1); }else if(a<b) { max1 = max(a,b); printf("n The maximum value=%.2fn",max1); }} 22
  23. 23. For test case 1: a=2.3, b= 6.3Total Line =49Line coverage = 18/49 *100%( 36.7% )Total function(method) =3But test case covers only 1 function (max)So method coverage=1/3*100% ( 33.33% ) 23
  24. 24. Total Branch( decision point) = 8 , Test case covers only 5 branchSo branch coverage = 4/8*100% ( 50%) Pridicate True false a>b false a==b false a<b true a>b(within max function) falseSo for this test case can not cover the whole code so it is cannot bewhite box testing for this program but it can be unit testing for this.For white box testing of the program you have generate more test caseso that every line and every condition will be executedTest case 2: A= 6.3 and b=2.3Test case 3: A= 6.3 and b= 6.3These three test case will executed every line of the program so you canclaim that you perform white box testing of the program 24
  25. 25. Integration test is testing in which softwarecomponents, hardware components, or both arecombined and tested to evaluate the interactionbetween them [11]. Using both black and white boxtesting techniques, the tester (still usually the softwaredeveloper) verifies that units work together when theyare integrated into a larger code base 25
  26. 26. Using black box testing techniques, testers examine the high-level design and the customer requirements specification to planthe test cases to ensure the code does what it is intended to do. Functional testing involves ensuring that the functionalityspecified in the requirement specification works.System testing involves putting the new program inmany different environments to ensure the program works intypical customer environments with various versions and typesof operating systems and/or applications.System testing is testing conducted on a complete, integratedsystem to evaluate the system compliance with its specifiedrequirements 26
  27. 27. Stress testing – testing conducted to evaluate asystem or component at or beyond the limits of itsspecification or requirement .For example, if the team is developing software to runcash registers, a non-functional requirement mightstate that the server can handle up to 30 cash registerslooking up prices simultaneously.Stress testing might occur in a room of 30 actual cashregisters running automated test transactionsrepeatedly for 12 hours. 27
  28. 28. Acceptance testing is formal testing conducted todetermine whether or not a system satisfies itsacceptance criteria (the criteria the system must satisfyto be accepted by a customer) and to enable thecustomer to determine whether or not to accept thesystem 28
  29. 29. Regression testing is selective retesting of a system orcomponent to verify that modifications have not causedunintended effects and that the system or component stillcomplies with its specified requirements . Regression tests are a subset of the original set of testcases. These test cases are re-run often, after any significantchanges (bug fixes or enhancements) are made to the code.The purpose of running the regression test case is to makea “spot check” to examine whether the new code worksproperly and has not damaged any previously-workingfunctionality by propagating unintended side effects 29
  30. 30. When an advanced partial or full version of asoftware package is available, the developmentorganization can offer it free to one or more (andsometimes thousands) potential users or beta testers.These users install the software and use it as theywish, with the understanding that they will report anyerrors revealed during usage back to the developmentorganization. 30