Archive for April, 2008

Win Runner Navigation

Win Runner Navigation

Using Rapid Test Script wizard

  • Start->Program Files->Winrunner->winruner
  • Select the Rapid Test Script Wizard (or) create->Rapid Test Script wizard
  • Click Next button of welcome to script wizard
  • Select hand icon and click on Application window and Cilck Next button
  • Select the tests and click Next button
  • Select Navigation controls and Click Next button
  • Set the Learning Flow(Express or Comprehensive) and click Learn button
  • Select start application YES or NO, then click Next button
  • Save the Startup script and GUI map files, click Next button
  • Save the selected tests, click Next button
  • Click Ok button
  • Script will be generated.then run the scripts.
  • Run->Run from top Find results of each script and select tools->text report in Winrunner test results

Using GUI-Map Configuration Tool:

  • Open an application.
  • Select Tools-GUI Map Configuration; Windows pops-up.
  • Click ADD button; Click on hand icon.
  • Click on the object, which is to be configured. A user-defined class for that object is added to list.
  • Select User-defined class you added and press ‘Configure’ button.
  • Mapped to Class;(Select a corresponding standard class from the combo box).
  • You can move the properties from available properties to Learned Properties. By selecting Insert button .
  • Select the Selector and recording methods.
  • Click Ok button
  • Now, you will observe Win runner identifying the configured objects.

Using Record-ContextSensitive mode:

  • Create->Record context Sensitive
  • Select start->program files->Accessories->Calculator
  • Do some action on the application.
  • Stop recording
  • Run from Top; Press ‘OK’.

Using Record-Analog Mode:

  • Create->Insert Function->from function generator
  • Function name:(select ‘invoke_application’ from combo box).
  • Click Args button; File: mspaint.
  • Click on ‘paste’ button; Click on ‘Execute’ button to open the application; Finally click on ‘Close’.
  • Create->Record-Analog .
  • Draw some picture in the paintbrush file.
  • Stop Recording
  • Run->Run from Top; Press ‘OK’.

GUI CHECK POINTS-Single Property Check:

  • Create->Insert function->Function Generator-> (Function name:Invoke_application; File :Flight 1a)
  • Click on’paste’ and click on’execute’ & close the window.
  • Create->Record Context sensitive.
  • Do some operations & stop recording.
  • Create->GUI Check Point->For single Property.
  • Click on some button whose property to be checked.
  • Click on paste.
  • Now close the Flight1a application; Run->Run from top.
  • Press ‘OK’ it displays results window.
  • Double click on the result statement. It shows the expected value & actual value window.

GUI CHECK POINTS-For Object/Window Property:

  • Create->Insert function->Function Generator-> (Function name:Invoke_application; File :Flight 1a)
  • Click on’paste’ and click on’execute’ & close the window.
  • Create->Record Context sensitive.
  • Do some operations & stop recording.
  • Create->GUI Check Point->Object/Window Property.
  • Click on some button whose property to be checked.
  • Click on paste.
  • 40Now close the Flight 1a application; Run->Run from top.
  • Press ‘OK’ it displays results window.
  • Double click on the result statement. It shows the expected value & actual value window.

GUI CHECK POINTS-For Object/Window Property:

  • Create->Insert function->Function Generator-> (Function name:Invoke_application; File :Flight 1a)
  • Click on’paste’ and click on’execute’ & close the window.
  • Create->Record Context sensitive.
  • Do some operations & stop recording.
  • Create->GUI Check Point->For Multiple Object.
  • Click on some button whose property to be checked.
  • Click on Add button.
  • Click on few objects & Right click to quit.
  • Select each object & select corresponding properties to be checked for that object: click ‘OK’.
  • Run->Run from Top. It displys the results.

BITMAP CHECK POINT:For object/window.

  • Create->Insert function->Function Generator-> (Function name:Invoke_application; File :Flight 1a)
  • Click on’paste’ and click on’execute’ & close the window.
  • Create->Record Context sensitive.
  • Enter the Username, Password & click ‘OK’ button
  • Open the Order in Flight Reservation Application
  • Select File->Fax Order& enter Fax Number, Signature
  • Press ‘Cancel’ button.
  • Create->Stop Recording.
  • Then open Fax Order in Flight Reservation Application
  • Create->Bitmap Check->For obj.window;
  • Run->run from top.
  • The test fails and you can see the difference.

For Screen Area:

  • Open new Paint Brush file;
  • Create->Bitmapcheck point->from screen area.
  • Paint file pops up; select an image with cross hair pointer.
  • Do slight modification in the paint file(you can also run on the same paint file);
  • Run->Run from Top.
  • The test fails and you can see the difference of images.

