--- Video Title: Black Box Testing Description: Black Box Testing Watch more Videos at https://www.tutorialspoint.com/videotutorials/index.htm Lecture By: Mr. Arnab Chakraborty, Tutorials Point India Private Limited --- In this session, we are discussing black box testing. In case of black box testing, the tester will not have any access over the software coding. So, as a result of that, the tester cannot view the code, cannot access the code of the program. So, there is no question of changing the code, only the tester can access the inputs and the respective outputs obtained after being processed. So, that is the basic theme behind this black box testing. So, it actually tests the behavior of the system. So, it is carried out to test functionality of the program and also called behavioral testing. The tester in this case has a set of input values and respective desired results. And on providing input, if the output matches with the desired results, the program is tested ok. And otherwise, it will be treated as it is having some problems. So, here you can see that this is our respective software. We have made it that one shaded only to show you, only to visualize that this particular coding, whatever the constructs we have used, what is the software design we have used. It has been kept hidden from the tester. So, tester can put some inputs, it will get processed and the outputs will be obtained. And this particular output which will be obtained from the software will be matched with the desired output list. And if they are matching, then the software is ok. Otherwise, the software is having some problems and problematic errors. So, in this testing method, the design and the structure of the code are not known to the tester. And testing engineers and the end users conduct this test on the software. So, testing users and also the end users who are not having the access over the code can conduct such testing process. So, black box testing techniques. So, first one we are going to discuss that is the equivalent class. The input is divided into similar classes. And if one element of a class passes the test, it is assumed that all the class, the full class is passed. So, that is here the inputs will be divided into multiple different classes. Now, one class representative input, if it passes the test, that means all the values in that class have passed. Next one is our boundary values. The input is divided into higher and the lower end values. So, if this values pass the test, it is assumed that all the values in between falling may also pass too. So, that means here we are considering the highest value and the lowest value of that particular input set. And if this boundary values are passing, passing means what means the output what will be generated by the software is matching with the desired output. That means, the quality is ok. So, the testing has been done successfully. Then we can assume that all the values which will be falling in between this higher and the lower limit values. So, for them also the testing will be ok for us. Next one is our cause and effect graphing. In both previous methods, only one input value at a time is getting tested. So, cause means input, effect means output is a testing technique where combinations of input values are tested in a systematic way. So, here combination of certain input values will be given and according to the system will be tested. But in the earlier cases, we are considering that one of the values from the class. So, values which are the lower and upper limits of the input values. So, they are only getting tested not the all values. But here you can see we are having the combination of multiple input values and the system will be tested on them. So, the next one is our pair wise testing. The behavior of software depends on multiple parameters. So, in pair wise testing, the multiple parameters are tested pair wise for their different values. So, a particular module may be having multiple inputs. So, in case of pair wise testing, we shall do the multiple pairs. Pair wise inputs will be given to the software and the outputs will be verified. Next one is our state based testing. The system changes state on provision of input. So, these systems are tested based on the states and the input. We know that whenever inputs will be given, we are having some conditions, we are having some branching instructions will be there. So, the condition may be true, the condition may be false. When the condition will be true, then system will be going to a separate different state. When the condition will be false, then also the system will be going for different So, as a result of that, depending upon the inputs, the state of the system is getting changed. So, now what will happen in case of state-based testing? We shall do the testing on this particular system at its different states. So, in this way, we have discussed what is the black box testing, what are the different merits and demerits, and what are the different types of this kind of testing can be carried out. Thanks for watching this video.