=> • It is a black box testing design technique based on test cases. it is used to see is there is bug present at boundary of input domain • BVA helps to test within the boundaries of both valid and invalid inputs of input field partition • It comes under stress and negative testing Advantages – 1. BVA technique is easy to use and remember due automated nature of this technique 2. Test cases generated through BVA are very small 3. Test cases procedure and guidelines are crystal clear and easy 4. It is best in revealing user input errors in software Disadvantages – 1. This technique fails to test all input and results are unsure 2. This technique fails in testing Boolean variables 3. It only works well with independent variable that describes quantity
Q.2) explain robust boundary value testing
=> • In robust value testing software is tested by giving invalid value inputs • https://www.youtube.com/watch?v=gvoT34NJHEk • Total test cases = (number of variables * number of testing point without nominal) +1 Q.3) explain worst boundary value testing => • Test cases = A*A where A is number of testing points • https://www.youtube.com/watch?v=t7blZuKBRZY&t=148s Q.4) what is special value testing => • This testing verifies whether each function of software application operates in given set of standard or rules with required specification • Each functionality is tested by providing appropriate input, verifying and comparing actual result with expected once • Testing is based on past experiences which validates that no bug or left undetected • It is Ad-hoc in nature and there are no guidelines for the tester • Tester are extremely knowledgeable and use this information to carry put testing Disadvantages – • It is highly dependent on abilities of tester • Finding extremely knowledgeable tester is difficult for SVA Q.5) what is random testing or monkey testing => • In this type of testing user test application by providing random inputs • It is black box testing which is performed when there is no time to write and execute the test Advantages – • This testing is easy to setup and execute • It does not require skilled tester • It is great technique to test reliability of software • This is extremely cost effective Disadvantages – • Testing is highly random so its impossible to find exact path of bug or recreate bug • It is very difficult and time consuming to find expected cause of issue found during testing • There is no predefined test path or testing process path • Tester cannot assure the accuracy of test cases
Q.6) what is equivalence class testing and its features
=> • equivalence class testing helps the tester team in getting accurate and expected result in limited time period while covering large input scenarios • it is also termed as logical step in model of functional testing and they are used to test software product into different classes Features - • it is a black-box testing which restricts or stops the tester from externally examining software product • it is used in form groups of test field with similar nature • these are based on classes so they reduce number test cases required for testing • it works well when input is available in terms of intervals and set of discrete values • they do not work well with Boolean and logical types of variables • the mix combination on ECT and BVT gives effective result Q.7) explain types of equivalence class testing => they are classified into four type – • Weak normal ECT – in this one variable from each equivalence class is tested by team and its values are identified in systematic manner also known as single fault assumption • String normal ECT - the team selects test cases from each element of the Cartesian product of the equivalence also called multiple fault assumption • Weak robust ECT – it is same is Weak normal ECT just it focuses on testing test cases for invalid inputs • Strong robust ECT – it produces test cases for both valid and invalid elements of product it does not reduce redundancy in testing Q.8) explain advantages and disadvantages of ECT => advantages – • It helps to reduce number of test cases without affecting test coverage • Reduces test time and minimize set of test data] • It can be used in all types of testing like unit and integration testing • It helps tester to focus on small data set thereby finds more defects Disadvantages – • It does not have condition for boundary values • It needs skilled tester to find equivalence class Q.9) Differentiate between ECT and BVA => ECT BVA It is type of black box testing It is next step of ECT It can be used in any level of testing It is part of stress and negative like unit and integration testing Test case technique used to divide Used to test boundary value between input data into different classes partition Reduces time of testing using Reduces overall time of test effective test cases execution Test only one from each partition of Selects test cases form edge of EC EC
Q.10) what is decision table testing
=> • It is also known as cause-and-effect table. it is combination different inputs in a line with their outputs • It is used to implement logic by embedding them with codes and logic • https://www.youtube.com/watch?v=jlbH9Wm0Z9U • It is black box test design technique to determine test cases for complex business logic • It helps tester to search effect of combination different inputs and software states that implements business rules • Provides easy of stating complex business logic it also allows tester to test all possible combinations Q.11) explain cause and effect graphing => • Cause Effect Graphing based technique is a technique in which a graph is used to represent the situations of combinations of input conditions • Cause-effect graphing technique is used because boundary value analysis and equivalence class partitioning methods do not consider the combinations of input conditions. • It has ability to identify defects that are hidden by other thing • Starting point of cause-and-effect graph is documentation that defines what system is supposed to do 1. Identity Function: if c is 1, then e is 1. Else e is 0.
2. NOT Function: if c is 1, then e is 0. Else e is 1.
3. OR Function: if c1 or c2 or c3 is 1, then e is 1. Else e is 0.
4. AND Function: if both c1 and c2 and c3 is 1, then e is 1. Else e is
0. • It Helps us to determine the root causes of a problem or quality using a structured approach. • It Uses an orderly, easy-to-read format to diagram cause-and-effect relationships. • It Indicates possible causes of variation in a process. • It Identifies areas, where data should be collected for further study. Q.12) explain DD path testing => • The best-known form of code-based testing is based on decision-to - decision path (DD-path) • Miller’s words, begins with the “outway” of a decision statement and ends with the “inway” of the next decision statement. • these paths are called chains, where a chain is a path in which the initial and terminal nodes are distinct, and every interior node has indegree = 1 and outdegree = 1. Definition A DD-path is a sequence of nodes in a program graph such that Case 1: It consists of a single node with indeg = 0. Case 2: It consists of a single node with outdeg = 0. Case 3: It consists of a single node with indeg ≥ 2 or outdeg ≥ 2. Case 4: It consists of a single node with indeg = 1 and outdeg = 1. Case 5: It is a maximal chain of length ≥ 1. Q.13) explain basis path testing => • path testing is executed by team during software testing lifecycle that helps team to find structural aspects of product that enables team to guarantee quality of product • it requires complete knowledge of program structure • it is white box testing technique that helps team to find internal flow of software product • used to find large quantities of defects during unit testing • used to unit test the code of software product • there are three path testing techniques 1. control flow chart – it involves representing the program in form of control chart it involves links, edges, regions 2. DD path – refer above question Q.12 3. Basic path testing – refer above question Q.13
Q.14) explain advantages and disadvantages of path testing
=> advantages – • It mainly focuses on program logic • Allow tester to find flow of program during testing process • It is highly dependent on source code of program • Ensures execution of each and every path present in software Disadvantages – • Due to error in specification presence of defects cannot be detected during path testing • It requires expert and skilled testers having in-depth knowledge of programming and code • It is difficult to test all path when product is more complex Q.15) explain data floe testing and its types => • It focuses on data variables and their values used in software product using control floe graph • It is form of white box and structural type testing used to fill gaps between path testing and branch testing • Its intension is to reveal coding errors and mistakes Life cycle – it goes from 3 phases • Definition – data variables are defined, created and initialized • Usages – declared variable can be used in programming code in two forms predicate and computational • Deletion or kill – memory allocated to variable is freed and used for other process Types – • Statis data flow testing – in this code analysis is done without performing actual execution of code • Dynamic data flow testing – it involves execution of code to monitor and observe immediate result. It consist of identification of d-u pairs, detecting feasible path between each definition and usages pair and creating set of test cases Q.16) explain data-flow testing coverage => it is classified under five types – • All definition coverage – sub path from each definition to some of their respective use • All definition C-use coverage - sub path from each definition to all their respective c use • All definition P-use coverage - sub path from each definition to all their respective P use • All use coverage - sub path from each definition to every respective use • Al definition use coverage – simple sub path from each definition to every respective use Q.17) explain program slicing and its tools => • It is program analysis technique used during debugging and reengineering • It disables all parts of program that currently of no use • Programmer clicks on statement and program slicer highlights all program statements that produce wrong value • Relationship between variable definitions and variable usages is known Tools – • Code surfer is commercial tool for performing static slicing on c programs • Indus is for static code slicing in java • Oberon slicing tool