DATABASE CHECK POINTSUsing Default check(for MS-Access only)

  • Create->Database Check Point->Default check
  • Select the Specify SQL Statement check box
  • Click Next button
  • Click Create button
  • Type New DSN name and Click New button
  • Then select a driver for which you want to set up a database & double clcik that driver
  • Then select Browse button and retype same DSN name and Click save button.
  • Click Next button & click Finish button
  • Select database button & set path of the your database name
  • Click ‘OK’ button & then Click the your DSN window ‘OK’ button
  • Type the SQL query in SQL box
  • The click Finish button Note : same process will be Custom Check Point

Runtime Record Check Point.

  • Repeat above 10 steps.
  • Type query of two related tables in SQL box Ex: select Orders.Order_Number, Flights.Flight_Number from Orders, Flights where Flight.Flight_Number=Orders.Flight_Number.
  • Select Finish Button
  • Select hand Icon button& select Order No in your Application
  • Click Next button.
  • Select hand Icon button& select Filght No in your Application
  • Click Next button
  • Select any one of the following check box 1. One match record 2. One or more match records. 3. No match record
  • select Finish button the script will be generated

Synchronization PointFor Obj/Win Properties:

  • Open start->Programs->Win Runner->Sample applications->Flight1A.
  • Open winrunner window
  • Create->RecordContext Sensitive
  • Insert information for new Order &click on “insert Order” button
  • After inserting click on “delete” button
  • Stop recording& save the file.
  • Run->Run from top: Gives your results.

Without Synchronization:

  • settings->General Options->Click on “Run” tab. “Timeout for checkpoints& Cs statements’ value:10000 follow 1 to 7->the test display on “Error Message” that “delete” button is disabled.

With Synchronization:

  • Keep Timeout value:1000 only
  • Go to the Test Script file, insert pointed after “Insert Order” button, press statement.
  • Create->Synchronization->For Obj/Window Property
  • Click on”Delete Order” button & select enable property; click on “paste”.
  • It inserts the Synch statement.

For Obj/Win Bitmap:

  • Create-> Record Context Sensitive.
  • Insert information for new order & click on “Insert order” button
  • Stop recording & save the file.
  • Go to the TSL Script, just before inserting of data into “date of flight” insert pointer.
  • Create->Synchronization->For Obj/Win Bitmap is selected.
  • (Make sure Flight Reservation is empty) click on “data of flight” text box
  • Run->Run from Top; results are displayed. Note:(Keep “Timeout value” :1000)

Get Text: From Screen Area: (Note: Checking whether Order no is increasing when ever Order is created)

  • Open Flight1A; Analysis->graphs(Keep it open)
  • Create->get text->from screen area
  • Capture the No of tickets sold; right clcik &close the graph
  • Now , insert new order, open the graph(Analysis->graphs)
  • Go to Winrunner window, create->get text->from screen area
  • Capture the No of tickets sold and right click; close the graph
  • Save the script file
  • Add the followinf script; If(text2==text1) tl_step(“text comparision”,0,”updateed”); else tl_step(“text comparision”,1,”update property”);
  • Run->Run from top to see the results.

Get Text: For Object/Window:

  • Open a “Calc” application in two windows (Assuming two are two versions)
  • Create->get text->for Obj/Window
  • Click on some button in one window
  • Stop recording
  • Repeat 1 to 4 for Capture the text of same object from another “Calc” application.
  • Add the following TSL(Note:Change “text” to text1 & text2 for each statement) if(text1==text2) report_msg(“correct” text1); Else report_msg(“incorrect” text2);
  • Run & see the results

Using GUI-Spy:

Using the GUI Spy, you can view and verify the properties of any GUI object on selected application

  • Tools->Gui Spy…
  • Select Spy On ( select Object or Window)
  • Select Hand icon Button
  • Point the Object or window & Press Ctrl_L + F3.
  • You can view and verify the properties.

Using Virtual Object Wizard:

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

  • Tools->Virtual Object Wizard.
  • Click Next Button
  • Select standard class object for the virtual object Ex: class:Push_button
  • Click Next button
  • Click Mark Object button
  • Drag the cursor to mark the area of the virtual object.
  • Click Next button
  • Assign the Logical Name, This name will appear in the test script when you record object.
  • Select Yes or No check box
  • Click Finish button
  • Go to winrunner window & Create->Start Recording.
  • Do some operations
  • Stop Recording

Using Gui Map Editor:

Using the GUI Map Editor, you can view and modify the properties of any GUI object on selected application. To modify an object’s logical name in a GUI map file

  • Tools->GUI Map Editor
  • Select Learn button
  • Select the Application A winrunner message box informs “do you want to learn all objects within the window” & select ‘yes’’ button.
  • Select perticular object and select Modify Button
  • Change the Logical Name& click ‘OK’ Button
  • Save the File

To find an object in a GUI map file:

  • Choose Tools > GUI Map Editor.
  • Choose View > GUI Files.
  • Choose File > Open to load the GUI map file.
  • Click Find. The mouse pointer turns into a pointing hand.
  • Click the object in the application being tested. The object is highlighted in the GUI map file.

