Wednesday, September 24, 2008
sample paper
Sample Paper
1 Which of the following is a major task of test planning?
A Determining the test approach.
B Preparing test specifications.
C Evaluating exit criteria and reporting.
D Measuring and analyzing results.
2 Which of the following statements is MOST OFTEN true?
A Source-code inspections are often used in component testing.
B Component testing searches for defects in programs that are separately testable.
C Component testing is an important part of user acceptance testing.
D Component testing aims to expose problems in the interactions between software and hardware components.
3 In a system designed to work out the tax to be paid: An employee has £4000 of salary tax free.
The next £1500 is taxed at 10%.
The next £28000 after that is taxed at 22%.
Any further amount is taxed at 40%.
To the nearest whole pound, which of these groups of numbers fall into three DIFFERENT equivalence classes?
A £4000; £5000; £5500.
B £32001; £34000; £36500.
C £28000; £28001; £32001.
D £4000; £4200; £5600.
4 Which of the following will NOT be detected by static analysis?
A Parameter type mismatches.
B Errors in requirements.
C Undeclared variables.
D Uncalled functions.
5 Which of the following test activities can be automated? i Reviews and inspections.
ii Metrics gathering.
iii Test planning.
iv Test execution.
v Data generation.
A i, iii, iv.
B i, ii, iii.
C ii, iv, v.
D ii, iii, v.
6 Which of the following is an objective of a pilot project for the introduction of a testing tool?
A Evaluate testers’ competence to use the tool.
B Complete the testing of a key project.
C Assess whether the benefits will be achieved at reasonable cost.
D Discover what the requirements for the tool are.
7 What is the MAIN purpose of a Master Test Plan?
A To communicate how incidents will be managed.
B To communicate how testing will be performed.
C To produce a test schedule.
D To produce a work breakdown structure.
8In a REACTIVE approach to testing when would you expect the bulk of the test design work to be begun?
A After the software or system has been produced.
B During development.
C As early as possible.
D During requirements analysis.
9 What is the objective of debugging? i To localise a defect.
ii To fix a defect.
iii To show value.
iv To increase the range of testing.
A i, iii.
B ii, iii, iv.
C ii, iv.
D i, ii.
10 Given the following decision table
What is the expected result for each of the following test cases?A.TC1: Fred is a 32 year old smoker resident in London
B.TC3: Jean-Michel is a 65 year non-smoker resident in Paris
A A – Insure, 10% discount, B – Insure, no discount.
B A – Don’t insure, B – Don’t insure.
C A – Insure, no discount, B – Don’t insure.
D A – Insure, no discount, B – Insure with 10% discount.
11 Which of the following are valid objectives for testing?
i.To find defects.
ii.To gain confidence in the level of quality.
iii.To identify the cause of defects.
iv.To prevent defects.
A i,ii, and iii.
B ii, iii and iv.
C i, ii and iv.
D i,iii and iv.
12 The process of designing test cases consists of the following activities:
i. Elaborate and describe test cases in detail by using test design techniques.
ii. Specify the order of test case execution.
iii. Analyse requirements and specifications to determine test conditions.
iv. Specify expected results.
According to the process of identifying and designing tests, what is the correct order of these activities?
A iii, i, iv, ii.
B iii, iv, i, ii.
C iii, ii, i, iv.
D ii, iii, i, iv.
13 What is the main purpose of impact analysis for testers?
A To determine the programming effort needed to make the changes.
B To determine what proportion of the changes need to be tested.
C To determine how much the planned changes will affect users.
D To determine how the existing system may be affected by changes.
14Which of the following requirements would be tested by a functional system test?
A The system must be able to perform its functions for an average of 23 hours 50 mins per day.
B The system must perform adequately for up to 30 users.
C The system must allow a user to amend the address of a customer.
D The system must allow 12,000 new customers per year.
15 In a system designed to work out the tax to be paid:
An employee has £4000 of salary tax free.
The next £1500 is taxed at 10%.
The next £28000 after that is taxed at 22%.
Any further amount is taxed at 40%.To the nearest whole pound, which of these is a valid Boundary Value Analysis test case?
A £28000.
B £33501.
C £32001.
D £1500.
16 Which of the following defines the sequence in which tests should be executed?
A Test plan.
B Test procedure specification.
C Test case specification.
D Test design specification.
17 Given the following state transition
Which of the following series of state transitions below will provide 0-switch coverage?
A A, B, E, B, C, F, D.
B A, B, E, B, C, F, F.
C A, B, E, B, C, D.
D A, B, C, F, F, D.
18 Given the following decision table
What is the expected result for each of the following test cases?
A. Frequent flyer member, travelling in Business class
B. Non-member, travelling in Economy class
A A – Don’t offer any upgrade, B – Don’t offer any upgrade.
B A – Don’t offer any upgrade, B – Offer upgrade to Business class.
C A – Offer upgrade to First, B – Don’t offer any upgrade.
D A – Offer upgrade to First, B – Offer upgrade to Business class.
19 During which fundamental test process activity do we determine if MORE tests are needed?
A Test implementation and execution.
B Evaluating test exit criteria.
C Test analysis and design.
D Test planning and control.
20 What is the difference between a project risk and a product risk?
A Project risks are potential failure areas in the software or system; product risks are risks that surround the
project’s capability to deliver its objectives.
B Project risks are the risks that surround the project’s capability to deliver its objectives; product risks are
potential failure areas in the software or system.
C Project risks are typically related to supplier issues, organizational factors and technical issues; product risks
are typically related to skill and staff shortages.
D Project risks are risks that delivered software will not work; product risks are typically related to supplier issues,
organizational factors and technical issues.
21 Given the following specification, which of the following values for age are in the SAME equivalence partition?
If you are less than 18, you are too young to be insured.
Between 18 and 30 inclusive, you will receive a 20% discount.
Anyone over 30 is not eligible for a discount.
A 17, 18, 19.
B 29, 30, 31.
C 18, 29, 30.
D 17, 29, 31.
21 Considering the following pseudo-code, calculate the MINIMUM number of test cases for statement coverage, and the MINIMUM number of test cases for decision coverage respectively.
READ A
READ B
READ C
IF C>A THEN
IF C>B THEN
PRINT "C must be smaller than at least one number"
ELSE
PRINT "Proceed to next stage"
ENDIF
ELSE
PRINT "B can be smaller than C"
ENDIF
A 3, 3.
B 2, 3.
C 2, 4.
D 3, 2.
23 Which of the following is a benefit of independent testing?
A Code cannot be released into production until independent testing is complete.
B Testing is isolated from development.
C Developers do not have to take as much responsibility for quality.
D Independent testers see other and different defects, and are unbiased.
24 Which of the following tools is most likely to contain a comparator? A Dynamic Analysis tool.
B Test Execution tool.
C Static Analysis tool.
D Security tool.
25 Given the following State Table:
Which of the following represents an INVALID state transition?
A E from State S2.
B E from State S3.
C B from State S1.
D F from State S3.
26 Which of the following is a characteristic of good testing in any life cycle model?
A All document reviews involve the development team.
B Some, but not all, development activities have corresponding test activities.
C Each test level has test objectives specific to that level.
D Analysis and design of tests begins as soon as development is complete.
27 Which activity in the fundamental test process includes evaluation of the testability of the requirements and system?
A Test analysis and design.
B Test planning and control.
C Test closure.
D Test implementation and execution.
28 The following statements are used to describe the basis for creating test cases using either black or white box techniques:
i information about how the software is constructed.
ii models of the system, software or components.
iii analysis of the test basis documentation.
iv analysis of the internal structure of the components.Which combination of the statements describes the basis for black box techniques?
A ii and iii.
B ii and iv.
C i and iv.
D i and iii.
29 What is typically the MOST important reason to use risk to drive testing efforts?
A Because testing everything is not feasible.
B Because risk-based testing is the most efficient approach to finding bugs.
C Because risk-based testing is the most effective way to show value.
D Because software is inherently risky.
30 Which of the following defines the scope of maintenance testing?
A The coverage of the current regression pack.
B The size and risk of any change(s) to the system.
C The time since the last change was made to the system.
D Defects found at the last regression test run.
31 Which is the MOST important advantage of independence in testing?
A An independent tester may find defects more quickly than the person who wrote the software.
B An independent tester may be more focused on showing how the software works than the person who wrote
the software.
C An independent tester may be more effective and efficient because they are less familiar with the software
than the person who wrote it.
D An independent tester may be more effective at finding defects missed by the person who wrote the software.
32 For testing, which of the options below best represents the main concerns of Configuration Management?
i. All items of testware are identified and version controlled;
ii. All items of testware are used in the final acceptance test;
iii. All items of testware are stored in a common repository;
iv. All items of testware are tracked for change;
v. All items of testware are assigned to a responsible owner;
vi. All items of testware are related to each other and to development items.
A i, iv, vi.
B ii, iii, v.
C i, iii, iv.
D iv, v, vi.
33 Which of the following would be a valid measure of test progress?
A Number of undetected defects.
B Total number of defects in the product.
C Number of test cases not yet executed.
D Effort required to fix all defects.
34 Which of following statements is true? Select ALL correct options
Regression testing should be performed:
i once a month
ii when a defect has been fixed
iii when the test environment has changed
iv when the software has changed
A ii and iv.
B ii, iii and iv.
C i, ii and iii.
D i and iii.
35 In which of the following orders would the phases of a formal review usually occur?
A Planning, preparation, kick off, meeting, rework, follow up.
B Kick off, planning, preparation, meeting, rework, follow up.
C Preparation, planning, kick off, meeting, rework, follow up.
D Planning, kick off, preparation, meeting, rework, follow up.
36 Which of the following are valid objectives for incident reports?
i. Provide developers and other parties with feedback about the problem to enable identification, isolation and correction as necessary.
ii. Provide ideas for test process improvement.
iii. Provide a vehicle for assessing tester competence.
iv. Provide testers with a means of tracking the quality of the system under test.
A i, ii, iii.
B i, ii, iv.
C i, iii, iv.
D ii, iii, iv.
37 Consider the following techniques. Which are static and which are dynamic techniques?
i. Equivalence Partitioning.
ii. Use Case Testing.
iii.Data Flow Analysis.
iv.Exploratory Testing.
v. Decision Testing.
vi Inspections.
A i-iv are static, v-vi are dynamic.
B iii and vi are static, i, ii, iv and v are dynamic.
C ii, iii and vi are static, i, iv and v are dynamic.
D vi is static, i-v are dynamic.
38 Why are static testing and dynamic testing described as complementary?
A Because they share the aim of identifying defects and find the same types of defect.
B Because they have different aims and differ in the types of defect they find.
C Because they have different aims but find the same types of defect.
D Because they share the aim of identifying defects but differ in the types of defect they find.
39 Which of the following are disadvantages of capturing tests by recording the actions of a manual tester?
i The script may be unstable when unexpected events occur.
ii Data for a number of similar tests is automatically stored separately from the script.
iii Expected results must be added to the captured script.
iv The captured script documents the exact inputs entered by the tester.
v When replaying a captured test, the tester may need to debug the script if it doesn’t play correctly.
A i, iii, iv, v.
B ii, iv and v.
C i, ii and iv.
D i and v.
40 Which of the following is determined by the level of product risk identified?
A Extent of testing.
B Scope for the use of test automation.
C Size of the test team.
D Requirement for regression testing.
Answers
Q No Ans
1. A
2. B
3. D
4. B
5. C
6. C
7. B
8. A
9. D
10. C
11. C
12. A
13. D
14. C
15. B
16. B
17. A
18. C
19. B
20. B
21. C
22. A
23. D
24. B
25. B
26. C
27. A
28. A
29. A
30. B
31. D
32. A
33. C
34. B
35. D
36. B
37. B
38. D
39. A
40. A
1 Which of the following is a major task of test planning?
A Determining the test approach.
B Preparing test specifications.
C Evaluating exit criteria and reporting.
D Measuring and analyzing results.
2 Which of the following statements is MOST OFTEN true?
A Source-code inspections are often used in component testing.
B Component testing searches for defects in programs that are separately testable.
C Component testing is an important part of user acceptance testing.
D Component testing aims to expose problems in the interactions between software and hardware components.
3 In a system designed to work out the tax to be paid: An employee has £4000 of salary tax free.
The next £1500 is taxed at 10%.
The next £28000 after that is taxed at 22%.
Any further amount is taxed at 40%.
To the nearest whole pound, which of these groups of numbers fall into three DIFFERENT equivalence classes?
A £4000; £5000; £5500.
B £32001; £34000; £36500.
C £28000; £28001; £32001.
D £4000; £4200; £5600.
4 Which of the following will NOT be detected by static analysis?
A Parameter type mismatches.
B Errors in requirements.
C Undeclared variables.
D Uncalled functions.
5 Which of the following test activities can be automated? i Reviews and inspections.
ii Metrics gathering.
iii Test planning.
iv Test execution.
v Data generation.
A i, iii, iv.
B i, ii, iii.
C ii, iv, v.
D ii, iii, v.
6 Which of the following is an objective of a pilot project for the introduction of a testing tool?
A Evaluate testers’ competence to use the tool.
B Complete the testing of a key project.
C Assess whether the benefits will be achieved at reasonable cost.
D Discover what the requirements for the tool are.
7 What is the MAIN purpose of a Master Test Plan?
A To communicate how incidents will be managed.
B To communicate how testing will be performed.
C To produce a test schedule.
D To produce a work breakdown structure.
8In a REACTIVE approach to testing when would you expect the bulk of the test design work to be begun?
A After the software or system has been produced.
B During development.
C As early as possible.
D During requirements analysis.
9 What is the objective of debugging? i To localise a defect.
ii To fix a defect.
iii To show value.
iv To increase the range of testing.
A i, iii.
B ii, iii, iv.
C ii, iv.
D i, ii.
10 Given the following decision table
What is the expected result for each of the following test cases?A.TC1: Fred is a 32 year old smoker resident in London
B.TC3: Jean-Michel is a 65 year non-smoker resident in Paris
A A – Insure, 10% discount, B – Insure, no discount.
B A – Don’t insure, B – Don’t insure.
C A – Insure, no discount, B – Don’t insure.
D A – Insure, no discount, B – Insure with 10% discount.
11 Which of the following are valid objectives for testing?
i.To find defects.
ii.To gain confidence in the level of quality.
iii.To identify the cause of defects.
iv.To prevent defects.
A i,ii, and iii.
B ii, iii and iv.
C i, ii and iv.
D i,iii and iv.
12 The process of designing test cases consists of the following activities:
i. Elaborate and describe test cases in detail by using test design techniques.
ii. Specify the order of test case execution.
iii. Analyse requirements and specifications to determine test conditions.
iv. Specify expected results.
According to the process of identifying and designing tests, what is the correct order of these activities?
A iii, i, iv, ii.
B iii, iv, i, ii.
C iii, ii, i, iv.
D ii, iii, i, iv.
13 What is the main purpose of impact analysis for testers?
A To determine the programming effort needed to make the changes.
B To determine what proportion of the changes need to be tested.
C To determine how much the planned changes will affect users.
D To determine how the existing system may be affected by changes.
14Which of the following requirements would be tested by a functional system test?
A The system must be able to perform its functions for an average of 23 hours 50 mins per day.
B The system must perform adequately for up to 30 users.
C The system must allow a user to amend the address of a customer.
D The system must allow 12,000 new customers per year.
15 In a system designed to work out the tax to be paid:
An employee has £4000 of salary tax free.
The next £1500 is taxed at 10%.
The next £28000 after that is taxed at 22%.
Any further amount is taxed at 40%.To the nearest whole pound, which of these is a valid Boundary Value Analysis test case?
A £28000.
B £33501.
C £32001.
D £1500.
16 Which of the following defines the sequence in which tests should be executed?
A Test plan.
B Test procedure specification.
C Test case specification.
D Test design specification.
17 Given the following state transition
Which of the following series of state transitions below will provide 0-switch coverage?
A A, B, E, B, C, F, D.
B A, B, E, B, C, F, F.
C A, B, E, B, C, D.
D A, B, C, F, F, D.
18 Given the following decision table
What is the expected result for each of the following test cases?
A. Frequent flyer member, travelling in Business class
B. Non-member, travelling in Economy class
A A – Don’t offer any upgrade, B – Don’t offer any upgrade.
B A – Don’t offer any upgrade, B – Offer upgrade to Business class.
C A – Offer upgrade to First, B – Don’t offer any upgrade.
D A – Offer upgrade to First, B – Offer upgrade to Business class.
19 During which fundamental test process activity do we determine if MORE tests are needed?
A Test implementation and execution.
B Evaluating test exit criteria.
C Test analysis and design.
D Test planning and control.
20 What is the difference between a project risk and a product risk?
A Project risks are potential failure areas in the software or system; product risks are risks that surround the
project’s capability to deliver its objectives.
B Project risks are the risks that surround the project’s capability to deliver its objectives; product risks are
potential failure areas in the software or system.
C Project risks are typically related to supplier issues, organizational factors and technical issues; product risks
are typically related to skill and staff shortages.
D Project risks are risks that delivered software will not work; product risks are typically related to supplier issues,
organizational factors and technical issues.
21 Given the following specification, which of the following values for age are in the SAME equivalence partition?
If you are less than 18, you are too young to be insured.
Between 18 and 30 inclusive, you will receive a 20% discount.
Anyone over 30 is not eligible for a discount.
A 17, 18, 19.
B 29, 30, 31.
C 18, 29, 30.
D 17, 29, 31.
21 Considering the following pseudo-code, calculate the MINIMUM number of test cases for statement coverage, and the MINIMUM number of test cases for decision coverage respectively.
READ A
READ B
READ C
IF C>A THEN
IF C>B THEN
PRINT "C must be smaller than at least one number"
ELSE
PRINT "Proceed to next stage"
ENDIF
ELSE
PRINT "B can be smaller than C"
ENDIF
A 3, 3.
B 2, 3.
C 2, 4.
D 3, 2.
23 Which of the following is a benefit of independent testing?
A Code cannot be released into production until independent testing is complete.
B Testing is isolated from development.
C Developers do not have to take as much responsibility for quality.
D Independent testers see other and different defects, and are unbiased.
24 Which of the following tools is most likely to contain a comparator? A Dynamic Analysis tool.
B Test Execution tool.
C Static Analysis tool.
D Security tool.
25 Given the following State Table:
Which of the following represents an INVALID state transition?
A E from State S2.
B E from State S3.
C B from State S1.
D F from State S3.
26 Which of the following is a characteristic of good testing in any life cycle model?
A All document reviews involve the development team.
B Some, but not all, development activities have corresponding test activities.
C Each test level has test objectives specific to that level.
D Analysis and design of tests begins as soon as development is complete.
27 Which activity in the fundamental test process includes evaluation of the testability of the requirements and system?
A Test analysis and design.
B Test planning and control.
C Test closure.
D Test implementation and execution.
28 The following statements are used to describe the basis for creating test cases using either black or white box techniques:
i information about how the software is constructed.
ii models of the system, software or components.
iii analysis of the test basis documentation.
iv analysis of the internal structure of the components.Which combination of the statements describes the basis for black box techniques?
A ii and iii.
B ii and iv.
C i and iv.
D i and iii.
29 What is typically the MOST important reason to use risk to drive testing efforts?
A Because testing everything is not feasible.
B Because risk-based testing is the most efficient approach to finding bugs.
C Because risk-based testing is the most effective way to show value.
D Because software is inherently risky.
30 Which of the following defines the scope of maintenance testing?
A The coverage of the current regression pack.
B The size and risk of any change(s) to the system.
C The time since the last change was made to the system.
D Defects found at the last regression test run.
31 Which is the MOST important advantage of independence in testing?
A An independent tester may find defects more quickly than the person who wrote the software.
B An independent tester may be more focused on showing how the software works than the person who wrote
the software.
C An independent tester may be more effective and efficient because they are less familiar with the software
than the person who wrote it.
D An independent tester may be more effective at finding defects missed by the person who wrote the software.
32 For testing, which of the options below best represents the main concerns of Configuration Management?
i. All items of testware are identified and version controlled;
ii. All items of testware are used in the final acceptance test;
iii. All items of testware are stored in a common repository;
iv. All items of testware are tracked for change;
v. All items of testware are assigned to a responsible owner;
vi. All items of testware are related to each other and to development items.
A i, iv, vi.
B ii, iii, v.
C i, iii, iv.
D iv, v, vi.
33 Which of the following would be a valid measure of test progress?
A Number of undetected defects.
B Total number of defects in the product.
C Number of test cases not yet executed.
D Effort required to fix all defects.
34 Which of following statements is true? Select ALL correct options
Regression testing should be performed:
i once a month
ii when a defect has been fixed
iii when the test environment has changed
iv when the software has changed
A ii and iv.
B ii, iii and iv.
C i, ii and iii.
D i and iii.
35 In which of the following orders would the phases of a formal review usually occur?
A Planning, preparation, kick off, meeting, rework, follow up.
B Kick off, planning, preparation, meeting, rework, follow up.
C Preparation, planning, kick off, meeting, rework, follow up.
D Planning, kick off, preparation, meeting, rework, follow up.
36 Which of the following are valid objectives for incident reports?
i. Provide developers and other parties with feedback about the problem to enable identification, isolation and correction as necessary.
ii. Provide ideas for test process improvement.
iii. Provide a vehicle for assessing tester competence.
iv. Provide testers with a means of tracking the quality of the system under test.
A i, ii, iii.
B i, ii, iv.
C i, iii, iv.
D ii, iii, iv.
37 Consider the following techniques. Which are static and which are dynamic techniques?
i. Equivalence Partitioning.
ii. Use Case Testing.
iii.Data Flow Analysis.
iv.Exploratory Testing.
v. Decision Testing.
vi Inspections.
A i-iv are static, v-vi are dynamic.
B iii and vi are static, i, ii, iv and v are dynamic.
C ii, iii and vi are static, i, iv and v are dynamic.
D vi is static, i-v are dynamic.
38 Why are static testing and dynamic testing described as complementary?
A Because they share the aim of identifying defects and find the same types of defect.
B Because they have different aims and differ in the types of defect they find.
C Because they have different aims but find the same types of defect.
D Because they share the aim of identifying defects but differ in the types of defect they find.
39 Which of the following are disadvantages of capturing tests by recording the actions of a manual tester?
i The script may be unstable when unexpected events occur.
ii Data for a number of similar tests is automatically stored separately from the script.
iii Expected results must be added to the captured script.
iv The captured script documents the exact inputs entered by the tester.
v When replaying a captured test, the tester may need to debug the script if it doesn’t play correctly.
A i, iii, iv, v.
B ii, iv and v.
C i, ii and iv.
D i and v.
40 Which of the following is determined by the level of product risk identified?
A Extent of testing.
B Scope for the use of test automation.
C Size of the test team.
D Requirement for regression testing.
Answers
Q No Ans
1. A
2. B
3. D
4. B
5. C
6. C
7. B
8. A
9. D
10. C
11. C
12. A
13. D
14. C
15. B
16. B
17. A
18. C
19. B
20. B
21. C
22. A
23. D
24. B
25. B
26. C
27. A
28. A
29. A
30. B
31. D
32. A
33. C
34. B
35. D
36. B
37. B
38. D
39. A
40. A
ISTQB SAMPLE PAPER
ISTQB Sample Paper # 4
1. An input field takes the year of birth between 1900 and 2004
The boundary values for testing this field are
a. 0,1900,2004,2005
b. 1900, 2004
c. 1899,1900,2004,2005
d. 1899, 1900, 1901,2003,2004,2005
2. Which one of the following are non-functional testing methods?
a. System testing
b. Usability testing
c. Performance testing
d. Both b & c
3. Which of the following tools would be involved in the automation of regression test?
a. Data tester
b. Boundary tester
c. Capture/Playback
d. Output comparator.
4. Incorrect form of Logic coverage is:
a. Statement Coverage
b. Pole Coverage
c. Condition Coverage
d. Path Coverage
5. Which of the following is not a quality characteristic listed in ISO 9126 Standard?
a. Functionality
b. Usability
c. Supportability
d. Maintainability
6. To test a function, the programmer has to write a _________, which calls the function to be tested and passes it test data.
a. Stub
b. Driver
c. Proxy
d. None of the above
7. Boundary value testing
a. Is the same as equivalence partitioning tests
b. Test boundary conditions on, below and above the edges of input and output equivalence classes
c. Tests combinations of input circumstances
d. Is used in white box testing strategy
8. Pick the best definition of quality
a. Quality is job one
b. Zero defects
c. Conformance to requirements
d. Work as designed
9. Fault Masking is
a. Error condition hiding another error condition
b. Creating a test case which does not reveal a fault
c. Masking a fault by developer
d. Masking a fault by a tester
10. One Key reason why developers have difficulty testing their own work is :
a. Lack of technical documentation
b. Lack of test tools on the market for developers
c. Lack of training
d. Lack of Objectivity
11. During the software development process, at what point can the test process start?
a. When the code is complete.
b. When the design is complete.
c. When the software requirements have been approved.
d. When the first code module is ready for unit testing
12. In a review meeting a moderator is a person who
a. Takes minutes of the meeting
b. Mediates between people
c. Takes telephone calls
d. Writes the documents to be reviewed
13. Given the Following program
IF X < Y
THEN Statement 1;
ELSE IF Y >= Z
THEN Statement 2;
END
McCabe’s Cyclomatic Complexity is :
a. 2
b. 3
c. 4
d. 5
14. How many test cases are necessary to cover all the possible sequences of statements (paths) for the following program fragment? Assume that the two conditions are independent of each other : -
…………
if (Condition 1)
then statement 1
else statement 2
fi
if (Condition 2)
then statement 3
fi
…………
a. 2 Test Cases
b. 3 Test Cases
c. 4 Test Cases
d. Not achievable
15. Acceptance test cases are based on what?
a. Requirements
b. Design
c. Code
d. Decision table
16. “How much testing is enough?”
a. This question is impossible to answer
b. This question is easy to answer
c. The answer depends on the risk for your industry, contract and special requirements
d. This answer depends on the maturity of your developers
17. A common test technique during component test is
a. Statement and branch testing
b. Usability testing
c. Security testing
d. Performance testing
18. Statement Coverage will not check for the following.
a. Missing Statements
b. Unused Branches
c. Dead Code
d. Unused Statement
19. Independent Verification & Validation is
a. Done by the Developer
b. Done by the Test Engineers
c. Done By Management
d. Done by an Entity Outside the Project’s sphere of influence
20. Code Coverage is used as a measure of what ?
a. Defects
b. Trends analysis
c. Test Effectiveness
d. Time Spent Testing
Answers
1 c
2 d
3 c
4 b
5 c
6 b
7 b
8 c
9 a
10 d
11 c
12 b
13 b
14 a
15 a
16 c
17 a
18 a
19 d
20 c
1. An input field takes the year of birth between 1900 and 2004
The boundary values for testing this field are
a. 0,1900,2004,2005
b. 1900, 2004
c. 1899,1900,2004,2005
d. 1899, 1900, 1901,2003,2004,2005
2. Which one of the following are non-functional testing methods?
a. System testing
b. Usability testing
c. Performance testing
d. Both b & c
3. Which of the following tools would be involved in the automation of regression test?
a. Data tester
b. Boundary tester
c. Capture/Playback
d. Output comparator.
4. Incorrect form of Logic coverage is:
a. Statement Coverage
b. Pole Coverage
c. Condition Coverage
d. Path Coverage
5. Which of the following is not a quality characteristic listed in ISO 9126 Standard?
a. Functionality
b. Usability
c. Supportability
d. Maintainability
6. To test a function, the programmer has to write a _________, which calls the function to be tested and passes it test data.
a. Stub
b. Driver
c. Proxy
d. None of the above
7. Boundary value testing
a. Is the same as equivalence partitioning tests
b. Test boundary conditions on, below and above the edges of input and output equivalence classes
c. Tests combinations of input circumstances
d. Is used in white box testing strategy
8. Pick the best definition of quality
a. Quality is job one
b. Zero defects
c. Conformance to requirements
d. Work as designed
9. Fault Masking is
a. Error condition hiding another error condition
b. Creating a test case which does not reveal a fault
c. Masking a fault by developer
d. Masking a fault by a tester
10. One Key reason why developers have difficulty testing their own work is :
a. Lack of technical documentation
b. Lack of test tools on the market for developers
c. Lack of training
d. Lack of Objectivity
11. During the software development process, at what point can the test process start?
a. When the code is complete.
b. When the design is complete.
c. When the software requirements have been approved.
d. When the first code module is ready for unit testing
12. In a review meeting a moderator is a person who
a. Takes minutes of the meeting
b. Mediates between people
c. Takes telephone calls
d. Writes the documents to be reviewed
13. Given the Following program
IF X < Y
THEN Statement 1;
ELSE IF Y >= Z
THEN Statement 2;
END
McCabe’s Cyclomatic Complexity is :
a. 2
b. 3
c. 4
d. 5
14. How many test cases are necessary to cover all the possible sequences of statements (paths) for the following program fragment? Assume that the two conditions are independent of each other : -
…………
if (Condition 1)
then statement 1
else statement 2
fi
if (Condition 2)
then statement 3
fi
…………
a. 2 Test Cases
b. 3 Test Cases
c. 4 Test Cases
d. Not achievable
15. Acceptance test cases are based on what?
a. Requirements
b. Design
c. Code
d. Decision table
16. “How much testing is enough?”
a. This question is impossible to answer
b. This question is easy to answer
c. The answer depends on the risk for your industry, contract and special requirements
d. This answer depends on the maturity of your developers
17. A common test technique during component test is
a. Statement and branch testing
b. Usability testing
c. Security testing
d. Performance testing
18. Statement Coverage will not check for the following.
a. Missing Statements
b. Unused Branches
c. Dead Code
d. Unused Statement
19. Independent Verification & Validation is
a. Done by the Developer
b. Done by the Test Engineers
c. Done By Management
d. Done by an Entity Outside the Project’s sphere of influence
20. Code Coverage is used as a measure of what ?
a. Defects
b. Trends analysis
c. Test Effectiveness
d. Time Spent Testing
Answers
1 c
2 d
3 c
4 b
5 c
6 b
7 b
8 c
9 a
10 d
11 c
12 b
13 b
14 a
15 a
16 c
17 a
18 a
19 d
20 c
Thursday, September 18, 2008
QTP FAQs
Learning basics of QTP automation tool and preparation of QTP interview questions
Posted In | QTP, Questions & answers, Testing Interview questions, Automation Testing
This post is in continuation with QTP interview questions series. Following questions will help for preparing interview as well as learning the QTP basics.
Quick Test Professional: Interview Questions and answers.
1. What are the features and benefits of Quick Test Pro(QTP)?
1. Key word driven testing
2. Suitable for both client server and web based application
3. VB script as the script language
4. Better error handling mechanism
5. Excellent data driven testing features
2. How to handle the exceptions using recovery scenario manager in QTP?
You can instruct QTP to recover unexpected events or errors that occurred in your testing environment during test run. Recovery scenario manager provides a wizard that guides you through the defining recovery scenario. Recovery scenario has three steps
1. Triggered Events
2. Recovery steps
3. Post Recovery Test-Run
3. What is the use of Text output value in QTP?
Output values enable to view the values that the application talks during run time. When parameterized, the values change for each iteration. Thus by creating output values, we can capture the values that the application takes for each run and output them to the data table.
4. How to use the Object spy in QTP 8.0 version?
There are two ways to Spy the objects in QTP
1) Thru file toolbar: In the File ToolBar click on the last toolbar button (an icon showing a person with hat).
2) Thru Object repository Dialog: In Objectrepository dialog click on the button “object spy…” In the Object spy Dialog click on the button showing hand symbol. The pointer now changes in to a hand symbol and we have to point out the object to spy the state of the object. If at all the object is not visible or window is minimized then hold the Ctrl button and activate the required window to and release the Ctrl button.
5. What is the file extension of the code file and object repository file in QTP?
File extension of
Per test object rep: filename.mtr
Shared Object rep: filename.tsr
Code file extension id: script.mts
6. Explain the concept of object repository and how QTP recognizes objects?
Object Repository: displays a tree of all objects in the current component or in the current action or entire test( depending on the object repository mode you selected).
we can view or modify the test object description of any test object in the repository or to add new objects to the repository.
Quicktest learns the default property values and determines in which test object class it fits. If it is not enough it adds assistive properties, one by one to the description until it has compiled the unique description. If no assistive properties are available, then it adds a special Ordianl identifier such as objects location on the page or in the source code.
7. What are the properties you would use for identifying a browser and page when using descriptive programming?
“name” would be another property apart from “title” that we can use. OR
We can also use the property “micClass”.
ex: Browser(”micClass:=browser”).page(”micClass:=page”)
8. What are the different scripting languages you could use when working with QTP?
You can write scripts using following languages:
Visual Basic (VB), XML, JavaScript, Java, HTML
9. Tell some commonly used Excel VBA functions.
Common functions are:
Coloring the cell, Auto fit cell, setting navigation from link in one cell to other saving
10. Explain the keyword createobject with an example.
Creates and returns a reference to an Automation object
syntax: CreateObject(servername.typename [, location])
Arguments
servername:Required. The name of the application providing the object.
typename : Required. The type or class of the object to create.
location : Optional. The name of the network server where the object is to be created.
11. Explain in brief about the QTP Automation Object Model.
Essentially all configuration and run functionality provided via the QuickTest interface is in some way represented in the QuickTest automation object model via objects, methods, and properties. Although a one-on-one comparison cannot always be made, most dialog boxes in QuickTest have a corresponding automation object, most options in dialog boxes can be set and/or retrieved using the corresponding object property, and most menu commands and other operations have corresponding automation methods. You can use the objects, methods, and properties exposed by the QuickTest automation object model, along with standard programming elements such as loops and conditional statements to design your program.
12. How to handle dynamic objects in QTP?
QTP has a unique feature called Smart Object Identification/recognition. QTP generally identifies an object by matching its test object and run time object properties. QTP may fail to recognize the dynamic objects whose properties change during run time. Hence it has an option of enabling Smart Identification, wherein it can identify the objects even if their properties changes during run time.
Check out this:
If QuickTest is unable to find any object that matches the recorded object description, or if it finds more than one object that fits the description, then QuickTest ignores the recorded description, and uses the Smart Identification mechanism to try to identify the object.
While the Smart Identification mechanism is more complex, it is more flexible, and thus, if configured logically, a Smart Identification definition can probably help QuickTest identify an object, if it is present, even when the recorded description fails.
The Smart Identification mechanism uses two types of properties:
Base filter properties - The most fundamental properties of a particular test object class; those whose values cannot be changed without changing the essence of the original object. For example, if a Web link’s tag was changed from to any other value, you could no longer call it the same object. Optional filter properties - Other properties that can help identify objects of a particular class as they are unlikely to change on a regular basis, but which can be ignored if they are no longer applicable.
13. What is a Run-Time Data Table? Where can I find and view this table?
In QTP, there is data table used, which is used at runtime.
-In QTP, select the option View->Data table.
-This is basically an excel file, which is stored in the folder of the test created, its name is Default.xls by default.
14. How does Parameterization and Data-Driving relate to each other in QTP?
To data driven we have to parameterize. i.e. we have to make the constant value as parameter, so that in each interaction(cycle) it takes a value that is supplied in run-time data table. Through parameterization only we can drive a transaction (action) with different sets of data. You know running the script with the same set of data several times is not suggested, and it’s also of no use.
15. What is the difference between Call to Action and Copy Action.?
Call to Action: The changes made in Call to Action, will be reflected in the original action (from where the script is called). But where as in Copy Action , the changes made in the script ,will not effect the original script(Action)
16. Explain the concept of how QTP identifies object.
During recording qtp looks at the object and stores it as test object. For each test object QT learns a set of default properties called mandatory properties, and look at the rest of the objects to check whether this properties are enough to uniquely identify the object. During test run, QTP searches for the run time objects that matches with the test object it learned while recording.
17. Differentiate the two Object Repository Types of QTP.
Object repository is used to store all the objects in the application being tested.
Types of object repository: Per action and shared repository.
In shared repository only one centralized repository for all the tests. where as in per action for each test a separate per action repository is created.
18. What the differences are and best practical application of Object Repository?
Per Action: For Each Action, one Object Repository is created.
Shared: One Object Repository is used by entire application
19. Explain what the difference between Shared Repository and Per Action Repository
Shared Repository: Entire application uses one Object Repository , that similar to Global GUI Map file in WinRunner
Per Action: For each Action, one Object Repository is created, like GUI map file per test in WinRunner
20. Have you ever written a compiled module? If yes tell me about some of the functions that you wrote.
Sample answer (You can tell about modules you worked on. If your answer is Yes then You should expect more questions and should be able to explain those modules in later questions): I Used the functions for Capturing the dynamic data during runtime. Function used for Capturing Desktop, browser and pages.
21. Can you do more than just capture and playback?
Sample answer (Say Yes only if you worked on): I have done Dynamically capturing the objects during runtime in which no recording, no playback and no use of repository is done AT ALL.
-It was done by the windows scripting using the DOM(Document Object Model) of the windows.
22. How to do the scripting. Are there any inbuilt functions in QTP? What is the difference between them? How to handle script issues?
Yes, there’s an in-built functionality called “Step Generator” in Insert->Step->Step Generator -F7, which will generate the scripts as you enter the appropriate steps.
23. What is the difference between check point and output value?
An output value is a value captured during the test run and entered in the run-time but to a specified location.
EX:-Location in Data Table[Global sheet / local sheet]
24. How many types of Actions are there in QTP?
There are three kinds of actions:
Non-reusable action - An action that can be called only in the test with which it is stored, and can be called only once.
Reusable action - An action that can be called multiple times by the test with which it is stored (the local test) as well as by other tests.
External action - A reusable action stored with another test. External actions are read-only in the calling test, but you can choose to use a local, editable copy of the Data Table information for the external action.
25. I want to open a Notepad window without recording a test and I do not want to use System utility Run command as well. How do I do this?
You can still make the notepad open without using the record or System utility script, just by mentioning the path of the notepad “( i.e. where the notepad.exe is stored in the system) in the “Windows Applications Tab” of the “Record and Run Settings window.
Posted In | QTP, Questions & answers, Testing Interview questions, Automation Testing
This post is in continuation with QTP interview questions series. Following questions will help for preparing interview as well as learning the QTP basics.
Quick Test Professional: Interview Questions and answers.
1. What are the features and benefits of Quick Test Pro(QTP)?
1. Key word driven testing
2. Suitable for both client server and web based application
3. VB script as the script language
4. Better error handling mechanism
5. Excellent data driven testing features
2. How to handle the exceptions using recovery scenario manager in QTP?
You can instruct QTP to recover unexpected events or errors that occurred in your testing environment during test run. Recovery scenario manager provides a wizard that guides you through the defining recovery scenario. Recovery scenario has three steps
1. Triggered Events
2. Recovery steps
3. Post Recovery Test-Run
3. What is the use of Text output value in QTP?
Output values enable to view the values that the application talks during run time. When parameterized, the values change for each iteration. Thus by creating output values, we can capture the values that the application takes for each run and output them to the data table.
4. How to use the Object spy in QTP 8.0 version?
There are two ways to Spy the objects in QTP
1) Thru file toolbar: In the File ToolBar click on the last toolbar button (an icon showing a person with hat).
2) Thru Object repository Dialog: In Objectrepository dialog click on the button “object spy…” In the Object spy Dialog click on the button showing hand symbol. The pointer now changes in to a hand symbol and we have to point out the object to spy the state of the object. If at all the object is not visible or window is minimized then hold the Ctrl button and activate the required window to and release the Ctrl button.
5. What is the file extension of the code file and object repository file in QTP?
File extension of
Per test object rep: filename.mtr
Shared Object rep: filename.tsr
Code file extension id: script.mts
6. Explain the concept of object repository and how QTP recognizes objects?
Object Repository: displays a tree of all objects in the current component or in the current action or entire test( depending on the object repository mode you selected).
we can view or modify the test object description of any test object in the repository or to add new objects to the repository.
Quicktest learns the default property values and determines in which test object class it fits. If it is not enough it adds assistive properties, one by one to the description until it has compiled the unique description. If no assistive properties are available, then it adds a special Ordianl identifier such as objects location on the page or in the source code.
7. What are the properties you would use for identifying a browser and page when using descriptive programming?
“name” would be another property apart from “title” that we can use. OR
We can also use the property “micClass”.
ex: Browser(”micClass:=browser”).page(”micClass:=page”)
8. What are the different scripting languages you could use when working with QTP?
You can write scripts using following languages:
Visual Basic (VB), XML, JavaScript, Java, HTML
9. Tell some commonly used Excel VBA functions.
Common functions are:
Coloring the cell, Auto fit cell, setting navigation from link in one cell to other saving
10. Explain the keyword createobject with an example.
Creates and returns a reference to an Automation object
syntax: CreateObject(servername.typename [, location])
Arguments
servername:Required. The name of the application providing the object.
typename : Required. The type or class of the object to create.
location : Optional. The name of the network server where the object is to be created.
11. Explain in brief about the QTP Automation Object Model.
Essentially all configuration and run functionality provided via the QuickTest interface is in some way represented in the QuickTest automation object model via objects, methods, and properties. Although a one-on-one comparison cannot always be made, most dialog boxes in QuickTest have a corresponding automation object, most options in dialog boxes can be set and/or retrieved using the corresponding object property, and most menu commands and other operations have corresponding automation methods. You can use the objects, methods, and properties exposed by the QuickTest automation object model, along with standard programming elements such as loops and conditional statements to design your program.
12. How to handle dynamic objects in QTP?
QTP has a unique feature called Smart Object Identification/recognition. QTP generally identifies an object by matching its test object and run time object properties. QTP may fail to recognize the dynamic objects whose properties change during run time. Hence it has an option of enabling Smart Identification, wherein it can identify the objects even if their properties changes during run time.
Check out this:
If QuickTest is unable to find any object that matches the recorded object description, or if it finds more than one object that fits the description, then QuickTest ignores the recorded description, and uses the Smart Identification mechanism to try to identify the object.
While the Smart Identification mechanism is more complex, it is more flexible, and thus, if configured logically, a Smart Identification definition can probably help QuickTest identify an object, if it is present, even when the recorded description fails.
The Smart Identification mechanism uses two types of properties:
Base filter properties - The most fundamental properties of a particular test object class; those whose values cannot be changed without changing the essence of the original object. For example, if a Web link’s tag was changed from to any other value, you could no longer call it the same object. Optional filter properties - Other properties that can help identify objects of a particular class as they are unlikely to change on a regular basis, but which can be ignored if they are no longer applicable.
13. What is a Run-Time Data Table? Where can I find and view this table?
In QTP, there is data table used, which is used at runtime.
-In QTP, select the option View->Data table.
-This is basically an excel file, which is stored in the folder of the test created, its name is Default.xls by default.
14. How does Parameterization and Data-Driving relate to each other in QTP?
To data driven we have to parameterize. i.e. we have to make the constant value as parameter, so that in each interaction(cycle) it takes a value that is supplied in run-time data table. Through parameterization only we can drive a transaction (action) with different sets of data. You know running the script with the same set of data several times is not suggested, and it’s also of no use.
15. What is the difference between Call to Action and Copy Action.?
Call to Action: The changes made in Call to Action, will be reflected in the original action (from where the script is called). But where as in Copy Action , the changes made in the script ,will not effect the original script(Action)
16. Explain the concept of how QTP identifies object.
During recording qtp looks at the object and stores it as test object. For each test object QT learns a set of default properties called mandatory properties, and look at the rest of the objects to check whether this properties are enough to uniquely identify the object. During test run, QTP searches for the run time objects that matches with the test object it learned while recording.
17. Differentiate the two Object Repository Types of QTP.
Object repository is used to store all the objects in the application being tested.
Types of object repository: Per action and shared repository.
In shared repository only one centralized repository for all the tests. where as in per action for each test a separate per action repository is created.
18. What the differences are and best practical application of Object Repository?
Per Action: For Each Action, one Object Repository is created.
Shared: One Object Repository is used by entire application
19. Explain what the difference between Shared Repository and Per Action Repository
Shared Repository: Entire application uses one Object Repository , that similar to Global GUI Map file in WinRunner
Per Action: For each Action, one Object Repository is created, like GUI map file per test in WinRunner
20. Have you ever written a compiled module? If yes tell me about some of the functions that you wrote.
Sample answer (You can tell about modules you worked on. If your answer is Yes then You should expect more questions and should be able to explain those modules in later questions): I Used the functions for Capturing the dynamic data during runtime. Function used for Capturing Desktop, browser and pages.
21. Can you do more than just capture and playback?
Sample answer (Say Yes only if you worked on): I have done Dynamically capturing the objects during runtime in which no recording, no playback and no use of repository is done AT ALL.
-It was done by the windows scripting using the DOM(Document Object Model) of the windows.
22. How to do the scripting. Are there any inbuilt functions in QTP? What is the difference between them? How to handle script issues?
Yes, there’s an in-built functionality called “Step Generator” in Insert->Step->Step Generator -F7, which will generate the scripts as you enter the appropriate steps.
23. What is the difference between check point and output value?
An output value is a value captured during the test run and entered in the run-time but to a specified location.
EX:-Location in Data Table[Global sheet / local sheet]
24. How many types of Actions are there in QTP?
There are three kinds of actions:
Non-reusable action - An action that can be called only in the test with which it is stored, and can be called only once.
Reusable action - An action that can be called multiple times by the test with which it is stored (the local test) as well as by other tests.
External action - A reusable action stored with another test. External actions are read-only in the calling test, but you can choose to use a local, editable copy of the Data Table information for the external action.
25. I want to open a Notepad window without recording a test and I do not want to use System utility Run command as well. How do I do this?
You can still make the notepad open without using the record or System utility script, just by mentioning the path of the notepad “( i.e. where the notepad.exe is stored in the system) in the “Windows Applications Tab” of the “Record and Run Settings window.
Website Cookie Testing
Website Cookie Testing, Test cases for testing web application cookies?
Posted In | Cookie Testing, Web Testing
We will first focus on what exactly cookies are and how they work. It would be easy for you to understand the test cases for testing cookies when you have clear understanding of how cookies work? How cookies stored on hard drive? And how can we edit cookie settings?
What is Cookie?
Cookie is small information stored in text file on user’s hard drive by web server. This information is later used by web browser to retrieve information from that machine. Generally cookie contains personalized user data or information that is used to communicate between different web pages.
Why Cookies are used?
Cookies are nothing but the user’s identity and used to track where the user navigated throughout the web site pages. The communication between web browser and web server is stateless.
For example if you are accessing domain http://www.example.com/1.html then web browser will simply query to example.com web server for the page 1.html. Next time if you type page as http://www.example.com/2.html then new request is send to example.com web server for sending 2.html page and web server don’t know anything about to whom the previous page 1.html served.
What if you want the previous history of this user communication with the web server? You need to maintain the user state and interaction between web browser and web server somewhere. This is where cookie comes into picture. Cookies serve the purpose of maintaining the user interactions with web server.
How cookies work?
The HTTP protocol used to exchange information files on the web is used to maintain the cookies. There are two types of HTTP protocol. Stateless HTTP and Stateful HTTP protocol. Stateless HTTP protocol does not keep any record of previously accessed web page history. While Stateful HTTP protocol do keep some history of previous web browser and web server interactions and this protocol is used by cookies to maintain the user interactions.
Whenever user visits the site or page that is using cookie, small code inside that HTML page (Generally a call to some language script to write the cookie like cookies in JAVAScript, PHP, Perl) writes a text file on users machine called cookie.
Here is one example of the code that is used to write cookie and can be placed inside any HTML page:
Set-Cookie: NAME=VALUE; expires=DATE; path=PATH; domain=DOMAIN_NAME;
When user visits the same page or domain later time this cookie is read from disk and used to identify the second visit of the same user on that domain. Expiration time is set while writing the cookie. This time is decided by the application that is going to use the cookie.
Generally two types of cookies are written on user machine.
1) Session cookies: This cookie is active till the browser that invoked the cookie is open. When we close the browser this session cookie gets deleted. Some time session of say 20 minutes can be set to expire the cookie.
2) Persistent cookies: The cookies that are written permanently on user machine and lasts for months or years.
Where cookies are stored?
When any web page application writes cookie it get saved in a text file on user hard disk drive. The path where the cookies get stored depends on the browser. Different browsers store cookie in different paths. E.g. Internet explorer store cookies on path “C:\Documents and Settings\Default User\Cookies”
Here the “Default User” can be replaced by the current user you logged in as. Like “Administrator”, or user name like “Vijay” etc.
The cookie path can be easily found by navigating through the browser options. In Mozilla Firefox browser you can even see the cookies in browser options itself. Open the Mozila browser, click on Tools->Options->Privacy and then “Show cookies” button.
How cookies are stored?
Lets take example of cookie written by rediff.com on Mozilla Firefox browser:
On Mozilla Firefox browser when you open the page rediff.com or login to your rediffmail account, a cookie will get written on your Hard disk. To view this cookie simply click on “Show cookies” button mentioned on above path. Click on Rediff.com site under this cookie list. You can see different cookies written by rediff domain with different names.
Site: Rediff.com Cookie name: RMID
Name: RMID (Name of the cookie)
Content: 1d11c8ec44bf49e0… (Encrypted content)
Domain: .rediff.com
Path: / (Any path after the domain name)
Send For: Any type of connection
Expires: Thursday, December 31, 2020 11:59:59 PM
Applications where cookies can be used:
1) To implement shopping cart:
Cookies are used for maintaining online ordering system. Cookies remember what user wants to buy. What if user adds some products in their shopping cart and if due to some reason user don’t want to buy those products this time and closes the browser window? When next time same user visits the purchase page he can see all the products he added in shopping cart in his last visit.
2) Personalized sites:
When user visits certain pages they are asked which pages they don’t want to visit or display. User options are get stored in cookie and till the user is online, those pages are not shown to him.
3) User tracking:
To track number of unique visitors online at particular time.
4) Marketing:
Some companies use cookies to display advertisements on user machines. Cookies control these advertisements. When and which advertisement should be shown? What is the interest of the user? Which keywords he searches on the site? All these things can be maintained using cookies.
5) User sessions:
Cookies can track user sessions to particular domain using user ID and password.
Drawbacks of cookies:
1) Even writing Cookie is a great way to maintain user interaction, if user has set browser options to warn before writing any cookie or disabled the cookies completely then site containing cookie will be completely disabled and can not perform any operation resulting in loss of site traffic.
2) Too many Cookies:
If you are writing too many cookies on every page navigation and if user has turned on option to warn before writing cookie, this could turn away user from your site.
3) Security issues:
Some times users personal information is stored in cookies and if someone hack the cookie then hacker can get access to your personal information. Even corrupted cookies can be read by different domains and lead to security issues.
4) Sensitive information:
Some sites may write and store your sensitive information in cookies, which should not be allowed due to privacy concerns.
This should be enough to know what cookies are. If you want more cookie info see Cookie Central page.
Some Major Test cases for web application cookie testing:
The first obvious test case is to test if your application is writing cookies properly on disk. You can use the Cookie Tester application also if you don’t have any web application to test but you want to understand the cookie concept for testing.
Test cases:
1) As a Cookie privacy policy make sure from your design documents that no personal or sensitive data is stored in the cookie.
2) If you have no option than saving sensitive data in cookie make sure data stored in cookie is stored in encrypted format.
3) Make sure that there is no overuse of cookies on your site under test. Overuse of cookies will annoy users if browser is prompting for cookies more often and this could result in loss of site traffic and eventually loss of business.
4) Disable the cookies from your browser settings: If you are using cookies on your site, your sites major functionality will not work by disabling the cookies. Then try to access the web site under test. Navigate through the site. See if appropriate messages are displayed to user like “For smooth functioning of this site make sure that cookies are enabled on your browser”. There should not be any page crash due to disabling the cookies. (Please make sure that you close all browsers, delete all previously written cookies before performing this test)
5) Accepts/Reject some cookies: The best way to check web site functionality is, not to accept all cookies. If you are writing 10 cookies in your web application then randomly accept some cookies say accept 5 and reject 5 cookies. For executing this test case you can set browser options to prompt whenever cookie is being written to disk. On this prompt window you can either accept or reject cookie. Try to access major functionality of web site. See if pages are getting crashed or data is getting corrupted.
6) Delete cookie: Allow site to write the cookies and then close all browsers and manually delete all cookies for web site under test. Access the web pages and check the behavior of the pages.
7) Corrupt the cookies: Corrupting cookie is easy. You know where cookies are stored. Manually edit the cookie in notepad and change the parameters to some vague values. Like alter the cookie content, Name of the cookie or expiry date of the cookie and see the site functionality. In some cases corrupted cookies allow to read the data inside it for any other domain. This should not happen in case of your web site cookies. Note that the cookies written by one domain say rediff.com can’t be accessed by other domain say yahoo.com unless and until the cookies are corrupted and someone trying to hack the cookie data.
8 ) Checking the deletion of cookies from your web application page: Some times cookie written by domain say rediff.com may be deleted by same domain but by different page under that domain. This is the general case if you are testing some ‘action tracking’ web portal. Action tracking or purchase tracking pixel is placed on the action web page and when any action or purchase occurs by user the cookie written on disk get deleted to avoid multiple action logging from same cookie. Check if reaching to your action or purchase page deletes the cookie properly and no more invalid actions or purchase get logged from same user.
9) Cookie Testing on Multiple browsers: This is the important case to check if your web application page is writing the cookies properly on different browsers as intended and site works properly using these cookies. You can test your web application on Major used browsers like Internet explorer (Various versions), Mozilla Firefox, Netscape, Opera etc.
10) If your web application is using cookies to maintain the logging state of any user then log in to your web application using some username and password. In many cases you can see the logged in user ID parameter directly in browser address bar. Change this parameter to different value say if previous user ID is 100 then make it 101 and press enter. The proper access message should be displayed to user and user should not be able to see other users account.
These are some Major test cases to be considered while testing website cookies. You can write multiple test cases from these test cases by performing various combinations. If you have some different application scenario, you can mention your test cases in comments below.
Posted In | Cookie Testing, Web Testing
We will first focus on what exactly cookies are and how they work. It would be easy for you to understand the test cases for testing cookies when you have clear understanding of how cookies work? How cookies stored on hard drive? And how can we edit cookie settings?
What is Cookie?
Cookie is small information stored in text file on user’s hard drive by web server. This information is later used by web browser to retrieve information from that machine. Generally cookie contains personalized user data or information that is used to communicate between different web pages.
Why Cookies are used?
Cookies are nothing but the user’s identity and used to track where the user navigated throughout the web site pages. The communication between web browser and web server is stateless.
For example if you are accessing domain http://www.example.com/1.html then web browser will simply query to example.com web server for the page 1.html. Next time if you type page as http://www.example.com/2.html then new request is send to example.com web server for sending 2.html page and web server don’t know anything about to whom the previous page 1.html served.
What if you want the previous history of this user communication with the web server? You need to maintain the user state and interaction between web browser and web server somewhere. This is where cookie comes into picture. Cookies serve the purpose of maintaining the user interactions with web server.
How cookies work?
The HTTP protocol used to exchange information files on the web is used to maintain the cookies. There are two types of HTTP protocol. Stateless HTTP and Stateful HTTP protocol. Stateless HTTP protocol does not keep any record of previously accessed web page history. While Stateful HTTP protocol do keep some history of previous web browser and web server interactions and this protocol is used by cookies to maintain the user interactions.
Whenever user visits the site or page that is using cookie, small code inside that HTML page (Generally a call to some language script to write the cookie like cookies in JAVAScript, PHP, Perl) writes a text file on users machine called cookie.
Here is one example of the code that is used to write cookie and can be placed inside any HTML page:
Set-Cookie: NAME=VALUE; expires=DATE; path=PATH; domain=DOMAIN_NAME;
When user visits the same page or domain later time this cookie is read from disk and used to identify the second visit of the same user on that domain. Expiration time is set while writing the cookie. This time is decided by the application that is going to use the cookie.
Generally two types of cookies are written on user machine.
1) Session cookies: This cookie is active till the browser that invoked the cookie is open. When we close the browser this session cookie gets deleted. Some time session of say 20 minutes can be set to expire the cookie.
2) Persistent cookies: The cookies that are written permanently on user machine and lasts for months or years.
Where cookies are stored?
When any web page application writes cookie it get saved in a text file on user hard disk drive. The path where the cookies get stored depends on the browser. Different browsers store cookie in different paths. E.g. Internet explorer store cookies on path “C:\Documents and Settings\Default User\Cookies”
Here the “Default User” can be replaced by the current user you logged in as. Like “Administrator”, or user name like “Vijay” etc.
The cookie path can be easily found by navigating through the browser options. In Mozilla Firefox browser you can even see the cookies in browser options itself. Open the Mozila browser, click on Tools->Options->Privacy and then “Show cookies” button.
How cookies are stored?
Lets take example of cookie written by rediff.com on Mozilla Firefox browser:
On Mozilla Firefox browser when you open the page rediff.com or login to your rediffmail account, a cookie will get written on your Hard disk. To view this cookie simply click on “Show cookies” button mentioned on above path. Click on Rediff.com site under this cookie list. You can see different cookies written by rediff domain with different names.
Site: Rediff.com Cookie name: RMID
Name: RMID (Name of the cookie)
Content: 1d11c8ec44bf49e0… (Encrypted content)
Domain: .rediff.com
Path: / (Any path after the domain name)
Send For: Any type of connection
Expires: Thursday, December 31, 2020 11:59:59 PM
Applications where cookies can be used:
1) To implement shopping cart:
Cookies are used for maintaining online ordering system. Cookies remember what user wants to buy. What if user adds some products in their shopping cart and if due to some reason user don’t want to buy those products this time and closes the browser window? When next time same user visits the purchase page he can see all the products he added in shopping cart in his last visit.
2) Personalized sites:
When user visits certain pages they are asked which pages they don’t want to visit or display. User options are get stored in cookie and till the user is online, those pages are not shown to him.
3) User tracking:
To track number of unique visitors online at particular time.
4) Marketing:
Some companies use cookies to display advertisements on user machines. Cookies control these advertisements. When and which advertisement should be shown? What is the interest of the user? Which keywords he searches on the site? All these things can be maintained using cookies.
5) User sessions:
Cookies can track user sessions to particular domain using user ID and password.
Drawbacks of cookies:
1) Even writing Cookie is a great way to maintain user interaction, if user has set browser options to warn before writing any cookie or disabled the cookies completely then site containing cookie will be completely disabled and can not perform any operation resulting in loss of site traffic.
2) Too many Cookies:
If you are writing too many cookies on every page navigation and if user has turned on option to warn before writing cookie, this could turn away user from your site.
3) Security issues:
Some times users personal information is stored in cookies and if someone hack the cookie then hacker can get access to your personal information. Even corrupted cookies can be read by different domains and lead to security issues.
4) Sensitive information:
Some sites may write and store your sensitive information in cookies, which should not be allowed due to privacy concerns.
This should be enough to know what cookies are. If you want more cookie info see Cookie Central page.
Some Major Test cases for web application cookie testing:
The first obvious test case is to test if your application is writing cookies properly on disk. You can use the Cookie Tester application also if you don’t have any web application to test but you want to understand the cookie concept for testing.
Test cases:
1) As a Cookie privacy policy make sure from your design documents that no personal or sensitive data is stored in the cookie.
2) If you have no option than saving sensitive data in cookie make sure data stored in cookie is stored in encrypted format.
3) Make sure that there is no overuse of cookies on your site under test. Overuse of cookies will annoy users if browser is prompting for cookies more often and this could result in loss of site traffic and eventually loss of business.
4) Disable the cookies from your browser settings: If you are using cookies on your site, your sites major functionality will not work by disabling the cookies. Then try to access the web site under test. Navigate through the site. See if appropriate messages are displayed to user like “For smooth functioning of this site make sure that cookies are enabled on your browser”. There should not be any page crash due to disabling the cookies. (Please make sure that you close all browsers, delete all previously written cookies before performing this test)
5) Accepts/Reject some cookies: The best way to check web site functionality is, not to accept all cookies. If you are writing 10 cookies in your web application then randomly accept some cookies say accept 5 and reject 5 cookies. For executing this test case you can set browser options to prompt whenever cookie is being written to disk. On this prompt window you can either accept or reject cookie. Try to access major functionality of web site. See if pages are getting crashed or data is getting corrupted.
6) Delete cookie: Allow site to write the cookies and then close all browsers and manually delete all cookies for web site under test. Access the web pages and check the behavior of the pages.
7) Corrupt the cookies: Corrupting cookie is easy. You know where cookies are stored. Manually edit the cookie in notepad and change the parameters to some vague values. Like alter the cookie content, Name of the cookie or expiry date of the cookie and see the site functionality. In some cases corrupted cookies allow to read the data inside it for any other domain. This should not happen in case of your web site cookies. Note that the cookies written by one domain say rediff.com can’t be accessed by other domain say yahoo.com unless and until the cookies are corrupted and someone trying to hack the cookie data.
8 ) Checking the deletion of cookies from your web application page: Some times cookie written by domain say rediff.com may be deleted by same domain but by different page under that domain. This is the general case if you are testing some ‘action tracking’ web portal. Action tracking or purchase tracking pixel is placed on the action web page and when any action or purchase occurs by user the cookie written on disk get deleted to avoid multiple action logging from same cookie. Check if reaching to your action or purchase page deletes the cookie properly and no more invalid actions or purchase get logged from same user.
9) Cookie Testing on Multiple browsers: This is the important case to check if your web application page is writing the cookies properly on different browsers as intended and site works properly using these cookies. You can test your web application on Major used browsers like Internet explorer (Various versions), Mozilla Firefox, Netscape, Opera etc.
10) If your web application is using cookies to maintain the logging state of any user then log in to your web application using some username and password. In many cases you can see the logged in user ID parameter directly in browser address bar. Change this parameter to different value say if previous user ID is 100 then make it 101 and press enter. The proper access message should be displayed to user and user should not be able to see other users account.
These are some Major test cases to be considered while testing website cookies. You can write multiple test cases from these test cases by performing various combinations. If you have some different application scenario, you can mention your test cases in comments below.
WinRunner FAQs
WinRunner automation tool Preparation: Weekend preparation Series
Posted In | Winrunner, Testing Interview questions, Automation Testing
This is part of Winrunner Interview question series post. I have previously wrote posts on some Basic Winrunner FAQ’s part-1 and Winrunner basics part-2.
These are some important winrunner interview questions frequently asked in automation testing interview. If you are unclear of any answer ask me for clarification. I will continue this winrunner tutorials posting series on weekends as a testing interview preparation series for you.
How do you analyze test results in Winrunner tool and report the defects?
When you finish any test in WinRunner, WinRunner displays the results in a report format. The report logs the general information about the test run I.e date, operator mode and total run time. Also the report details all the major events that occurred during the run, such as checkpoints, error messages, system messages, or user messages. Mismatch can be found in the report panel by seeing the actual result and the expected result. If a test run fails due to a defect in the application being tested, you can report information about the defect directly from the Test Results window. This information is sent via e-mail to the quality assurance manager, who tracks the defect until it is fixed.
What is the use of Test Director testing tool?
TestDirector is Mercury Interactive’s software test management tool. It helps quality assurance personnel plan and organize the testing process. With TestDirector you can create a database of manual and automated tests, build test cycles, run tests, and report and track defects. You can also create reports and graphs to help review the progress of planning tests, running tests, and tracking defects before a software release.
How to integrate automated scripts from TestDirector to Winrunner Scripts?
When you work in WinRunner and create any test script you have option to save it directly to Test Director test repository.
Or while creating a test case in the TestDirector we can specify whether the script in automated or manual. And if it is automated script then TestDirector will build a skeleton for the script like TSL(Test Script language) of winrunner that can be later modified into one which could be used to test the application.
What are the different modes of recording in WinRunner?
Two type of recording in WinRunner.
1. Context Sensitive recording records the operations you perform on your application by identifying Graphical User Interface (GUI) objects. Winrunner identifies all the objects in your window you click like menus, windows, lists, buttons and the type of operation you perform such as enable, move, select etc.
2. Analog recording records keyboard input, mouse clicks, and the precise x- and y-coordinates traveled by the mouse pointer across the screen i.e Winrunner records exact co-ordinates traveled by mouse.
What is the purpose of loading WinRunner Add-Ins?
Add-Ins are used in WinRunner to load functions specific to the particular add-in to the memory. While creating a script only those functions in the add-in selected will be listed in the function generator and while executing the script only those functions in the loaded add-in will be executed else WinRunner will give an error message saying it does not recognize the function.
What are the reasons that WinRunner fails to identify GUI object?
WinRunner fails to identify an object in a GUI due to various reasons.
1. The object is not a standard windows object.
2. If the browser used is not compatible with the WinRunner version, GUI Map Editor will not be able to learn any of the objects displayed in the browser window.
What do you mean by the logical name of the object.
When you click an object, WinRunner assigns the object a logical name, which is
usually the object’s text label. The logical name makes it easy for you to read the
test script. For example, when you selected the Order No. check box,
WinRunner recorded the following statement in WinRunner TSL:
button_set (”Order No.”, ON);
“Order No.” is the object’s logical name.
An object’s logical name is determined by its class. In most cases, the logical name is the label that appears on an object.
If the object does not have a name then what will be the logical name?
If the object does not have a name then the logical name could be the attached text.
What is the different between GUI map and GUI map files?
The GUI map is actually the sum of one or more GUI map files. There are two modes for organizing GUI map files.
i. Global GUI Map file: a single GUI Map file for the entire application
ii. GUI Map File per Test: WinRunner automatically creates a GUI Map file for each test created.
GUI Map file is a file which contains the windows and the objects learned by the WinRunner with its logical name and their physical description.
WinRunner Interview Questions with answers
Posted In | Winrunner, Automation Testing
Here is another post of WinRunner Interview preparation series. You can find here frequently asked WinRunner interview questions with answers. Most of the questions are based on Test Script Language (TSL), recording scripts in WinRunner and introduction to some important basic WinRunner most used commands.
1) What is the purpose of set_window command?
Set_Window command sets the focus to the specified window. We use this command to set the focus to the required window before executing tests on a particular window.
Syntax: set_window(, time);
The logical name is the logical name of the window and time is the time the execution has to wait till it gets the given window into focus.
Example:
set_window (”Print”, 12);
button_press (”OK”);
The set_window statement indicates that the Print window is the active window.
The OK button is learned within the context of this window. If you program a test manually, you need to enter the set_window statement then the active window changes. When editing a script, take care not to delete necessary set_window statements.
2) Why don’t we normally load the GUI maps through start up scripts?
a) If we are using a single GUI Map file for the entire AUT then the memory used by the GUI Map may be much high.
b) If there is any change in the object being learned then WinRunner will not be able to recognize the object, as it is not in the GUI Map file loaded in the memory. So we will have to learn the object again and update the GUI File and reload it.
3) How do you unload the GUI map?
We can use GUI_close to unload a specific GUI Map file or else we call use GUI_close_all command to unload all the GUI Map files loaded in the memory.
Syntax: GUI_close(); or GUI_close_all;
You can also use GUI_unload and GUI_unload_all functions to unload loaded GUI map files.
4) What is the use of GUI map and what happens when GUI map file get loaded?
When we load a GUI Map file, the information about the windows and the objects with their logical names and physical description are loaded into memory. So when the WinRunner executes a script on a particular window, it can identify the objects using this information loaded in the memory.
5) How do you copy and move objects between different GUI map files?
We can copy and move objects between different GUI Map files using the GUI Map Editor. The steps to be followed are:
1. Choose Tools > GUI Map Editor to open the GUI Map Editor.
2. Choose View > GUI Files.
3. Click Expand in the GUI Map Editor. The dialog box expands to display two GUI map files simultaneously.
4. View a different GUI map file on each side of the dialog box by clicking the file names in the GUI File lists.
5. In one file, select the objects you want to copy or move. Use the Shift key and/or Control key to select multiple objects. To select all objects in a GUI map file, choose Edit > Select All.
6. Click Copy or Move.
7. To restore the GUI Map Editor to its original size, click Collapse.
6) How do you configure GUI map?
a) When WinRunner learns the description of a GUI object, it does not learn all its properties. Instead, it learns the minimum number of properties to provide a unique identification of the object.
b) Many applications also contain custom GUI objects. A custom object is any object not belonging to one of the standard classes used by WinRunner. These objects are therefore assigned to the generic “object” class. When WinRunner records an operation on a custom object, it generates obj_mouse_ statements in the test script.
c) If a custom object is similar to a standard object, you can map it to one of the standard classes. You can also configure the properties WinRunner uses to identify a custom object during Context Sensitive testing. The mapping and the configuration you set are valid only for the current WinRunner session. To make the mapping and the configuration permanent, you must add configuration statements to your startup test script.
7) What is the purpose of GUI spy?
Using the GUI Spy, you can view the properties of any GUI object on your desktop. You use the Spy pointer to point to an object, and the GUI Spy displays the properties and their values in the GUI Spy dialog box. You can choose to view all the properties of an object, or only the selected set of properties that WinRunner learns.
8 ) What is the purpose of different record methods 1) Record 2) Pass up 3) As Object 4) Ignore.
a) Record instructs WinRunner to record all operations performed on a GUI object. This is the default record method for all classes. (The only exception is the static class (static text), for which the default is Pass Up.)
b) Pass Up instructs WinRunner to record an operation performed on this class as an operation performed on the element containing the object. Usually this element is a window, and the operation is recorded as win_mouse_click.
c) As Object instructs WinRunner to record all operations performed on a GUI object as though its class were “object” class.
d) Ignore instructs WinRunner to disregard all operations performed on the class.
9) What are the virtual objects and how do you learn them?
You can teach WinRunner to recognize any bitmap in a window as a GUI object by defining the bitmap as a virtual object.
You can create virtual push buttons, radio buttons, check buttons, lists, or tables, according to the bitmap’s behavior in your application. If none of these is suitable, you can map a virtual object to the general object class.
a) Applications may contain bitmaps that look and behave like GUI objects. WinRunner records operations on these bitmaps using win_mouse_click statements. By defining a bitmap as a virtual object, you can instruct WinRunner to treat it like a GUI object such as a push button, when you record and run tests.
b) Using the Virtual Object wizard, you can assign a bitmap to a standard object class, define the coordinates of that object, and assign it a logical name.
10) What is the use of Virtual Object Wizard and how it is used?
To define a virtual object using the Virtual Object wizard:
1. Choose Tools > Virtual Object Wizard. The Virtual Object wizard opens. Click Next.
2. In the Class list, select a class for the new virtual object. If rows that are displayed in the window. For a table class, select the number of visible rows and columns. Click Next.
3. Click Mark Object. Use the crosshairs pointer to select the area of the virtual object. You can use the arrow keys to make precise adjustments to the area you define with the crosshairs. Press Enter or click the right mouse button to display the virtual object’s coordinates in the wizard. If the object marked is visible on the screen, you can click the Highlight button to view it. Click Next.
4. Assign a logical name to the virtual object. This is the name that appears in the test script when you record on the virtual object. If the object contains text that WinRunner can read, the wizard suggests using this text for the logical name. Otherwise, WinRunner suggests virtual_object, virtual_push_button, virtual_list, etc.
5. You can accept the wizard’s suggestion or type in a different name. WinRunner checks that there are no other objects in the GUI map with the same name before confirming your choice. Click Next.
11) What are the modes of script recording in WinRunner ?
There are 2 modes of recording in WinRunner
• Context Sensitive recording records the operations you perform on your application by identifying Graphical User Interface (GUI) objects.
• Analog recording records keyboard input, mouse clicks, and the precise x- and y-coordinates traveled by the mouse pointer across the screen.
12) What is a checkpoint and what are different types of checkpoints?
Checkpoints allow you to compare the current behavior of the application being tested to its behavior in an earlier version.
You can add four types of checkpoints to your test scripts:
1. GUI checkpoints verify information about GUI objects. For example, you can check that a button is enabled or see which item is selected in a list.
2. Bitmap checkpoints take a snapshot of a window or area of your application and compare this to an image captured in an earlier version.
3. Text checkpoints read text in GUI objects and in bitmaps and enable you to verify their contents.
4. Database checkpoints check the contents and the number of rows and columns of a result set, which is based on a query you create on your database.
Posted In | Winrunner, Testing Interview questions, Automation Testing
This is part of Winrunner Interview question series post. I have previously wrote posts on some Basic Winrunner FAQ’s part-1 and Winrunner basics part-2.
These are some important winrunner interview questions frequently asked in automation testing interview. If you are unclear of any answer ask me for clarification. I will continue this winrunner tutorials posting series on weekends as a testing interview preparation series for you.
How do you analyze test results in Winrunner tool and report the defects?
When you finish any test in WinRunner, WinRunner displays the results in a report format. The report logs the general information about the test run I.e date, operator mode and total run time. Also the report details all the major events that occurred during the run, such as checkpoints, error messages, system messages, or user messages. Mismatch can be found in the report panel by seeing the actual result and the expected result. If a test run fails due to a defect in the application being tested, you can report information about the defect directly from the Test Results window. This information is sent via e-mail to the quality assurance manager, who tracks the defect until it is fixed.
What is the use of Test Director testing tool?
TestDirector is Mercury Interactive’s software test management tool. It helps quality assurance personnel plan and organize the testing process. With TestDirector you can create a database of manual and automated tests, build test cycles, run tests, and report and track defects. You can also create reports and graphs to help review the progress of planning tests, running tests, and tracking defects before a software release.
How to integrate automated scripts from TestDirector to Winrunner Scripts?
When you work in WinRunner and create any test script you have option to save it directly to Test Director test repository.
Or while creating a test case in the TestDirector we can specify whether the script in automated or manual. And if it is automated script then TestDirector will build a skeleton for the script like TSL(Test Script language) of winrunner that can be later modified into one which could be used to test the application.
What are the different modes of recording in WinRunner?
Two type of recording in WinRunner.
1. Context Sensitive recording records the operations you perform on your application by identifying Graphical User Interface (GUI) objects. Winrunner identifies all the objects in your window you click like menus, windows, lists, buttons and the type of operation you perform such as enable, move, select etc.
2. Analog recording records keyboard input, mouse clicks, and the precise x- and y-coordinates traveled by the mouse pointer across the screen i.e Winrunner records exact co-ordinates traveled by mouse.
What is the purpose of loading WinRunner Add-Ins?
Add-Ins are used in WinRunner to load functions specific to the particular add-in to the memory. While creating a script only those functions in the add-in selected will be listed in the function generator and while executing the script only those functions in the loaded add-in will be executed else WinRunner will give an error message saying it does not recognize the function.
What are the reasons that WinRunner fails to identify GUI object?
WinRunner fails to identify an object in a GUI due to various reasons.
1. The object is not a standard windows object.
2. If the browser used is not compatible with the WinRunner version, GUI Map Editor will not be able to learn any of the objects displayed in the browser window.
What do you mean by the logical name of the object.
When you click an object, WinRunner assigns the object a logical name, which is
usually the object’s text label. The logical name makes it easy for you to read the
test script. For example, when you selected the Order No. check box,
WinRunner recorded the following statement in WinRunner TSL:
button_set (”Order No.”, ON);
“Order No.” is the object’s logical name.
An object’s logical name is determined by its class. In most cases, the logical name is the label that appears on an object.
If the object does not have a name then what will be the logical name?
If the object does not have a name then the logical name could be the attached text.
What is the different between GUI map and GUI map files?
The GUI map is actually the sum of one or more GUI map files. There are two modes for organizing GUI map files.
i. Global GUI Map file: a single GUI Map file for the entire application
ii. GUI Map File per Test: WinRunner automatically creates a GUI Map file for each test created.
GUI Map file is a file which contains the windows and the objects learned by the WinRunner with its logical name and their physical description.
WinRunner Interview Questions with answers
Posted In | Winrunner, Automation Testing
Here is another post of WinRunner Interview preparation series. You can find here frequently asked WinRunner interview questions with answers. Most of the questions are based on Test Script Language (TSL), recording scripts in WinRunner and introduction to some important basic WinRunner most used commands.
1) What is the purpose of set_window command?
Set_Window command sets the focus to the specified window. We use this command to set the focus to the required window before executing tests on a particular window.
Syntax: set_window(
The logical name is the logical name of the window and time is the time the execution has to wait till it gets the given window into focus.
Example:
set_window (”Print”, 12);
button_press (”OK”);
The set_window statement indicates that the Print window is the active window.
The OK button is learned within the context of this window. If you program a test manually, you need to enter the set_window statement then the active window changes. When editing a script, take care not to delete necessary set_window statements.
2) Why don’t we normally load the GUI maps through start up scripts?
a) If we are using a single GUI Map file for the entire AUT then the memory used by the GUI Map may be much high.
b) If there is any change in the object being learned then WinRunner will not be able to recognize the object, as it is not in the GUI Map file loaded in the memory. So we will have to learn the object again and update the GUI File and reload it.
3) How do you unload the GUI map?
We can use GUI_close to unload a specific GUI Map file or else we call use GUI_close_all command to unload all the GUI Map files loaded in the memory.
Syntax: GUI_close(
You can also use GUI_unload and GUI_unload_all functions to unload loaded GUI map files.
4) What is the use of GUI map and what happens when GUI map file get loaded?
When we load a GUI Map file, the information about the windows and the objects with their logical names and physical description are loaded into memory. So when the WinRunner executes a script on a particular window, it can identify the objects using this information loaded in the memory.
5) How do you copy and move objects between different GUI map files?
We can copy and move objects between different GUI Map files using the GUI Map Editor. The steps to be followed are:
1. Choose Tools > GUI Map Editor to open the GUI Map Editor.
2. Choose View > GUI Files.
3. Click Expand in the GUI Map Editor. The dialog box expands to display two GUI map files simultaneously.
4. View a different GUI map file on each side of the dialog box by clicking the file names in the GUI File lists.
5. In one file, select the objects you want to copy or move. Use the Shift key and/or Control key to select multiple objects. To select all objects in a GUI map file, choose Edit > Select All.
6. Click Copy or Move.
7. To restore the GUI Map Editor to its original size, click Collapse.
6) How do you configure GUI map?
a) When WinRunner learns the description of a GUI object, it does not learn all its properties. Instead, it learns the minimum number of properties to provide a unique identification of the object.
b) Many applications also contain custom GUI objects. A custom object is any object not belonging to one of the standard classes used by WinRunner. These objects are therefore assigned to the generic “object” class. When WinRunner records an operation on a custom object, it generates obj_mouse_ statements in the test script.
c) If a custom object is similar to a standard object, you can map it to one of the standard classes. You can also configure the properties WinRunner uses to identify a custom object during Context Sensitive testing. The mapping and the configuration you set are valid only for the current WinRunner session. To make the mapping and the configuration permanent, you must add configuration statements to your startup test script.
7) What is the purpose of GUI spy?
Using the GUI Spy, you can view the properties of any GUI object on your desktop. You use the Spy pointer to point to an object, and the GUI Spy displays the properties and their values in the GUI Spy dialog box. You can choose to view all the properties of an object, or only the selected set of properties that WinRunner learns.
8 ) What is the purpose of different record methods 1) Record 2) Pass up 3) As Object 4) Ignore.
a) Record instructs WinRunner to record all operations performed on a GUI object. This is the default record method for all classes. (The only exception is the static class (static text), for which the default is Pass Up.)
b) Pass Up instructs WinRunner to record an operation performed on this class as an operation performed on the element containing the object. Usually this element is a window, and the operation is recorded as win_mouse_click.
c) As Object instructs WinRunner to record all operations performed on a GUI object as though its class were “object” class.
d) Ignore instructs WinRunner to disregard all operations performed on the class.
9) What are the virtual objects and how do you learn them?
You can teach WinRunner to recognize any bitmap in a window as a GUI object by defining the bitmap as a virtual object.
You can create virtual push buttons, radio buttons, check buttons, lists, or tables, according to the bitmap’s behavior in your application. If none of these is suitable, you can map a virtual object to the general object class.
a) Applications may contain bitmaps that look and behave like GUI objects. WinRunner records operations on these bitmaps using win_mouse_click statements. By defining a bitmap as a virtual object, you can instruct WinRunner to treat it like a GUI object such as a push button, when you record and run tests.
b) Using the Virtual Object wizard, you can assign a bitmap to a standard object class, define the coordinates of that object, and assign it a logical name.
10) What is the use of Virtual Object Wizard and how it is used?
To define a virtual object using the Virtual Object wizard:
1. Choose Tools > Virtual Object Wizard. The Virtual Object wizard opens. Click Next.
2. In the Class list, select a class for the new virtual object. If rows that are displayed in the window. For a table class, select the number of visible rows and columns. Click Next.
3. Click Mark Object. Use the crosshairs pointer to select the area of the virtual object. You can use the arrow keys to make precise adjustments to the area you define with the crosshairs. Press Enter or click the right mouse button to display the virtual object’s coordinates in the wizard. If the object marked is visible on the screen, you can click the Highlight button to view it. Click Next.
4. Assign a logical name to the virtual object. This is the name that appears in the test script when you record on the virtual object. If the object contains text that WinRunner can read, the wizard suggests using this text for the logical name. Otherwise, WinRunner suggests virtual_object, virtual_push_button, virtual_list, etc.
5. You can accept the wizard’s suggestion or type in a different name. WinRunner checks that there are no other objects in the GUI map with the same name before confirming your choice. Click Next.
11) What are the modes of script recording in WinRunner ?
There are 2 modes of recording in WinRunner
• Context Sensitive recording records the operations you perform on your application by identifying Graphical User Interface (GUI) objects.
• Analog recording records keyboard input, mouse clicks, and the precise x- and y-coordinates traveled by the mouse pointer across the screen.
12) What is a checkpoint and what are different types of checkpoints?
Checkpoints allow you to compare the current behavior of the application being tested to its behavior in an earlier version.
You can add four types of checkpoints to your test scripts:
1. GUI checkpoints verify information about GUI objects. For example, you can check that a button is enabled or see which item is selected in a list.
2. Bitmap checkpoints take a snapshot of a window or area of your application and compare this to an image captured in an earlier version.
3. Text checkpoints read text in GUI objects and in bitmaps and enable you to verify their contents.
4. Database checkpoints check the contents and the number of rows and columns of a result set, which is based on a query you create on your database.
Most frequently asked winrunner interview questions with answers
Most frequently asked winrunner interview questions with answers
Posted In | Testing Tips and resources, Testing Interview questions, Automation Testing
Here is the list of some frequently asked Winrunner Interview questions with answers.
I will continue this series as I posted some winrunner Questions and answer.
How you used WinRunner in your project?
Yes, I have been using WinRunner for creating automated scripts for GUI, functional and regression testing of the AUT.
Explain WinRunner testing process?
WinRunner testing process involves six main stages
i. Create GUI Map File so that WinRunner can recognize the GUI objects in the application being tested
ii. Create test scripts by recording, programming, or a combination of both. While recording tests, insert checkpoints where you want to check the response of the application being tested.
iii. Debug Test: run tests in Debug mode to make sure they run smoothly
iv. Run Tests: run tests in Verify mode to test your application.
v. View Results: determines the success or failure of the tests.
vi. Report Defects: If a test run fails due to a defect in the application being tested, you can report information about the defect directly from the Test Results window.
What is contained in the GUI map?
- WinRunner stores information it learns about a window or object in a GUI Map. When WinRunner runs a test, it uses the GUI map to locate objects. It reads an object’s description in the GUI map and then looks for an object with the same properties in the application being tested. Each of these objects in the GUI Map file will be having a logical name and a physical description.
- There are 2 types of GUI Map files.
i. Global GUI Map file: a single GUI Map file for the entire application
ii. GUI Map File per Test: WinRunner automatically creates a GUI Map file for each test created.
How does WinRunner recognize objects on the application?
WinRunner uses the GUI Map file to recognize objects on the application. When WinRunner runs a test, it uses the GUI map to locate objects. It reads an object’s description in the GUI map and then looks for an object with the same properties in the application being tested.
Have you created test scripts and what is contained in the test scripts?
Yes I have created test scripts. It contains the statement in Mercury Interactive’s Test Script Language (TSL). These statements appear as a test script in a test window. You can then enhance your recorded test script, either by typing in additional TSL functions and programming elements or by using WinRunner’s visual programming tool, the Function Generator.
How does WinRunner evaluates test results?
Following each test run, WinRunner displays the results in a report. The report details all the major events that occurred during the run, such as checkpoints, error messages, system messages, or user messages. If mismatches are detected at checkpoints during the test run, you can view the expected results and the actual results from the Test Results window.
Have you performed debugging of the scripts?
Yes, I have performed debugging of scripts. We can debug the script by executing the script in the debug mode. We can also debug script using the Step, Step Into, Step out functionalities provided by the WinRunner.
How do you run your test scripts?
We run tests in Verify mode to test your application. Each time WinRunner encounters a checkpoint in the test script, it compares the current data of the application being tested to the expected data captured earlier. If any mismatches are found, WinRunner captures them as actual results.
Posted In | Testing Tips and resources, Testing Interview questions, Automation Testing
Here is the list of some frequently asked Winrunner Interview questions with answers.
I will continue this series as I posted some winrunner Questions and answer.
How you used WinRunner in your project?
Yes, I have been using WinRunner for creating automated scripts for GUI, functional and regression testing of the AUT.
Explain WinRunner testing process?
WinRunner testing process involves six main stages
i. Create GUI Map File so that WinRunner can recognize the GUI objects in the application being tested
ii. Create test scripts by recording, programming, or a combination of both. While recording tests, insert checkpoints where you want to check the response of the application being tested.
iii. Debug Test: run tests in Debug mode to make sure they run smoothly
iv. Run Tests: run tests in Verify mode to test your application.
v. View Results: determines the success or failure of the tests.
vi. Report Defects: If a test run fails due to a defect in the application being tested, you can report information about the defect directly from the Test Results window.
What is contained in the GUI map?
- WinRunner stores information it learns about a window or object in a GUI Map. When WinRunner runs a test, it uses the GUI map to locate objects. It reads an object’s description in the GUI map and then looks for an object with the same properties in the application being tested. Each of these objects in the GUI Map file will be having a logical name and a physical description.
- There are 2 types of GUI Map files.
i. Global GUI Map file: a single GUI Map file for the entire application
ii. GUI Map File per Test: WinRunner automatically creates a GUI Map file for each test created.
How does WinRunner recognize objects on the application?
WinRunner uses the GUI Map file to recognize objects on the application. When WinRunner runs a test, it uses the GUI map to locate objects. It reads an object’s description in the GUI map and then looks for an object with the same properties in the application being tested.
Have you created test scripts and what is contained in the test scripts?
Yes I have created test scripts. It contains the statement in Mercury Interactive’s Test Script Language (TSL). These statements appear as a test script in a test window. You can then enhance your recorded test script, either by typing in additional TSL functions and programming elements or by using WinRunner’s visual programming tool, the Function Generator.
How does WinRunner evaluates test results?
Following each test run, WinRunner displays the results in a report. The report details all the major events that occurred during the run, such as checkpoints, error messages, system messages, or user messages. If mismatches are detected at checkpoints during the test run, you can view the expected results and the actual results from the Test Results window.
Have you performed debugging of the scripts?
Yes, I have performed debugging of scripts. We can debug the script by executing the script in the debug mode. We can also debug script using the Step, Step Into, Step out functionalities provided by the WinRunner.
How do you run your test scripts?
We run tests in Verify mode to test your application. Each time WinRunner encounters a checkpoint in the test script, it compares the current data of the application being tested to the expected data captured earlier. If any mismatches are found, WinRunner captures them as actual results.
Subscribe to:
Posts (Atom)