To highlight an object in a Application:

  • Choose Tools > GUI Map Editor.
  • Choose View > GUI Files.
  • Choose File > Open to load the GUI map file.
  • Select the object in the GUI map file
  • Click Show. The object is highlighted in the Application.

Data Driver Wizard

  • Start->Programs->Wirunner->Sample applications->Flight 1A
  • Open Flight Reservation Application
  • Go to Winrunner window
  • Create->Start recording
  • Select file->new order, insert the fields; Click the Insert Order
  • Tools->Data Table; Enter different Customer names in one row and Tickets in another row.
  • Default that two column names are Noname1 and Noname2.
  • Tools->Data Driver Wizard
  • Click Next button &select the Data Table
  • Select Parameterize the test; select Line by Line check box
  • Click Next Button
  • Parameterize each specific values with column names of tables;Repeat for all
  • Final Click finish button.
  • Run->Run from top;
  • View the results.

Merge the GUI Files:

Manual Merge

  • Tools->Merge GUI Map Files A WinRunner message box informs you that all open GUI maps will be closed and all unsaved changes will be discarded & click ‘OK’ button.
  • Select the Manual Merge. Manual Merge enables you to manually add GUI objects from the source to target files.
  • To specify the Target GUI map file click the browse button& select GUI map file
  • To specify the Source GUI map file. Click the add button& select source GUI map file.
  • Click ‘OK’ button
  • GUI Map File Manual Merge Tool Opens Select Objects and move Source File to Target File
  • Close the GUI Map File Manual Merge Tool

Auto Merge

  • Tools->Merge GUI Map Files A WinRunner message box informs you that all open GUI maps will be closed and all unsaved changes will be discarded & click ‘OK’ button.
  • Select the Auto Merge in Merge Type. If you chose Auto Merge and the source GUI map files are merged successfully without conflicts,
  • To specify the Target GUI map file click the browse button& select GUI map file
  • To specify the Source GUI map file.
  • Click the add button& select source GUI map file.
  • Click ‘OK’ button A message confirms the merge.

Manually Retrive the Records form Database

  • db_connect(query1,DSN=Flight32);
  • db_execute_query(query1,select * from Orders,rec);
  • db_get_field_value(query1,#0,#0);
  • db_get_headers(query1, field_num,headers);
  • db_get_row(query1,5,row_con);
  • db_write_records(query1,,c:\\str.txt,TRUE,10);

Software Testing Interview Questions Part 5

46. High severity, low priority bug?

A: — A page is rarely accessed, or some activity is performed rarely but that thing outputs some important Data incorrectly, or corrupts the data, this will be a bug of H severity L priority

47. If project wants to release in 3 months what type of Risk analysis u do in Test plan?

A:– Use risk analysis to determine where testing should be focused. Since it’s rarely possible to test every possible aspect of an application, every possible combination of events, every dependency, or everything that could go wrong, risk analysis is appropriate to most software development projects. This requires judgment skills, common sense, and experience. (If warranted, formal methods are also available.) Considerations can include:

• Which functionality is most important to the project’s intended purpose?
• Which functionality is most visible to the user?
• Which functionality has the largest safety impact?
• Which functionality has the largest financial impact on users?
• Which aspects of the application are most important to the customer?
• Which aspects of the application can be tested early in the development cycle?
• Which parts of the code are most complex, and thus most subject to errors?
• Which parts of the application were developed in rush or panic mode?
• Which aspects of similar/related previous projects caused problems?
• Which aspects of similar/related previous projects had large maintenance expenses?
• Which parts of the requirements and design are unclear or poorly thought out?
• What do the developers think are the highest-risk aspects of the application?
• What kinds of problems would cause the worst publicity?
• What kinds of problems would cause the most customer service complaints?
• What kinds of tests could easily cover multiple functionalities?
• Which tests will have the best high-risk-coverage to time-required ratio

48. Test cases for IE 6.0 ?

A:– Test cases for IE 6.0 i.e Internet Explorer 6.0:—
1)First I go for the Installation side, means that –
+ is it working with all versions of Windows ,Netscape or other softwares in other words we can say that IE must check with all hardware and software parts.
2) Secondly go for the Text Part means that all the Text part appears in frequent and smooth manner.
3) Thirdly go for the Images Part means that all the Images appears in frequent and smooth manner.
4) URL must run in a better way.
5) Suppose Some other language used on it then URL take the Other Characters, Other than Normal Characters.
6)Is it working with Cookies frequently or not.
7) Is it Concerning with different script like JScript and VBScript.
8) HTML Code work on that or not.
9) Troubleshooting works or not.
10) All the Tool bars are work with it or not.
11) If Page has Some Links, than how much is the Max and Min Limit for that.
12) Test for Installing Internet Explorer 6 with Norton Protected Recycle Bin enabled .
13) Is it working with the Uninstallation Process.
14) Last but not the least test for the Security System for the IE 6.0

49. Where you involve in testing life cycle ,what type of test you perform ?

A:– Generally test engineers involved from entire test life cycle i.e, test plan, test case preparation, execution, reporting. Generally system testing, regression testing, adhoc testing

50. what is Testing environment in your company ,means hwo testing process start ?

A:– testing process is going as follows
quality assurance unit
quality assurance manager
test engineer

51. who prepares the use cases?

A:– In Any company except the small company Business analyst prepares the use cases
But in small company Business analyst prepares along with team lead

52. What methodologies have you used to develop test cases?

A:– generally test engineers uses 4 types of methodologies
1. Boundary value analysis
2.Equivalence partition
3.Error guessing
4.cause effect graphing

53. Why we call it as a regression test nor retest?

A:– If we test whether defect is closed or not i.e Retesting But here we are checking the impact also regression means repeated times

54. Is automated testing better than manual testing. If so, why?

A:– Automated testing and manual testing have advantages as well as disadvantages
Advantages: It increase the efficiency of testing process speed in process
Tools should have compatibility with our development or deployment tools needs lot of time initially If the requirements are changing continuously Automation is not suitable
Manual: If the requirements are changing continuously Manual is suitable Once the build is stable with manual testing then only we go 4 automation
It needs lot of time
We can not do some type of testing manually
E.g Performances

55. what is the exact difference between a product and a project.give an example ?

A:– Project Developed for particular client requirements are defined by client Product developed for market Requirements are defined by company itself by conducting market survey
Project: the shirt which we are interested stitching with tailor as per our specifications is project
Product: Example is “Ready made Shirt” where the particular company will imagine particular measurements they made the product
Mainframes is a product
Product has many mo of versions
but project has fewer versions i.e depends upon change request and enhancements

56. Define Brain Stromming and Cause Effect Graphing? With Eg?

A:– BS:
A learning technique involving open group discussion intended to expand the range of available ideas
A meeting to generate creative ideas. At PEPSI Advertising, daily, weekly and bi-monthly brainstorming sessions are held by various work groups within the firm. Our monthly I-
Power brainstorming meeting is attended by the entire agency staff.
Brainstorming is a highly structured process to help generate ideas. It is based on the principle that you cannot generate and evaluate ideas at the same time. To use brainstorming, you must first gain agreement from the group to try brainstorming for a fixed interval (eg six minutes).

A testing technique that aids in selecting, in a systematic way, a high-yield set of test cases that logically relates causes to effects to produce test cases. It has a beneficial side effect in pointing out incompleteness and ambiguities in specifications.

57. Actually by using severity u should know which one u need to solve so what is the need of priority?

A:– I guess severity reflects the seriousness of the bug where as priority refers to which bug should rectify first. of course if the severity is high the same case is with priority in normal.

severity decided by the tester where as priority decided by developers. which one need to solve first knows through priority not with severity. how serious of the bug knows through

severity is nothing impact of that bug on the application. Priority is nothing but importance to resolve the bug yeah of course by looking severity we can judge but sometimes high severity bug doesn’t have high priority At the same time High priority bug don’t have high severity
So we need both severity and priority

58. What do u do if the bug that u found is not accepted by the developer and he is saying its not reproducible. Note:The developer is in the on site location ?

A:– once again we will check that condition with all reasons. then we will attach screen shots with strong reasons. then we will explain to the project manager and also explain to the client when they contact us

Sometimes bug is not reproducible it is because of different environment suppose development team using other environment and you are using different environment at this situation there is chance of bug not reproducing. At this situation please check the environment in the base line documents that is functional documents if the environment which we r using is correct we will raise it as defect We will take screen shots and sends them with test procedure also

59. what is the difference between three tier and two tier application?

A:– Client server is a 2-tier application. In this, front end or client is connected to
‘Data base server’ through ‘Data Source Name’,front end is the monitoring level.

Web based architecture is a 3-tier application. In this, browser is connected to web server through TCP/IP and web server is connected to Data base server,browser is the monitoring level. In general, Black box testers are concentrating on monitoring level of any type of application.

All the client server applications are 2 tier architectures.
Here in these architecture, all the “Business Logic” is stored in clients and “Data” is stored in Servers. So if user request anything, business logic will b performed at client, and the data is retrieved from Server(DB Server). Here the problem is, if any business logic changes, then we
need to change the logic at each any every client. The best ex: is take a super market, i have branches in the city. At each branch i have clients, so business logic is stored in clients, but the actual data is store in servers.If assume i want to give some discount on some items, so i
need to change the business logic. For this i need to goto each branch and need to change the business logic at each client. This the disadvantage of Client/Server architecture.

So 3-tier architecture came into picture:

Here Business Logic is stored in one Server, and all the clients are dumb terminals. If user requests anything the request first sent to server, the server will bring the data from DB Sever and send it to clients. This is the flow for 3-tier architecture.

Assume for the above. Ex. if i want to give some discount, all my business logic is there in Server. So i need to change at one place, not at each client. This is the main advantage of 3-tier architecture.

Levels of testing

Levels of testing
We divide Testing In Four Level,Unit Testing,Integration Testing, System Testing and Acceptance Testing.
Unit testing:-
Generally the code which is generated is compiled. The unit test is white box oriented and the steps can be conducted in parallel for multiple components.
1. The module Interface is tested to ensure that information properly flows into and out of the program unit under test.
2. The local data structure is examined to ensure that data stored temporarily maintains its integrity during all steps in an algorithm’s execution.
3. Boundary conditions are tested to ensure that the module operates properly at boundaries established to limit and restrict processing.
4. All the statements are executed at least once and error handling paths are tested
Integration testing:-
Integration testing is a systematic technique for constructing the program structure .After Performing Unit Testing perform integration testing. you have like
Top down :-Top down integration testing with the main routine and one or two immediate subordinate routines in the system structure it is good to have modules are integrated as they are developed, top level interfaces are tested first.
Bottom up :-Bottom up integration testing is the traditional strategy used to integrate the components of a software system into a functioning whole
Regressive testing:- Retesting the already test modules and adding new modules .Regressive testing is an important strategy for reducing side effects.
System Level Testing :
System Testing is third level of Testing In this level we check Functionility of application.
Performance testing: – Performance testing is designed to test the run time performance of software or hardware.
Recovery testing :- is a system test forces the software to fail in a variety of ways and verifies that recovery is properly performed .if recovery is automatic, re initialization , check pointing ,data recovery and restart are evaluated for correctness.
Security Testing: – Security testing attempts to verify that protection mechanisms built into a system will in fact, protect it from improper penetration.
Acceptance Testing:- When customer software is built for one customer, a series of acceptance tests are conducted to enable the customer to validate all requirements. conducted by the end user rather than software engineers, an acceptance test can range from an informal test drive to a planned and systematically executed series of tests. If software is developed as a product to be used by many customers, it is impractical to perform acceptance tests with each one. Most software product builders use a process called alpha and beta testing to uncover errors that only the end user seems able to find .

Automation Testing- Win Runner

Automation Testing- Win Runner

Testing Automation: Software testing can be very costly. Automation is a good way to cut down time and cost. Software testing tools and techniques usually suffer from a lack of generic applicability and scalability. The reason is straight-forward. In order to automate the process, we have to have some ways to generate oracles from the specification, and generate test cases to test the target software against the oracles to decide their correctness. Today we still don’t have a full-scale system that has achieved this goal. In general, significant amount of human intervention is still needed in testing. The degree of automation remains at the automated test script level.There are Many automation Testiing Tool For Functional & Regression Testing,Performance Testing, Bug Tracking and Test Management Tool.

What are the Advantages of Automation in testing?
  • Fast
  • Reliable
  • Repeatable
  • Programmable
  • Comprehensive
  • Reusable
Win Runner: Win Runner is a Functional & Regression Testing Tool of Mercury.

Win Runner:

  • Need For Automation
  • WinRunner Introduction
  • WinRunner Basic Session / Examples
  • WinRunner Advanced Session / Examples

Few Reasons

  • Running test manually is boring and frustrating
  • Eliminates human error
  • Write once, run as many times as needed
  • Provides increased testing coverage
  • Allows testers to focus on verifying new rather than existing functionality
  • Creates tests that can be maintained and reused throughout the application life cycle

WinRunner is functional testing tool

  • Specifically a regression test tool
  • Help in creating reusable and adaptable script
  • Used for automating testing process
  • Need to write scripts in TSL for the same
  • Help in detecting early defects before regression Testing
  • Specifically a regression test tool
  • Help in creating reusable and adaptable script
  • Used for automating testing process
  • Need to write scripts in TSL for the same
  • Help in detecting early defects before regression testing

Test Plan Documenting System

  • Test Plan Design
  • Test Case Design
  • Test Script Creation – Manual & Automated

Test Execution Management

  • Scenario Creation
  • Test Runs

Analysis of Results

  • Reports & Graphs

Defect Tracking System WinRunner Testing Process

  • Create GUI map
  • Create tests
  • Debug tests
  • Run tests
  • Examine results
  • Report defects

Testing Process of Win Runner in Detail WinRunner testing process involves six main stages .

  • Create GUI Map File : So that WinRunner can recognize the GUI objects in the application being tested
  • 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.
  • Debug Test: run tests in Debug mode to make sure they run smoothly
  • Run Tests: run tests in Verify mode to test your application.
  • View Results: determines the success or failure of the tests.
  • 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.

WinRunner Testing Modes Context Sensitive

  • Records the actions on the AUT in terms of GUI objects.
  • Ignores the physical location of the object on the screen


  • Records mouse clicks, keyboard input, and the exact x- and y-coordinates traveled by the mouse

Types of GUI Map files

GUI Map File per Test mode

  • Separate GUI Map File for each test

Global GUI Map File mode

  • Single GUI Map File for a group of tests

Different modes for running the tests

  • Verify
  • Debug
  • Update


  • GUI Checkpoint
  • Bitmap Checkpoint
  • Database Checkpoint
  • Synchronization point

GUI Checkpoint

  • A GUI checkpoint examines the behavior of an object’s properties
  • During execution, the current state of the GUI objects is compared to the expected results

Bitmap Checkpoint

  • Compares captured bitmap images pixel by pixel
  • When running a test that includes bitmap checkpoints, make sure that the screen display settings are the same as when the test script was created. If the screen settings are different, WinRunner will report a bitmap mismatch .

Database Checkpoint

  • A query is defined on the database and the database checkpoint checks the values contained in the result set
  • Result set is a set of values retrieved from the results of the query
  • Ways to define the query
  • (a) Microsoft query
  • (b) ODBC query
  • (c) Data junction

Synchronization point

  • When you run tests, your application may not always respond to input with the same speed
  • Insert a synchronization point into the test script at the exact point where the problem occurs
  • A synchronization point tells WinRunner to pause the test run in order to wait for a specified response in the application

Using Regular Expressions

  • Enables WR to identify objects with varying names or titles
  • Can be used in
  • An object’s physical descriptions in the GUI map
  • GUI Checkpoint
  • Text Checkpoint

Virtual Objects:

  • Can teach WinRunner to recognize any bitmap in a window as a GUI object
  • Make test scripts easier to read and understand

Creating Data-Driven Tests:

  • To test how the AUT performs with multiple sets of data
  • Can be done using the..
  • Data Driver Wizard
  • Add command manually in script

Advantage of Data-Driven Tests:

  • Run the same test with different data
  • Test the AUT for both, positive and negative results
  • Expandable
  • Easy to maintain

Bug Life Cycle

The main purpose behind any Software Development process is to provide the client (Final/End User of the software product) with a complete solution (software product), which will help him in managing his business/work in cost effective and efficient way. A software product developed is considered successful if it satisfies all the requirements stated by the end user.

 Any software development process is incomplete if the most important phase of Testing of the developed product is excluded. Software testing is a process carried out in order to find out and fix previously undetected bugs/errors in the software product. It helps in improving the quality of the software product and make it secure for client to use.

What is a bug/error?
A bug or error in software product is any exception that can hinder the functionality of either the whole software or part of it.

How do I find out a BUG/ERROR?
Basically, test cases/scripts are run in order to find out any unexpected behavior of the software product under test. If any such unexpected behavior or exception occurs, it is called as a bug.

What is a Test Case?
A test case is a noted/documented set of steps/activities that are carried out or executed on the software in order to confirm its functionality/behavior to certain set of inputs.

What do I do if I find a bug/error?
In normal terms, if a bug or error is detected in a system, it needs to be communicated to the developer in order to get it fixed.

Right from the first time any bug is detected till the point when the bug is fixed and closed, it is assigned various statuses which are New, Open, Postpone, Pending Retest, Retest, Pending Reject, Reject, Deferred, and Closed.

(Please note that there are various ways to communicate the bug to the developer and track the bug status)

Statuses associated with a bug:
When a bug is found/revealed for the first time, the software tester communicates it to his/her team leader (Test Leader) in order to confirm if that is a valid bug. After getting confirmation from the Test Lead, the software tester logs the bug and the status of ‘New’ is assigned to the bug.

After the bug is reported as ‘New’, it comes to the Development Team. The development team verifies if the bug is valid. If the bug is valid, development leader assigns it to a developer to fix it and a status of ‘Assigned’ is assigned to it.

Once the developer starts working on the bug, he/she changes the status of the bug to ‘Open’ to indicate that he/she is working on it to find a solution.

Once the developer makes necessary changes in the code and verifies the code, he/she marks the bug as ‘Fixed’ and passes it over to the Development Lead in order to pass it to the Testing team.

Pending Retest:
After the bug is fixed, it is passed back to the testing team to get retested and the status of ‘Pending Retest’ is assigned to it.

The testing team leader changes the status of the bug, which is previously marked with ‘Pending Retest’ to ‘Retest’ and assigns it to a tester for retesting.

After the bug is assigned a status of ‘Retest’, it is again tested. If the problem is solved, the tester closes it and marks it with ‘Closed’ status.

If after retesting the software for the bug opened, if the system behaves in the same way or same bug arises once again, then the tester reopens the bug and again sends it back to the developer marking its status as ‘Reopen’.

Pending Reject:
If the developers think that a particular behavior of the system, which the tester reports as a bug has to be same and the bug is invalid, in that case, the bug is rejected and marked as ‘Pending Reject’.

If the Testing Leader finds that the system is working according to the specifications or the bug is invalid as per the explanation from the development, he/she rejects the bug and marks its status as ‘Rejected’.

Sometimes, testing of a particular bug has to be postponed for an indefinite period. This situation may occur because of many reasons, such as unavailability of Test data, unavailability of particular functionality etc. That time, the bug is marked with ‘Postponed’ status.

In some cases a particular bug stands no importance and is needed to be/can be avoided, that time it is marked with ‘Deferred’ status.

Very Basics Of Testing


Software testing is a critical element of software quality assurance and represents the ultimate review of specification, design and coding. Testing is the exposure of the system to trial input to see whether it produces correct output.

Testing Phases:

Software testing phases include the following:

Test activities are determined and test data selected.

The test is conducted and test results are compared with the expected results.

There are various types of Testing:

Unit Testing:

Unit testing is essentially for the verification of the code produced during the coding phase and the goal is test the internal logic of the module/program. In the Generic code project, the unit testing is done during coding phase of data entry forms whether the functions are working properly or not. In this phase all the drivers are tested they are rightly connected or not.

Integration Testing:

All the tested modules are combined into sub systems, which are then tested. The goal is to see if the modules are properly integrated, and the emphasis being on the testing interfaces between the modules. In the generic code integration testing is done mainly on table creation module and insertion module.

System Testing:

It is mainly used if the software meets its requirements. The reference document for this process is the requirement document. Acceptance Testing:

It is performed with realistic data of the client to demonstrate that the software is working satisfactorily. In the Generic code project testing is done to check whether the Creation of tables and respected data entry was working successfully or not.

Testing Methods:

Testing is a process of executing a program to find out errors. If testing is conducted successfully, it will uncover all the errors in the software. Any testing can be done basing on two ways:

White Box Testing:

It is a test case design method that uses the control structures of the procedural design to derive test cases. using this testing a software Engineer can derive the following test cases:

Exercise all the logical decisions on either true or false sides. Execute all loops at their boundaries and within their operational boundaries. Exercise the internal data structures to assure their validity.

Black Box Testing:

It is a test case design method used on the functional requirements of the software. It will help a software engineer to derive sets of input conditions that will exercise all the functional requirements of the program. Black Box testing attempts to find errors in the following categories:

Incorrect or missing functions

Interface errors

Errors in data structures

Performance errors

Initialization and termination errors

By black box testing we derive a set of test cases that satisfy the following criteria:

Test cases that reduce by a count that is greater than one, the number of additional test cases that must be designed to achieve reasonable testing.

Test cases that tell us something about the presence or absence of classes of errors rather than errors associated only with a specific test at hand.

Testing can be done in two ways:

Bottom up approach

Top down approach

Bottom up approach:

Testing can be performed starting from smallest and lowest level modules and proceeding one at a time. For each module in bottom up testing a short program executes the module and provides the needed data so that the module is asked to perform the way it will when embedded with in the larger system. When bottom level modules are tested attention turns to those on the next level that use the lower level ones they are tested individually and then linked with the previously examined lower level modules.

Top down approach:

This type of testing starts from upper level modules. Since the detailed activities usually performed in the lower level routines are not provided stubs are written. A stub is a module shell called by upper level module and that when reached properly will return a message to the calling module indicating that proper interaction occurred. No attempt is made to verify the correctness of the lower level module.

Phone Interview Tips

Now a days, employers use telephone interviews as a way of identifying and recruiting candidates for employment. Phone interviews are often used to screen candidates in order to narrow the pool of applicants who will be invited for in-person interviews.

While you are actively job searching, it is important to be prepared for a phone interview on a moments notice. You never know when a recruiter call and ask if you have a few minutes to talk.

When there is a call for you from company then you need to clear your head and shift your focus from family to your career. When you pick up the phone, ask the recruiter to repeat his or her name. Verify the spelling and write it down. Use the recruiter’s name in your response. You are now ready to make a good impression during your first five minutes.

There are three basic types of telephone interviews:

You initiate a call to the Hiring Manager and he or she is interested in your background. The call from that point forward is an interview.
A company calls you based upon a previous contact. You will likely be unprepared for the call, but it is still an interview.
You have a pre-set time with a company representative to speak further on the phone.
Here are some phone interview tips to help you:

1.Be Prepared For preparing the phone interview, there are several things you can do. To prepare for the phone interview you can consider the following points:

You can keep all of your employer research materials within easy reach of the phone.
You can tape your resume to a wall near the phone. It will help a lot during the call and will be a constant reminder for your job search.
Have a notepad handy to take notes.
If the phone interview will occur at a set time, Following are some additional points you have to consider:

Turn off call waiting on your phone.
Place a “Do Not Disturb” note on your door.
Warm up your voice while waiting for the call.
Have a glass of water handy, so that you will not have a chance to take a break during the call.
Turn off your stereo, TV, and any other potential distraction.

2.Do not be afraid to pick up the phone The first step in the hiring process is the telephone interview. It may happen that when you pick up the phone, the call may be from any company. Then that time ask the recruiter to repeat his or her name. Verify the spelling and write it down. Use the recruiter’s name in your response.
If there is really any problem for you to talk, then ask for a telephone number and a convenient time to call back. You are now ready to make a good impression during your first five minutes.

The phone interview tips will help you master the phone interview and get you to the next step – the face to face interview. So do not afraid to pick the phone.

3.Be a good listener During telephonic interview, you must keep in mind that you must be a good listener.
Avoid interrupting and let the recruiter complete his thought or question before you respond. Ask for clarification. Use open-ended questions. The more information you can gather, the better you can respond. We must know the fact that good listener is the best quality.

4.During phone interview Here are the some points for successful phone interviewing. Follow these simple rules and you should achieve success in this important phase of job-hunting.
Here are some do’s for phone Interviews:

  1. Smile always helps you in every situation. Smiling will project a positive image to the listener and will change the tone of your voice.
  2. Do keep a glass of water handy, in case you need to wet your mouth.
  3. Do know what job you are interviewing for.
  4. Speak slowly and enunciate clearly.
  5. Take your time, it is perfectly acceptable to take a moment to collect your thoughts.
  6. Remember your goal is to set up a face to face interview. After you thank the interviewer ask if it would be possible to meet in person.
  7. Do give accurate and detailed contact information in your cover letter so your interviewers can easily connect with you.
  8. Household members must understand the importance of phone messages in your job search.
  9. Use the person’s title (Mr. or Ms. and their last name.) Only use a first name if they ask you to.
  10. When being interviewed by phone, do make sure you are in a place where you can read notes, take notes, and concentrate.
  11. If you cannot devote enough time to a phone interview, do suggest a specific alternate time to the recruiter.
  12. Give short answers.
  13. Do ensure that you can hear and are being clearly heard.
  14. Do create a strong finish to your phone interview with thoughtful questions.

Following are some Don’ts for phone Interviews:

  1. Do not smoke, chew gum, eat, or drink.
  2. Do not interrupt the interviewer.
  3. Do not cough. If you cannot avoid these behaviors, say, “excuse me.”
  4. Do not feel you have to fill in the silences. If you have completed a response, but the interviewer has not asked his or her next question, do not start anything new; ask a question of your own related to your last response.

5.The Open and Available Technique You have a major advantage in a phone interview which does not exist in a face-to-face interview. You cannot be seen. Use this to your advantage.
Have all of your materials on yourself and the employer open and available on your desk as you are speaking on the phone. This includes not only your resume, but also a “cheat sheet” of compelling story subjects, which you would like to introduce. It can also include a “cheat sheet” about the employer, including specific critical points describing the employer and their products.

As anyone may be interviewer is speaking with you on the other end of the phone, he/she has no idea that you are actually being prompted from a document as you are speaking. All that person can hear is a well-informed, well-prepared interviewee. Keep in mind that this preparation is not “cheating” at all. It is preparation, pure and simple.

So have your materials open and available when you are preparing for a phone interview. They are there to support you and enhance your value to the employer, who will greatly respect your ability to answer questions with focus and meaningful content.

6.Focus on what you offer and can do The phone interview is surprise for us, so we must prepared for the telephonic interview. The recruiter’s mission is to screen candidates and recommend those who will best meet the employer’s needs.
When describing your background, avoid the negative points. You will only get one chance to make a positive first impression. Stay focused by reviewing and use the key points you wrote down about your strengths.

7. Sound positive, self-confident and focused The recruiter has called you indicates that your resume or a member of your network has given him or her a favorable impression of you. You need to confirm this impression. Put a smile on your face and into your voice.
You need to demonstrate your enthusiasm and interest through your voice and telephone manner. Check your voice by taping your voice. Listen it very carefully and make the necessary changes.

8. Write out your responses and practice reading them aloud This will help you to remember the response. By knowing what to say, you will seem more confident and all qualities that recruiters seek in candidates. Most candidates usually are asked about their salary expectations during screening interviews. Recruiters and employers usually have a salary range in mind, and while often unwilling to share it at this stage, they expect you to answer.
Your objective at this point is to win acceptance and be recommended for further consideration. Accordingly, you may want to avoid providing a direct answer to this question. These issues could include non-cash benefits and compensation, scope of responsibilities, work environment, job location, career advancement and others.

9.Ask about the next step At the end of the interview, tell the recruiter you are interested. Ask about the next step in the interview process as well as the hiring timetable. If you do not receive a positive response and you are sincerely interested, ask the recruiter if he or she has any areas of concern.
If there is a misunderstanding about you or the recruiter does not seem certain that you are suitable, try to clarify the problem, then ask again about the next step and timetable.

10.After the Interview After the phone interview. Following are some points which we have to consider after the phone interview:

Take notes about how you answered and what you were asked.
Remember to say “thank you.” at the end of conversation.