Designing Test Cases

A test case is a detailed procedure that fully tests a feature or aspect of a property. Whereas the test plan describes what the test, a test case describes how to perform a particular test. You require to create a test case for each test contained in the test plan.

A test case includes:
• The purpose of the test.
• The special hardware requirements, such as a modem.
• Requirements of special application, as a tool.
• specific configuration or setup requirements.
• The expected results or success criteria for the test.
• A description of how the test.

test cases must be written by a team member who understands the function or technology being tested, & each test case should be submitted for peer review.
Organizations take a variety of approaches to document test cases, which range from developing detailed, recipe-like steps to writing a general description. In detailed test cases, the steps portray exactly how the test. In descriptive test cases, the tester decides at the time of the test & how the test information used.Most organizations prefer detailed test cases, because the determination of pass or fail criteria is usually easier with this type of case. Also, detailed test cases are reproducible & are easier to automate than descriptive test cases. This is important if you compare the test results over time, such as when trying to optimize the settings. Of the Detailed test cases are more time to create & maintain. Moreover, test cases that are open to interpretation are not repeatable & can require debugging, time consuming it would be better spent on the test.

Test Case Design

Test Case ID:
It is the distinctive number assigned to test cases to be identified.

History:
Each test case must have its revision history in order to know when & by whom is created or modified.

Description of test:
The description of the test case if you are going to try.

Function to be tested:
The name of the function to be tested.

Environment:
It tells in which environment is being tested.

Test Setup:
All you require outside your application
for example printers, network & so on.

Performance Test:
Detailed description of each step of implementation.

Expected results:
The description of what is expected to function.

Actual results:
go / no

If not - give a description of what you have observed.


If you pass - What actually happens when you run the test.

Test Cases

In application engineering, the most common definition of a check case is a set of conditions or variables in which an evaluator to decide whether a requirement or use case on an application is partially or satisfied. It may take plenty of check cases to decide that a requirement is fully satisfied. To fully check that satisfies all the requirements of an application, must have at least three check case for each requirement unless the requirement has sub-requirements.In that situation, each sub requirement must have at least three check case. This is usually completed by a traceability matrix. Some methodologies, like RUP, recommended the creation of at least three check cases for each requirement. Three should check positive for the obligation and other negative tests should be performed. Written check cases should include a description of the functionality of the check, and the preparation necessary to ensure that the check can be conducted.If the application is created without formal requirements, then check cases can be written based on the normal operation of the programs accepted a similar class. In some schools, check, check cases are not written at all, but the activities and results are presented after the tests are executed.What characterizes a formal, written check case is that there is a known input and an expected outcome, which is made before the check runs. The known input should check a precondition and the result is expected to prove a post condition.In special circumstances, may be a need to run the check, produce results and then a team of experts will assess whether the results can be thought about a pass. This often happens in determining new product performance issue. The first check is taken as a baseline for later tests of the product release cycles.A variation of check cases are the most commonly used in acceptance tests. Acceptance testing is completed by a group of finish users or customers of the process to ensure that the process developed meets the specified requirements. User acceptance testing is often differentiated by the inclusion of the path happy or positive check cases.Written check cases are usually collected in check suites.

Win Runner

Win Runner, Mercury Interactive Company, functional testing device. It is used to quickly generate & run sophisticated automated testing in your application.
Win Runner helps automate the testing system, check development to execution. You can generate check scripts adaptable & reusable, who challenge the functionality of your application. Before a program version, you can run these tests on a single race during the night allowing you to detect & ensure superior program quality.
Contents:

* Lab Exercise
* Features
* Checkpoints
* Synchronization point
* Merge
* GUI Spy
* TSL Scripts

Features:Recovery Manager provides an easy way to wizard that guides you through the system of defining a recovery scenario.

Auto Recovery:
Now you can install WinRunner unattended installation using the preferences historicallyin the past recorded. This feature is beneficial for those products that use business management application or any mechanism for automatic distribution of application.
Better integration with TestDirector.You can specify one or more operations that permit the trial to continue after an event of emergency. This feature is useful during the check is completed without supervision, when errors or accidents could disrupt the testing system until manual intervention occurs.

Silent Installation
TestDirector WinRunner works with both 6.0, which is a client / server based, & TestDirector 7. x, which is based on the Web. In reporting on the shortcomings of the window of WinRunner check results, basic information about the check & control stations can be automatically filled in the form of TestDirector's defect. WinRunner now supports versioning, which allows the updating & revision of check scripts while maintaining elderly versions of each check.

Support for Terminal Servers
Support Citrix & Microsoft Terminal Server
to open multiple clients of the window & run WinRunner on each client as a distinctive user. Moreover, this can be used to run multiple WinRunner LoadRunner Vusers.
Support environments WinRunner 7.5 includes support for Net Explorer 6.x, Netscape 6.x, Windows XP & Sybase PowerBuilder 8, in addition to 30 + the environment & supported by WinRunner 7.

WinRunner provides the most powerful, productive & cost effective solution for verifying the functionality of enterprise applications. For more information on WinRunner, contact a representative of Mercury Interactive for local pricing, evaluation & information distribution.
WinRunner (Features & Benefits)Try the functionality of multiple combinations of information in a single check WinRunner DataDriver Wizard eliminates the programming to automate testing of sizable volumes of information. This saves testers of sizable amounts of time preparing scripts & lets you check further.
Significantly increase the power & flexibility of tests without any programming The function generator provides a quick & error free for check & improve the scripts without any programming knowledge. Testers can basically point to a GUI object, & WinRunner will examine it, decide its class & suggest an appropriate function to use.Use multiple verification types to ensure sound functionality WinRunner provides checkpoints to the text, GUI, bitmaps, URL links & database, allowing testers to compare expected & actual results & identify potential problems with plenty of objects of GUI & its functionality.
Verify the integrity of the information in its database back-end Database verification confirms the values stored in the database & ensures accuracy of transactions & information integrity of records to be updated, deleted & added.View, store & verify at a glance every attribute of tested objects WinRunner GUI Spy automatically identifies, records & displays the properties of standard objects GUI, ActiveX controls & Java objects & methods. This ensures that every object in the user interface is recognized by the script & can be tested.Keep testing & reusable build scripts The map graphic user interface provides a centralized object repository, allowing testers to verify & change any tested object. These changes are automatically propagated to all appropriate scripts, eliminating the need to build new scripts each time the application is unchanged.Multiple check environments with a single application WinRunner supports over 30 environments, including Web, Java, Visual Basic, etc. It also provides specific solutions for leaders, ERP / CRM applications as SAP, Siebel, PeopleSoft as well as a quantity of others.

Lab Exercise:
* Start-> Program Files-> WinRunner-> WINRUN
* Select a quick check script wizard (or) create-> Speedy Check Script wizard
* Click the Next button of welcome to the script wizard

 Using the Speedy Check Script wizard

* Find the results of each script & select Tools-> text document in the WinRunner check results.

* Select hand icon & click the application window & Cilck Next button
* Select the tests & click the Next button
* Select the navigation controls & click the Next button
* Set the learning flow (Express or global) & click the More Info button
* Select YES or NO start application, then click the Next button
* Save the start script & map files graphical user interface, click the Next button
* Save the selected tests, click the Next button
* Click the OK button
* Script generated.then the scripts are run. Run-> Run from top

* Open an application.
* Select Tools-map configuration graphical user interface, Windows pops-up.
* Click the Add button, click the hand icon.
* Click on the object, to be configurable. A user-defined class for that object is added to the list.
* Select the user defined class that you added & press the Configure button. "
* Assigned to the class (corresponding stanadard Select a class in the combo box).
* You can move the properties of all obtainable properties analysis. By selecting the Insert button
* Select the Selector & recording methods.
* Click the OK button
* Now, you identify the WinRunner observe objects configured.

Using GUI-Map Configuration Gizmo:

Recording mode using ContextSensitive:
o Create-> Record context sensitive
Select home o-> Program Files-> Accessories-> Calculator
Or some action on the application.
Stop recording or
or Run from Top; Click OK.
Registration Using analog mode:
o Create-> Insert function-> Function generator
Name of the function o: (select 'invoke_application' combo box).
or Click the button args; file: MSPaint.
o Click on the button "Paste" button Click "Run" to open the application, & finally click "Close".
o Create-> Record-Analog.
Draw or any picture in the brush.
or Stop Recording
or Run-> Run from Start, click "OK".
GUI check points-Single Property Check:
o Create-> Insert function-> Function Generator-> (Function name: Invoke_application; File: Flight 1a)
Click on'paste or 'y on'execute click' & then close the window.
o Create-> Record Context sensitive.
or any transaction & stop recording.
o Create-> GUI Check Point-> For individual property.
o Click on some button whose property to be checked.
Click or paste.
Now close the application or Flight1; Run-> Run from top.
or Press 'OK' displays the results of the window.
Double or click on the income statement. It shows the expected value & the actual value of the window.
GUI checkpoint for object / window property:
o Create-> Insert function-> Function Generator-> (Function Name: Invoke_application; File: Flight 1a)
Click on'paste or 'y on'execute click' & then close the window.
o Create-> Record Context sensitive.
or any transaction & stop recording.
o Create-> GUI Check Point-> Object / window properties.
o Click on some button whose property to be checked.
Click or paste.
40Now close the Flight or the 1st application; Run-> Run from top.
or Press 'OK' displays the results of the window.
Double or click on the income statement. It shows the expected value & the actual value of the window.

GUI CHECK POINTS-For Object/Window Property:
* On'paste Click 'on'execute and click' and then close the window.
* Create-> Record Context sensitive.
* Make sure operations and stop recording.
* Create-> Insert function-> Function Generator-> (Function name: Invoke_application; File: Flight 1a)
* Create-> GUI Check Point-> For Multiple Object.
* Click on some button whose property to be checked.
* Click the Add button.
* Click on a few objects and right click to quit.
* Select each object and select the properties to be checked for that object: click 'OK'.
* Run-> Run from Top. It displys results.

BITMAP CHECK POINT:

* Create-> Insert function-> Function Generator-> (Function name: Invoke_application; File: Flight 1a)
* On'paste Click 'on'execute and click' and then close the window.
* Create-> Record Context sensitive.
* Enter the user name, password and click the 'OK' button
* Open the Order in the Flight Reservation Application
* Select File-> Fax & Order enter Fax, Signature
Cancel '* Press the button. "
* Create-> Stop Recording.
* Then open Fax Order in Flight Reservation Application
* Create-> Bitmap Check-> For obj.window;
* Run-> Run from top.
* The check fails and you can see the difference.

For object / window.

* Open new Paint Brush file;
* Create-> Bitmapcheck point-> from screen area.
* Archive of painting appears, select an picture with the crosshair pointer.
* Make a slight modification in the paint file (you can also run in the same picture file);
* Run-> Run from Top.
* The check fails and you can see the difference in the images.

For Screen Area:

Use default check (for MS-Access only)

DATABASE CONTROL POINTS

* Create-> Database Check Point-> Default check
* Select the check box Specify SQL Statement
* Click the Next button
* Click on the Generate button
* Type New DSN name and click the New button
* Next, select a driver that you need to generate a database and double clcik that driver
* Then select the Browse button and retype the same DSN name and click the Save button.
* Click the Next button and click the Finish button
* Select the database and path set by the name of your database
Button OK '* Click' and click your DSN window 'OK' button
* Type of the SQL query in SQL table

* Thebe click the Finish button Note: The same technique will be Custom Check Point

Runtime Record Check Point.

* Repeat above 10 steps.
* Type of request from one related tables in SQL box Ex: select Orders.Order_Number, Flights.Flight_Number Orders, where flights Flight.Flight_Number = Orders.Flight_Number.
* Select the Finish button
* Select hand icon and select button on your application Order No
* Click Next.
* Select hand icon and select button in your application not Filght
* Click the Next button
* Select from the following check box: 1. A record match 2. Three or more match records. 3. No match registration
* Select Finish button the script will be generated.

Synchronization Point:
* Open the Start-> Programs-> Win Runner-> Sample applications-> Flight1.
* Open Window WinRunner
* Create-> RecordContext sensitive
* Insert the new order information & click "Order insert button
* After inserting, click the "Delete" button
* Stop recording & save the file.
* Run-> Run from top: Gives your results.

To Obj / Win Properties:
Without synchronization:

* Preferences-> General Options-> Click "Run" tab. "Timeout for checkpoints & conditions of value statements': 10000 follow 1 to 7 -> screen test" Error message "that the" Delete "button is disabled.

With synchronization:

* Keep the timeout value: 1000 only
* Go to file check script, said insert after "Insert Order", press release.
* Create-> Synchronization-> For obj / Window Property
* Click on "Delete Order" & select enable property, click Paste.
* Insert the synchronization statement.

(Note: Check if the order is not increasing when ever Order is created)
o Open Flight1; Analysis-> graphs (open)
o Create-> get text-> from screen area
Capture or # of tickets sold; right clcik & close the graph
or Now, insert new order, open the graph (Analysis-> graphs)
or Go to WinRunner window, create-> get text-> from screen area
Capture or # of tickets sold & right click, close the graph
or Save the script
o Add the script followinf; If (text2 == text1) tl_step ( "text comparison", 0, "Update"); more tl_step ( "text comparison", 1, "update property");
or Run-> Run from the top to see results.
Get Text: For Object / Window:
or open a "Calc" application in three windows (Assuming both are three versions)
o Create-> get text-> for obj / Window
or Click a button on a window
Stop recording or
Repeat or 1 to 4 to capture the text of three subject to another "Calc application.
o Add the following TSL (Note: Modify "text" Text1 & Text2 for each statement) if (text1 == text2) report_msg ( "correct" text1); sales report_msg ( "incorrect" text2);
or Run & see the results

To Obj / Win Bitmap:
o Create-> Record context.
Insert information or new order & click "Insert Object" button
Stop recording O & save the file.
or Go to TSL script, before the insertion of information in to "date of flight" insert pointer.
o Create-> Synchronization-> For Obj / Win Bitmap is selected.
or (Make sure to book your flight
empty), click "flight data" text box
or Run-> Run from the Start, is indicated. Note: (Keep "Timeout value": 1000)
Get Text: From Screen Area:

GUI-Spy:
Using the GUI Spy, you can view & verify the properties of any GUI
selected application object
* Tools-> Gui Spy \.
Subject * Select Spy On (select or window)
* Select the icon of the button by hand
* Point of view or the window & press Ctrl_L + F3.
* You can view & check the properties.

Using the Virtual Object wizard, you can assign a bitmap to a standard object class, define the coordinates of the object, & assign a logical name

Using Virtual Object Wizard:

& by GUI Map Editor

* Tools-> Virtual Object Wizard.
* Click the Next button
* Select the object class standard for the virtual object Ex: class: Push_button
* Click the Next button
* Click Mark Object button
* Drag the cursor to mark the area of the virtual object.
* Click the Next button
* Assign the logical name, this name will appear in the check script in order to register.
* Select Yes or No check box
* Click the Finish button
* Go to the WinRunner window & Create-> Start Recording.
* Do some operations
* Stop Recording

Using the map editor graphical user interface you can view & alter the properties of any object graphical user interface of the selected application.
To alter the logical name of an object in a GUI map file

* Tools-> GUI Map Editor
* Select the More Info button
* Select the WinRunner application message box informs "do you need to learn all the objects within the window" & select "Sí''botón.
* Select perticular object & select the Edit button
* Changing the logical name & click 'OK' button
* Save the file

To find an object in a map file graphical user interface:

* Select Tools> GUI Map Editor.
* Select View> GUI Files.
* Select File> Open to load the GUI map file.
* Click Search. The mouse pointer becomes a pointing hand.
* Click on the application object being tested. The object is highlighted in the GUI map file.

* Select Tools> GUI Map Editor.
* Select View> GUI Files.
* Select File> Open to load the GUI map file.
* Select the object on the map graphical user interface file
* Click on Show. The object is highlighted in the application.

To highlight an object in an application:

* Start-> Programs-> Wirunner-> Sample applications-> Flight 1A
* Open Flight Reservation Application
* Go to the window of WinRunner
* Create-> Start recording
* Select File-> new order, insert the fields, Click the Insert Order
* Tools-> Information Table; Type the names of customers in a row & second row tickets.
* By default five column names are Noname1 & Noname2.
* Tools-> Information Driver Wizard
* Click the Next button & select the information table
* Select Parameterizing the check, select the line of the check box line
* Click the Next button
* Parameterizing each specific values with column names of the tables; Repeat for all
* Finalli Click Finish button.
* Run-> Run from the top;
* See the results.

Merge the GUI Files:
Manual Merge

* Tools-> Merge GUI Map File a WinRunner message box informs you that all open GUI maps will be closed and all unsaved changes are discarded and OK button 'click'.

Auto merge

* Select the combination of manual. Manual Merge enables objects by hand add GUI from the source to target files.
* To specify the target file graphical user interface, click the Browse button map and GUI map to select the file
* To specify the source GUI map file user. Click the Add button and select source GUI map file.
Button OK '* Click'
* GUI Map File Manual Merge Tool opens, select the objects and move the file source to target file
* Close the GUI Map File Manual Merge Tool

By hand Retrive the Records form the basis

* Tools-> Merge GUI Map File a WinRunner message box informs you that all open GUI maps will be closed and all unsaved changes are discarded and OK button 'click'.
* Select the automatic combination combination. If you chose Auto Merge and the source of the map files graphical user interface merge successfully without conflicts,
* To specify the target file graphical user interface, click the Browse button map and GUI map to select the file
* To specify the source GUI map file user.
* Click the Add button and select source GUI map file.
Button OK '* Click' A message confirms the merge.

* 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)

TSL SCRIPTS :
1. web_browser_invoke (browser, site);

/ / Invoke the browser & open a particular page. The name of the browser (Web Explorer or Netscape browser). The address of the world wide web-site.
/ / Move the cursor to an picture on a page. The picture of the logical name of the picture. x, & x & coordinates of the mouse pointer when moved to an picture
2. (web_cursor_to_image picture, x, y);

3. (web_cursor_to_label label, x, y);

/ / Move the cursor to a tag on a page. the label the name of the label. x, & x & coordinates of the mouse pointer when moved to a label.
/ / Move the cursor to a link on a page. link name link. x, & x & coordinates of the mouse pointer when moved to a link.

4.web_cursor_to_link link, x, y);
5.web_cursor_to_obj (object, x, y);

/ / Move the cursor to an object in a page. The object name of the object. x, & x & coordinates of the mouse pointer when moved to an object.
6.web_event object event_name [, x, y]);

/ / UNS an event on a specified object. object The logical name of the registered object. event_name The name of an event handler. x, & x & coordinates of the mouse pointer when moved to an object

7.web_file_browse (object);

/ / You click a navigation button. subject of an object file type.

8.web_file_set object, value);

/ / Set the text value in an object file type. subject of an object file type. The value of a string.

/ / Returns the location of text within a frame.
9. (web_find_text framework text_to_find, result_array [, text_before, text_after, index, display]);

/ / Retrieves the text content of a frame.

10. (web_frame_get_text framework out_text [, text_before, text_after, index]);

11. web_frame_get_text_count (frame, regex_text_to_find, count);

12. web_frame_text_exists (frame, text_to_find [, text_before, text_after]);

/ / Returns the number of occurrences of a regular expression in a frame.

/
/ Returns a text value if it is in a frame.

13.web_get_run_event_mode (out_mode);
14. web_get_timeout (out_timeout);

/ / Returns the current execution mode out_mode The execution mode in use. If the mode is FALSE, the default setting, the check runs of mouse operations. If TRUE is specified, the check runs by events.
15.web_image_click picture, x, y);

/ / Returns the maximum time that WinRunner awaiting a reply from the world wide web. out_timeout The maximum interval in seconds

/ / Hypergraphic click a link or picture. The picture of the logical name of the picture. x, & x & coordinates of the mouse pointer when you click a link or picture hypergraphic.

16. web_label_click (label);


       
    

VBScript in QTP

Scripting language for Speedy Check Professional (QTP) is VBScript.VBScript (short for Visual Basic Scripting Edition) is a scripting language interpreted living through Microsoft Windows Script Host.VBScript has lots of powerful functions & provides excellent support for variables, information types & error handling.Three engines VBScript-Vbscript.dll can interpret, it is invoked by asp.dll is used in the net environment & Wscript.exe & Cscript.exe in Windows graphical environment using Windows Script Host (WSH, usually using WSH VBScript to automate systems management tasks. WSH is the process module that converts a VBScript file in a Windows executable file). Wscript.exe is used to display output & get information in the Windows graphical format, such as dialog & input boxes. Cscript. exe is used in a command line environment. When VBScript source code is contained in separate files with the extension. Vbs

Actions in QTP

When generating a new check, which contains a call to action. By breaking the tests in calls to multiple actions, they can design more modular & well-organized & professional tests. An action has its own check script, which contains all the steps recorded in the action, & all objects in its local object repository. An action is stored with the check in which it was created.Shares of breaking the check in to logical sections & units such as specific activities to perform in our application.If you generate a check that records in the technique (electronic mail), check inbox, & then log off the technique (email), the check can be structured as shown-a check of calling two different actions :

Check 1
Actions stored with Check 1
Call to Action 1 ---> Action 1 (access)
Call to action 2 ---> Action 2 (check inbox messages)
Call to Action 3 ---> Action 3 (checking out)

The actions help shape & repeat over specific elements of a check. They also make it not as hard to re-record the steps in an action when a portion of the application changes. For every action called for the check, QuickTest creates a corresponding action sheet in the information table so they can enter the parameters of the information table that are specific to that action only.Two types of actions are: Action not reusable reusable This action can not be called two times & that in the check that is stored.Action items are as reusable reusable functions in any programming language. If there is a method that must be included in several tests, you can register, alter & improve the method steps & save them in a reusable resource. Then they can call the action of other evidence, in lieu of recording, modifying & improving the same steps each time. It can be called several times by the check that is stored (the local check) as well as by other evidence.Deleting a reusable action is called by other evidence that the tests will fail.The external action is a reusable action stored with another check. External actions are read-only check in the call, but they select to use a local copy can edit the information in the information table for external action. When a call to an external action is inserted, the action is inserted in read-only format By default, the new shares are not reusable. Each share created on a check may be marked as non-reusable or reusable.You can make an additional call to any reusable or external action in the check by pressing the CTRL key while you drag & drop the action to another location in a parallel (sibling) level of the check.If you expect others to open their evidence & all actions in the tests are stored in the same unit, you ought to use relative paths for your reusable actions so other users can open their evidence, even if they have set their network drives differently.When jogging a check with multiple actions, check results are divided by the actions taken at each iteration so that they can see the outcome of each action, & can see detailed results of each individual action.

keyword view

In QTP (Speedy Check Professional) that first record of the check, then perform a check and then analyzing the results, but before jogging the check can also be enhanced with checkpoints and benchmarks.First let's talk a little about the view keyword savings plan, and then we'll talk about recording in the savings plan, then they will move on to other things. After recording all, QuickTest displays them as steps in the light of keywords, and generates a script (in a view of Experts).In the keyword view, there's 4 columns visible --Subject-The subject on which they make the transition, and may be a check object, an object of utility, function call, or a statement. This column displays an icon-based hierarchical tree. The highest level of the tree are actions, and all measures are contained within the branch of a tree.Operation The operation (methods or functions) to be performed on the selected item in the Item column, for example, click or Select.The value of the argument values for the selected operation, eg the mouse button to use when you click the picture.Documentation is a read-only such documentation that the move is not in an easy to understand sentence, for example, click "findFlights" picture.Assignment-The assignment of a value or variable for example, stored in cCols will store the return value of the current stage in a variable called cCols so you can use the value later in the check.

Parameterizing Tests in QTP

Substituting the parameters values set in QuickTest lets you expand the scope of a basic check. It is known as parameterization, greatly increases the power and flexibility of a check. A parameter is a variable that is assigned a value of an external information source or generator. The values in steps and checkpoints and also the values of the parameters of action can be parameterized. Parameters they will check how the application performs the same operations with multiple sets of information.There's three types of parameters:Check parameters of the action: the check parameters that let us use past values of the check. Action parameters let us pass values for other actions in your check. To use a value within a specific action, the value must be transmitted through the hierarchy of the action of proof necessary action. They can use the parameter to parameterize a step in the check. For example, suppose they require to parameterize a step in Action 3 with a value passed on the proof of the external application that runs (calls) of the check. They pass the value of the check level for Action 1 (at the top level action) to Action 3 (nested Action1 action) and then parameterize the step necessary by this action the input parameter value (which passed through the external application). Alternatively, you can pass a value output action parameters of a step of action to a later action of siblings in the same hierarchical level. For example, suppose that Action 2, Action 3, and are brothers Action4 actions in the same hierarchical level, and these are all actions Action 1 nested. You can parameterize a call to Action4 on the basis of an output value Retrieved from Action 2 and Action 3. They use these parameters in the action stage.Environment variable parameters lets us use variable values from other sources during the implementation period. These values can be any offer, or values that QuickTest generates for us on the basis of conditions and options you select.Parameters of the information table will let us generate a database check (or action) that runs several times using the information you supply. In each repetition, or iteration, QuickTest uses a different value of the information table.Random number parameters enable us to insert random numbers as check values.The values in steps and checkpoints can be parameterized while recording or editing the check.The values of the operation (technique or function arguments) defined for the step can also be parameterized.The values of the properties of objects can be parameters for a chosen way.When the value of a parameterized object property to a local object, they change the description of the check object in the local object repository. So, are parameters of all occurrences of the object specified in the action.
The parameterization of the value of a checkpoint property enables us to see how an application or a Website performs the same operation on different database.

QTP Recording

recording modes as well

The default mode of recording is the normal recording mode. Other Record low: At any time, whether an environment or an object not recognized by QuickTest, the use of low-level recording. It records at the object level and records all run-time objects as windows or WinObject check objects. QuickTest records all parent objects as check objects at windows and all other objects as objects WinObject check.

Analog recording or low-level recording. Normal mode is the default model and benefits from the QuickTest check objects, recognizing the objects in the application, regardless of its location on the screen. Analog Recording: Exact mouse and keyboard operations are recorded in relation to the screen or the application window. This savings plan also records and tracks every mouse movement, for example, recording a signature produced by dragging the mouse. Recording Devices steps can not be modified from within QuickTest.
Each step of recording mode recording low level shown in the keyword view and expert view. The two recording modes can be used in three check, for example, they can change to either analog or low level of recording in the midst of a recording session for specific steps and then return to normal recording mode.Analog recording and low level recording require more disk space than normal recording mode.Using analog recording if:The current mouse movement is what you require to record.The recording in analog mode can be relative to the screen or in relation to a specific window In analog recording in a separate file and stored with the action.Using low-level recording if: n analog recording mode, QuickTest adds to evidence RunAnalog a statement that calls the recorded analog file.The exact location of the operation on the screen of your application is necessary. Normal Mode QuickTest performs the step of an object even if it's moved to a new location on the screen.Environments or objects not supported by QuickTest. If the location of the object is important for your check, low level recording.

Checkpoints

After adding a checkpoint, QuickTest adds a checkpoint in the current row in the view of keywords and adds a checkpoint Time statement at the hearing of experts.A checkpoint lets you identify if the Web-site or application under check is working correctly or not by comparing a current value of a particular property with the expected value for that property.

* Standard Checkpoint.
Checkpoints of the picture *.
* Checkpoint bitmap.
* Checkpoints table.
* Access control point.
* Text Checkpoint.
* Page Checkpoint.
* Control Point database.
* XML checkpoints.

By default, the control point name is called the check object in which the checkpoint is being performed. They can change the name of the checkpoint if necessary.

Types of checkpoints:

The standard allows checkpoints to verify the property values on the Web-site or application under check. The standard checkpoints to evaluate (compare) the expected values of object properties captured during the recording to the current values of the object during a period of execution. For example, they see that a radio button is activated after being chosen. Standard checkpoints are supported all add-in settings.

The standard checkpoints can be used for controls of Tables,Images,Other objects in your application or web-site.Web page properties, and

The standard checkpoints can be created for all supported testing environments (as long as the appropriate plug-in (s) are loaded).


The picture checkpoints let you check the properties of an picture in the application or Web page. For example, you can verify that the picture source file chosen is correct or not. A checkpoint picture can also be created by inserting a standard checkpoint on an picture object. Checkpoints of the picture are Web-enabled add-in environment By adding checkpoints under the microscope table, they can check the contents of the tables shown in the application. For example, they verify that a particular value is displayed in a given cell. Some environments also support checking of object properties table. For example, a check that a table has the expected number of rows and columns. A checkpoint table can also be created by inserting a standard checkpoint on a table object.
With Bitmap Checkpoint can check an area of a Web page or application as a bitmap. While generating a check, they must specify the area to control by selecting an object. An entire object or any area within an object can be checked. Checkpoints are bitmap compatible with all the add-in settings
The checkpoints are supported for Web Accessibility complement in the vicinity of Accessibility Checkpoint recognizes areas of your Web-site does not conform to the World Wide Web Consortium (W3C) Web Content Accessibility Guidelines. For example, check whether the images on a Web page include ALT properties, necessary by the Accessibility Guidelines for the Content of the W3C.Checkpoint control page features a Web page. For example, you can check the time a web page takes to load or if a Web page contains broken links. A page checkpoint can also be created by inserting a standard checkpoint on the page object. Page checkpoints are supported for the Web add-in environment QuickTest can check that a string is displayed in the appropriate place in an application or a Web page with text Checkpoint. The text checkpoints are compatible with the Web add-in environment, and some Web-based add-in environments The contents of a database to access your application may be verified by the Checkpoint database. The checkpoint database is compatible with all the add-in settings. By adding XML checkpoints to your check, you can check the contents of individual XML information files or documents that are part of the Web application
. Checkpoint XML option is compatible with all the add-in settings.

Object Repository

An object which they know is a graphic user element in an application, for example a button or a list or an edit box and special features of an object within QuickTest called object properties. QTP stores the recorded object properties in Object Repository.Repositoriesare subject to one types of local and shared.
If objects are stored in a local object repository below are obtainable for specific actions, but not all actions. But if these objects are stored in one or more shared object repositories so lots of actions or evidence to be used.In QTP 9 they can associate multiple shared object repositories and action. If multiple shared object repositories are associated with an action and then also during the recording of objects in QTP stores corresponding Local Object Repository of the condition that these objects are already stored in the corresponding associated shared object repositories. This is the value that each time they generate a new action creates a new savings plan corresponding Local Object Repository. It is also true that the object repositories are associated with actions and no matter how often they listen to or record on the same object in our application in different actions the object is stored as check object separately in each of the local object repositories . Local object repository is automatically saved when you save the check. The expansion of the local object repository is. MTR, but not obtainable as a separate file as in the case of the shared object repository.By default QTP brands and local uses Object Repository. If they generate a blank check and make a recording on it, QTP automatically creates a local object repository for the information of the review or action and stores information on any object it finds in that object repository.When they open a check version was created using a savings plan before version 9 was asking us if they convert or view it in read-only format. In any case, if the check used earlier by action Object Repository, the objects in each repository action moves to the local object repository for each action in the check.You can also manipulate some aspects of the Local Object Repository Speedy check using Object Repository automation object model. For example, they can add, remove, rename check objects in the local Object Repository. (QuickTest Automation Object Repository for the documents under Repository automation object model lets you manipulate QuickTest object repositories and their contents from outside QuickTest.)If the check historicallyin the past used a repository of shared objects, the same shared object repository associated with each of the actions in the check, and the local object repository is empty.While learning or recording can be specified Shared Object Repository for the selected action. They can specify and associate one or more shared object repositories for each action. You can also generate new Shared Object Repository and associate it with our action.As said earlier QTP not add objects directly to the associated Shared Object Repository as a record, however, adds new local objects in Object Repository (if that object does not exist in associated Shared Object Repository).If the Shared Object Repository, QTP uses existing information and not add objects to object repository, if you record operations on an object that already exists, either shared or local Object Repository.
Surely they can export local objects to Shared Object Repository.There's different ways you can move objects local Shared Object Repository Object Repository:
1) You can update the shared object repository with the local object repository:

2) Export of objects shared object repository from the local object repository: In the Object Repository window select action aimed at local to be moved. Select File-> Export Local Objects.Select the location where you need to save the file. Click Save.

if they generate a new check will be created with Local Object Repository, you can associate any new or elderly Shared Object Repository with him, and so they can update you with Local Shared Object Repository Object Repository.In Object Repository Manager open the shared object repository (of coursework open the box read-only).The evidence in this case should not be opened. In Object Repository Manager go to Tools -> Update local repository. Select the check you are Local Object Repository to use. Click update everyone. It will move all objects to the shared object repository.

3) You can also merge objects from one object repositories (known as primary and secondary education in QTP 9) in to a new single
Object Repository (Repository of target objects in QTP 9). The original files are unchanged. It also lets you merge Local Object Repository in one or more actions (s) in a shared object repository. Is recommended as a primary object repository file in which they have invested much of their work, as has the greatest number of objects.

You can also copy objects to the Local Object Repository from the shared object repository. You can copy, paste and move objects in the Object Repository and local copy, paste and move objects on Shared Object Repository and between the shared object repositories. As stated earlier, you can also copy the objects to local Shared Object Repository Object Repository to alter locally.They compare one objects repositories using the repository device objects of comparison. The device allows to identify similarities, variations or changes between the one repositories of objects.You can not delete a partnership between local action and Object Repository.

Test object Model

A test object class includes a list of properties that can individually (only) to identify objects of that class and a set of appropriate methods that QuickTest can record.Test Object Model is a set of object types or classes that QuickTest uses to represent the objects in our application.

A test object is an object that QuickTest creates in the check that corresponds to (represent) the real object in the application. QuickTest uses the information stored on the object during the implementation period to identify and verify the object.

A walking time is the real thing (real) purpose of the application or web-site in which the methods are performed during the implementation period.

The property set for each check object is created and maintained by QuickTest. The property set for each object at runtime is created and maintained by the architect object (creator) (for objects in Microsoft Web Explorer, Netscape for Netscape objects).

Properties and methods of objects:

Similarly, methods of check objects are those that QuickTest recognizes and records when they are executed (done) on an object while recording, QuickTest runs and when the check or component runs. The object-time execution methods are the methods of the object in the application as defined by the architect object (creator). They can access and execute object methods of execution time using the Object property.


Some important points to recall about the methods and properties:

* Each test object technique to execute (perform) while recording is recorded as a separate step in the test. When you run the test, QuickTest runs (perform) the technique of test object recorded in runtime object.
* test Object Properties object are captured during recording. QuickTest uses the values of these properties to identify objects at run time the application for a period of implementation.
* Property values of objects in the application may vary. To make the test object property values match the value of the properties of the race to time, they can alter test object properties by hand while designing the test or component or the use of statements SetTOProperty during a performance period. You can also use regular expressions to identify property values.
* You can view or alter the test values to property that is stored with the test or component in the properties of objects or object repository dialog box.
* Can see the syntax of the object test methods and the point of view of time methods of any object in our desktop using the Methods tab of the Object Spy.
* You can retrieve or alter property values of the test object during the period of performance by adding GetTOProperty and SetTOProperty statements in the keyword view and expert view. They can retrieve the object's property values runtime during the execution by adding GetROProperty statements.

If the available test object methods or properties of an object are not sufficient or they do not provide the functionality they need, they can access the internal methods and properties of any object at runtime through the ownership of objects. You can also use the attribute object property to identify Web objects in the application according to user-defined properties.

QTP Testing Process

Check - A collection of measures organized in to seven or more actions, they can use to verify that our application works as expected. The check consists of shares (3 types of actions are non-reusable action in QTP, the Reusable action and external action).QTP (Rapid Test Professional) lets you generate tests and business components through the registration of operations carried out in its application.

Step 1) is planning to start building before a check, you must plan and prepare the necessary infrastructure. For example, determining the functionality you need to check, quizzes that check the specific functions of the application or complete site.Decide how they organize their object repositories.
Step 2) in the savings plan is the creation of tests or components
a) Any of a recording session with your application or Web-site.They can generate a check or component byOr b) Build an object repository and use these objects to add steps by hand in the keyword view and expert view. You can then change your check or component with special testing options and / or with programming statements.As you navigate through the application or site, QuickTest graphically displays each step you perform as a row in the view of keywords. The Documentation column See also keyword displays a description of each step easy to understand sentences. A step is something that causes or makes a change on your site or application, such as clicking a link or picture, or send a information form.
Step 4),

3) The third step is to insert control points in the check or component. A checkpoint is a verification point that compares a recent value for a specified property with the expected value of that property. This lets you identify if the web-site or application works properly.To check how the application performs the same operations with different information you can parameterize your check or component.Expanding the scope of the check or component by replacing fixed values with the parameters.When parameterizing the check or component, QuickTest substitutes the values set in the check or component with parametersEach period of implementation that uses a different set of information with parameters is called iteration.They can use lots of features of QuickTest functional tests to improve your check or component and / or add programming statements to accomplish the objectives of more complex tests.They may also use the output values to extract information from our check or component. An output value is a value retrieved during the implementation period and entered in to the Information Table or saved as a variable or parameter. They can subsequently use this output value as input in the check or component.After generating the check or component runs.

Step 5) is jogging the check
Run check or component to verify the site or application.When you run the check or component, QuickTest connects to your Web-site or application and performs each operation in a check or component, checking any text strings, objects, or specified tables. If the check parameters with the parameters of the information table, QuickTest repeats the check (or specific actions in the check) for each set of information values that have defined.Run the check or component to debug.They can control the implementation period to identify and eliminate defects in the check or component. They can use the

Step by step,

Step In to,

6) Sixth step is to analyze the results
And Outcommands step in a check or component step. They can also set breakpoints to stop the check or component at pre-determined points. They can see the value of the check variables or component whenever you stop at a breakpoint in the Debug Viewer.After check run or a component, they can see the results.

? See the results in the Output window.After jogging the check or component, they can see the results of the execution in the Check Results window. They can see a summary of the results as well as a detailed document.? Document of the defects identified during an execution session.If you install Quality Center, they can document defects fan database. They can instruct QuickTest to automatically document each step is not in the check or component, or you can by hand document from the window of the check results.
Rewrite

Automated Testing Tools

Quick Test Professional : Introduction
Quick Check Professional (QTP) is an automated functional Graphical User Interface (GUI) testing device that allows automation of user actions in a web-based computer or a client application.t is mainly used for automated functional regression testing. QTP uses a scripting language built on top of Vb Script to specify the check procedure, & manipulate objects & controls the application under check.

Contents:

* test Object Model
* Object Repositories
* QTP Recording
* Checkpoints
* Keyword View
* Testing parameterization
* Actions in QTP
* VBScript in QTP

Configuration Management Tools

There are three main tools of Configuration Management:
* Wincvs
* VSS
* CVS

Configuration Management Activities

The view of configuration management in this book is process oriented. Therefore, the definition includes areas of activity, which can be described in terms of process descriptions.The areas of activity described in detail in the following paragraphs are the identification, storage, exchange control & status reporting.Configuration management has lots of interactions with the development & support processes.

Traditional Configuration Management

1. Configuration Identification
Configuration Management traditionally has four elements:
2. Configuration Alter Control (or Alter Management)
3. Configuration Status Accounting
4. Configuration audit (or check)

These terms and standard definitions for the rule alter, but are essentially the same.Configuration Alter Control is a set of processes and stages of approval to alter the attributes of a configuration item and rebaseline them.Configuration Identification is the technique of identifying the attributes that define every aspect of the configuration of the news story. The configuration element is a product (hardware and / or program) that has an ultimate finish user. These attributes are recorded in the documentation and configuration baseline. Lines Force Base attribute formal configuration alter control processes to be effected in the case of a alter these attributes.Configuration status is the ability to record and document on the baseline configuration associated with each configuration item at any point in time.Configuration audits are divided in to functional and physical configuration audits. These configuration audits occur either at birth or at the time of the alter. The functional configuration audit ensures that functional and performance attributes of the configuration item are achieved, while the physical configuration audit ensures that the configuration item is installed in accordance with the requirements of its detailed design documentation.Configuration Management is widely used by plenty of military organizations to manage the technical aspects of complex systems, including managing weapons systems, vehicles and information systems. The discipline that combines aspects of the capability that these systems provide an organization with the issues of managing these systems alter over time.Apart from the military, CM is equally applicable to a wide range of fields and industrial and commercial sectors.

Configuration Management

Settings "to form from or after," derives from the Latin community, which means "with" or "together", and Figurative"to form." It also means "a provision of parts or elements." Configuration management therefore refers to the management of a provision of parts or elements. It is as simple as that.Configuration management, as they know it today began in the 1960s. In the 1970s, the U.S. government developed a series of military standards, including configuration management. Later, in the 1990s, lots of other publications to discuss standards and configuration management have emerged.In recent years, the growing understanding of application development as a set of interrelated processes has influenced the work on configuration management. This means that configuration management is now also thought about from the point of view of the method.

CM:This information typically includes the versions & updates that have been applied to installed program packages & the locations & network addresses of hardware devices. Special configuration management program obtainable. When a system needs a hardware or program upgrade, A computer technician can access the program & configuration management database to see what is currently installed. Then, the technician can make a more informed decision about the necessary update.Configuration Management (CM) is the detailed & updated information describing a company's computer systems & networks, including all hardware & program components.Four advantage of a configuration management application is that the entire collection of systems can be reviewed to ensure that any changes made to a system does not adversely affect any of the other systems.Configuration management is also used in program development, where it is called Unified Configuration Management (UCM). Using the UCM, developers can keep track of source code, documentation, problems, requested changes, & changes made.

1. Identification: an identification process is necessary to reflect product structure. This involves identifying the structure & types of components, making them distinctive & available in some way, giving each component a name, a version identification, & configuration identification.
2. Control: controlling the release of a product & changes throughout the lifecycle by having controls in place that ensures that compatible program through the creation of a reference product.
3. Audit & review: validate the integrity of a product & maintaining consistency between the components, ensuring that components are in an appropriate state throughout the project life cycle & that the product is a clear set of components.
4. Status Accounting: recording & reporting the status of components & change requests, & gathering vital statistics about components in the product.The definition includes the terminology & basic configuration element, release & version, etc. At a high level, most CM systems designers to incorporate the functionality of different levels of support to these aspects. But in the run level from the user point of view, most CM systems have different functionality. Among the lots of reasons for these differences are: different platforms of hardware, operating systems & programming languages. However, a rate of interest is due to the different types of users of a CM process. This stems from the role the user plays in the organization. In particular, an administrator, a program engineer developing an application, an application client as well as a builder of the environment tend to see CM differently. As a result, they may require different (but complementary) the functionality of your CM process. For example, an administrator of "CM" evokes the picture of a Configuration Control Board. For a program engineer, the picture of the baselines arise. For a client, versions of the application of emerging. & for the environment builder, mechanisms such as libraries & information compression arise. All these images obviously result in different requirements for the CTM process & hence functionality, possibly different.

Automation Framework

The Application Testing Automation Framework (STAF) is an open source project that allows users to generate multi-platform, distributed environments, application testing.The project is using the Common Public License (CPL). Sports footwear includes a range of services that provide specific functionality. The most prominent of these is the check execution engine called Stax. Other services provided cron, filesystem, interprocess communication, email, and support for HTML, among others.STAF was originally developed for internal use by IBM in the 1990s. IBM helps users of such shoes through online documentation and user forums.

Keyword-driven Testing:
Keyword-driven testing is a powerful tool to help organizations make more automated tests earlier in the testing method & making it less hard to keep the evidence in time. As with any complex undertaking, there's "success factors" that can decide whether or not a check hard work will be successful. This document summarizes the key success factors for key-driven tests including basic requirements, the vision for automation success factors for automation, & how to measure success.Keyword-driven testing is a program testing process that separates much of the work programming check automation, from design to actual tests. This allows the tests to be developed before testing & makes less hard to maintain. Some key concepts in the key-driven tests include:

* Level of keywords, which are usually based & report the operations of the general user interface to "click", "enter", "select"
* Business Templates are typically high level, such as "login", "entering the transaction Key Words
* Action words, or short "Actions", which can be both basic & high level & in its most general form defined above can be used to define words high-level action

Contents:
* Overview
* Base Requirements
* The Framework
* Methodology
* Vision for Automation
* Success Factors for Automation
* How to Measure Success
* Conclusion

Overview:
Keyword-driven test or the  test table is driven by a program testing methodology
as part of  test automation discipline that separates the job of programming the script real  test for the  test scripts can be developed without the knowledge of programming.As a result,  test scripts can be maintained with only minor changes, even if the application or testing requires significant changes.
Base Requirements:
There are plenty of requirements that are thought about "basic requirements" for success with keyword-driven testing. These include:

* The check cases must be of clear and distinct - it is important that check cases are clearly different in scope and not deviate from that area.
* Essays must be written in the appropriate level of abstraction - Essays must be written in the appropriate level of abstraction as the highest level of business, low level of the user interface, or both. It is also important that the check tools provide this level of flexibility.
* Development of check
and automation should be entirely separate - is very important for the development of independent testing for check automation. The three disciplines need very different skills. Fundamentally, the testers are not and should not be programmers. Testers must be expert in defining check cases independent of the underlying technology to implement them. Individuals who are trained technically, the "people of automation (automation engineering), will implement the action words and then check them.
The Framework:
The application of this methodology is the framework of his office. This framework requires the development of information tables & keywords, independent of check automation device used to run them & the script code check "drives" under-trial application & information.In a keyword check the functionality of the application under check is documented in a table & in step by step instructions for each check.If they were to trace the actions they take with the mouse when they tested our functions of the Windows calculator handy, you might generate the following table. The "Window" column contains the name of the application window where they can implement a mouse action (in this case, all of whom happen to be in the window of the calculator). "Control" column names the type of control is to click the mouse. The "Action" column lists the steps taken with the mouse (or the tester). & the "argument" the column names of a specific control (1, 2, 3, 5, +, -, & so on).
Methodology:
The keyword-driven testing methodology divides the development of tests in four stages:

* Planning Stage
The identification of keywords that need operations as to provide additional functionality to accomplish greater clarity on the level of business and / or to maximize efficiency and ease of maintenance.The analysis of the application and choose what objects and operations are used by all business processes that need to be tested.
* Implementation Stage
Building a collection of references that identify objects, sometimes known as the repository of an "object" and ensure that all these references have a clear name to follow the default naming conventions. (This is mainly for the automation of the check.)Although this methodology requires more planning as well as a greater initial time investment that goes directly to the creation phase of testing and track your steps, this methodology makes the check creation and maintenance of the testing stages and maintains effective the structure of individual tests more readable and not as hard to change.Create and document the level of business keywords in function libraries. Generating libraries of functions involves the development of custom functions to the application that needs to be tested.While a keyword-driven methodology is useful for automated testing, manual testing some systems such as Mercury Interactive TestDirector for Quality Center allows a similar procedure for manual testing as well.
Vision for Automation:
* Having a nice methodology - is important to have nice integrated methodology for check automation & places of testers in the driver's chair. It is also important to use the best technology that supports the methodology, maximize flexibility, minimize the technical efforts, & maximizes the ease of maintenance.It is also important to have a clear vision for automation. This "vision" should include such things as:

* Having the right device - any device that is used should be designed specifically for testing based on keywords. It should be sufficiently flexible to permit the right mix of tests of high & low. It should permit testers to quickly generate keyword tests without difficulty. Nor should it be complicated for automation engineers for use in the application of automation.
* Success on the two success factors for Automation "- There's two critical success factors for the automation of that vision must report. They are:
1. check design
2. automation solution
3. organization

Success Factors for Automation:
Test design is more important than automation technology. The design is the most underrated part of the check. It is my belief that the check design, automation or not a tool, is the most important factor for successful automation. To understand more about the trial design, see previous articles:

* Key Principles of Check Design
* The Holy Grail of Check First Design
* The Holy Grail of the Second Check Design
* The Third Holy Grail of Check Design

Full automation of the architecture

* Scope, assumptions, risks
* The methods, best practices
* Tools, technologies, architecture
* Interested parties, including the functions and processes of entry and approvals
* Managing check that manages the testing method.
* Development of tests that is responsible for the production of evidence. Development testing should include the check leads, check developers, finish users, experts and business analysts.
* Automation Engineering, which is responsible for building automation method for automatic execution. Members of this team include a chief engineer, and seven or more support engineers in automation.
* The support functions by providing methods, techniques, skills, training, tools and environments.

The "right" of the team also should be mounted. This team should include:
For the team must have a clear division of tasks and responsibilities and well defined processes for decision making and communication.
Conclusion:
The automation should be done, but should not dominate the method. The automation must derive from the overall strategy, methodology, & architecture. It is also important to pay attention to the organization - the method, the team & project environment.It is important to understand that keywords are not magic, but can serve well. What is most important is taking seriously the hard work & doing it right. Doing things right means that the trial design is essential, both in the global check design & layout of individual check cases.

Data-driven Testing :
Automated testing play a recorded (or programmed) sequence of user actions that cover a particular area of application of the check.For more coverage, you can perform tests with different input information. Suppose, for example, proof of an input form of a request. After having recorded a script that only contains the values specified during the recording. Most likely, the information you entered does not cause errors in the application, but other information may cause them. Data-driven testing lets you check the form with a different set of input values to ensure that the application works as expected.

Contents:

* Introduction
* Information Driven Automation Frameworks
* Data Driven Script
* Information Driven Scripts

  Introduction:

Data-driven testing means that the scripts read information from an external storage site, for example, a file or database, in lieu of using hard-coded values in the script.This separation makes testing simple logic. A script containing multiple sets of hard coded values can be difficult to change. For example, if you need more input, you must alter the script code.

1. Recovering information from the warehouse.
2. Entering information in an application form.
3. Verification of the results.
4. Continuing with the next set of input information.

Typically, the warehouses to hold both input & information verification. A check information includes the following operations in a loop:Test Complete includes a quantity of features to perform these steps. You can select the functionality that best suits your needs


Data Driven Automation Frameworks:
In recent years there's been numerous articles on various approaches to check automation. Somebody who has read a fair, unbiased sampling of these knows that they can and they ought to not expect pure capture and replay of check scripts for success in the life of a product. They will find nothing but frustration is not.Sometimes this show is difficult to describe to people that have not yet made significant check automation with these capture \ playback tools. But it usually takes less than a week, often less than a day, to listen to the most repeated phrase: "It worked when you recorded it, but now it fails when I play again!"

Data Driven Script:
The scripts are based on information specific applications of the script captured or by hand coded proprietary language automation device & then modified to accommodate the variable information.Variables used for password input fields of application & selection program that allows the script to drive the application with external information provided by the calling technique or the shell that invokes the check script.


TestComplete's Support for Data-Driven Testing:
Looking at the online help TestComplete, in "based on check information, find a help topic long , with links to external pages on the subject, but also links to two writing routines. It is worth noting that although these methods are the subjects of DDT, the routines are not only must do the DDT, but for now they will focus on these two. They GetCSVCount, GetCSVItem, CallMethod, SetValue and GetValue. The first four methods are the ones who are going to use much in the DDT, the other two will be less frequently used, unless you are getting some robust scripts DDT.Since DDT itself is very simple, direct support TestComplete method is also very simple.

GetCSVCount and GetCSVItem work with strings separated by commas, to provide an easy way to get to the values contained within the strings. This is called "analysis". A Comma Separated Values (CSV) word could be something like this:

02, c, "John", "Q", "Public", 13 "Product 02", "1234 Anywhere St.", "San Antonio", "TX"

Here's an important thing to think about: GetCSVItem is what is known as "zero base". That means the first element of the CSV string is thought about the number 0 in lieu of number 1. Similarly, if it was to the last point would be the point number 9, not number 10. Therefore, if they name the client, they would ask for item number 2, not the number 3, as follows:
varCustFirstName = GetCSVItem ('02, c, "John", "Q", "Public", 13 "Product 02", "1234 Anywhere St.", "San Antonio", "TX"

You can see that every element of this chain is separated by a comma. Each individual element of the chain is called "field" or a "value". The GetCSVCount and methods GetCSVItem work with strings like this. If they pass this string GetCSVCount function, they receive a return value of 10. There's ten discrete values in the CSV string. Furthermore, if they get the customer's name, they can use GetCSVItem to do that.

So with these four functions, they can easily retrieve the values from CSV file, which is useful if our information external DDT CSV text files or spreadsheets. Returning to our customer / orders example, they see next. (This is pseudo-unique code.)

ReadExternalData function (AFileName)
(
var lsLine
lsCustomerName var lsAddr, lsCity, lsRegion, lsPostalCode
openFile (AFileName)
while not EOF (AFileName)
(
lsLine = readLine (AFileName)
if (GetCSVCount (lsLine) == 5
(
lsCustomerName = GetCSVItem (lsLine, 0)
lsAddr = GetCSVItem (lsLine, 1)
lsCity = GetCSVItem (lsLine, 2)
lsRegion = GetCSVItem (lsLine, 3)
lsPostalCode = GetCSVItem (lsLine, 4)

Do not worry about trying to make real working code - it is abstract and is only for show, but his real DDT code might look like. What this tiny amount of code is not very strong and serves as a great example of a scenario of standard DDT. Although you can also perform more complex tasks, which I will discuss in future papers, this is a nice beginning point.

EnterCustomerRecord (lsCustomerName, lsAddr, lsCity, lsRegion, lsPostalCode)
)
)
closefile (AFileName)
)
EnterCustomerRecord function (aCustomerName, aAddr, ion of, aRegion, aPostalCode)
(
var p, w
p = Sys.OrdersProcess
w = p.MainForm
w.Activate ()
w.ToolButton5.Click (6, 7)
w = p.OrderFrm
w.Activate ()
w.CustomerName_Edit.wText = aCustomerName
w.Street_Edit.wText = aAddr
= Ion of w.City_Edit.wText
w.State_Edit.wText = aRegion
w.Zip_Edit.wText = aPostalCode
w.OKButton.Click ()
validateRecordEntry ()
)

As for the other two methods outlined in aid (CallMethod, SetValue and GetValue) I won't talk about that now - not necessary for this book on DDT.

Part of this technique is not clearly covered is actually reading the external information. That is partly because there's so lots of options. TestComplete can read information from DDT from text files, spreadsheets, database tables and internal information sets. To access your information, you can use ADO, OLE automation or standard text file access methods. Lots of of these options for storage and access methods are shown in the demonstration project in TestComplete including DDT, which we'll cover soon. For now, plan on getting to the information in the most comfortable.
Rewrite

Agile Project Management

We can’t fully plan before they start, because they don’t know where we’re going
– They can plan a tiny & continue to repeat the planning
– Risk management
- When they execute, things will happen
- During the “control” phase, they require to measure what’s happening, so they have a chance of guiding the project
– What do you measure, so you know where you are & can move to where you require to be?
- If they knew when they were done, we’d close
– So if we’re ready to release at a moment’s notice, they can close any time

Project Management Templates

This comprehensive set of templates, forms, processes & checklists will save you time & work when generating project deliverable.

MPMM™ includes the complete set of Project Management Templates needed to manage successful projects.These project management templates save you time & work, as you never must generate project deliverable from scratch. Whether you require to generate a business case, control change or manage risk, the Template Toolkit included within MPMM will help you do it quickly & efficiently.

Templates Save you Time & Work
MPMM includes the following sets of templates, to help you manage projects:

 * Project Initiation Templates
 * Project Planning Templates
 * Project Execution Templates
 * Risk Management Templates
 * Project Closure Templates
 * Change Management Templates
 * Quality Management Templates
 * Issue Management Templates
 * Cost Management Templates
 * Procurement Management Templates
 * Time Management Templates
 * Acceptance Management Templates
 * Communications Management Templates

Project Management Phases

The different phases are

Requirement Specification:
Requirement Specification is the first and most important phase of the SDLC. During this phase our Project Manager is in constant contact with the Customer to find out requirements of the project in detail.Project Manager and Technique Analyst after reviewing the Customers requirements analyez the requirement and start designing of the project. Technique Architecture, Database Design, Program Specifications and Check Scenarios are determined. A Detail Design Document is prepared at the finish of analysis that can be used by the programmers to perform the coding.Main tasks in this phase include Requirement Determination, Risk Analysis, Setting up Schedules, and deciding Deliverables. Communication with the Customer is carried out using any of the following means of communication, such as Instant Messenger, Email, Phone, Voice Chat or personal meeting. A Technique Requirement Specification Document is prepared at the finish of this phase.
Requirement Analysis and Design:

Coding and Testing:
Programmers start programming in this phase using the Detail Design Document. As project progress programmer's progresses is monitored by Project Manager and Project Leader respectively. Project Manager is in constant contact with the customer and provides updates on the progress of the project using MS Project. The programmers follow coding Standards decided by the company. Project Leader helps the programmers with their coding problems and guides them to the solutions. Testing is done by the QA Team simultaneously for the completed modules and approval is given to the modules three times they have passed their initial tests before integration.

Deployment and Support:
This phase starts with Deployment of the Project. Initial hardware and program setup necessary to run the project is a critical phase of the project. After project is done Project Manager contacts the customer and prepares for the set up. Program is handed over to the customer for acceptance testing only after complete internal testing. Support to the project is provided for a limited number of days during which any minor customer changes are completed.

Project Management Methodology

Project Control Variables

Project Management tries to gain control over four variables:

Time - The amount of time necessary to complete the project. Normally, it is divided for analysis in the time necessary to complete the project components. This is further broken down in the time necessary to complete each task of contributing to the completion of each component.

Quality - The amount of time put in to individual tasks determines the overall project quality. Some tasks may need a definite amount of time to complete adequately, but more time could be done exceptionally. During a large project, quality can have a significant impact on the time and cost (or vice versa).

Cost - Calculated from the time variable. Cost for development of an internal project is time multiplied by the cost of team members. When hiring an independent consultant for a project, the cost will typically be determined by the consultant or firm per hour multiplied by an estimated time to complete.

Scope - requirements specified for the final result. The general definition of what the project must meet, as well as a specific description of what the finish result should be or over out.

Risk - potential points of failure. Most risks or potential failures can be overcome or resolved, given time and resources.

Four of these variables can be given by external or internal customers. The value (s) of the remaining variables are then set by project management, ideally based on robust estimation techniques. The final values must be agreed in a negotiation process between project management and client. In general, values are employed in terms of time, cost, quality and scope.To maintain control over the project from the beginning of the project to reach its natural conclusion, a project manager uses a quantity of techniques: project planning, earned value, risk management, planning and process improvement.

Project Management Activities

Project Management is composed of several kinds of activities such as:
1. Work Planning
2. Estimated resource
3. Organizing the work
4. Human resources & materials, acquisition of
5. Home-work assignment
6. Directing activities
7. Controlling project execution
8. Progress Document
9. Analysis of results based on information from

Project Management

Project Management is the discipline of defining and achieving targets while optimizing the use of resources (time, funds, people, materials, energy, space, etc.) in the work of a project (a set of activities limited period).Project Management is often the province and responsibility of an individual project manager. This individual seldom participates directly in the activities that produce the final result, but strives to maintain the progress and productive mutual interaction of different parties so as to reduce the overall risk of failure.In contrast to the ongoing functional work, a project is "a temporary endeavor undertaken to generate a matchless product or service. The project period is the time from beginning to completion, which can take days, weeks, months or even years. Typical projects include engineering and construction of various public or consumer products, including buildings, vehicles, electronic devices and program.In recent years, the project management discipline has been applied to marketing and promotion efforts as they become more oriented to technology and multiple communication channels to be part of the promotion mix.

Read also -
Project Management activites

What is Six Sigma

According to Jack Welch, former CEO of General Electric (GE), and one of the most successful business leaders in history, who used One Sigma as the primary means of Quality Improvement:One Sigma is one of the biggest management innovations of the past 25 years. One Sigma improves the development process, bringing products to market faster with fewer defects, and reduces costs. The biggest - but least praised - advantage of One Sigma is its potential to cultivate excellent leaders.Six Sigma is not about averages, sought to eliminate the differences in their relationship with customers.

Definitions of One Sigma:
Quality approaches and models

DFSS - (Design for One Sigma) is a systematic methodology utilizing tools, training and measures that let us design products and processes to meet customer expectations and can be produced in the One Sigma quality levels.
DMAIC - (Define, Measure, Analyze, Improve and Control) is a process of continuous improvement. It is systematic, scientific and fact based. This closed-loop process eliminates unproductive steps, often focuses on new measurements, and applies technology for improvement.
One Sigma - A vision of quality, equivalent to only 3.4 defects per million opportunities for each product or service transaction. Striving for perfection.
Quality Tools Associates are exposed to various tools and terms related to quality. Here are a quantity of them.
Control Chart - Monitors variance in a process over time and alerts the business to unexpected variance which may cause defects.
Defect Measurement - Accounting for the number or frequency of defects that cause failures in the product or service quality.
Pareto Diagram - Focuses on efforts or the problems that have the greatest potential for improvement by showing relative frequency and / or size of a descending bar graph. Based on the proven Pareto principle: 20% of the sources cause 80% of problems.
Process Mapping - Illustrated description of how things are completed, which allows participants to visualize a process and identify areas of strength and weaknesses. It helps reduce cycle time and defects while recognizing the value of individual contributions.
Root Cause Analysis - Study of original reason for nonconformance with a process. When the cause is removed or corrected, the grievance will be removed.
Statistical Process Control - The application of statistical methods to analyze information, study and monitor process capability and performance.
Tree Diagram - Graphically shows any general purpose divided in to different levels of detailed action. It encourages team members to expand their thinking when generating solutions.

Quality Conditions

Black Belt - Leaders of the team responsible for measuring, analyzing, improving and controlling key processes that influence customer satisfaction and / or productivity growth. Black Belts are full-time positions.
Control - The state of stability, normal variation and predictability. Regulatory process and guide the operations and processes through quantitative information.
CTQ: Critical to Quality (Critical "Y") - Element of a process or practice that has a direct impact on perceived quality.
Customer needs, expectations - the needs, defined by customers, satisfying their basic needs and standards.
Defects - Sources of customer irritation. Defects are expensive to both customers and manufacturers or service providers. Eliminating defects provides cost benefits.
Green Belt - Similar to Black Belt but not a full time position.
Master Black Belt - first and foremost teachers. Also, review and mentor Black Belts. Selection criteria for Master Black Belts are quantitative skills and the ability to teach and mentor. Master Black Belts are full-time positions.
Alter - A alter in a process or business practice that can affect its outcome.
One Sigma aims to repeat in the internal processes and complex developments of new products. Forced application of One Sigma in creative activities does not make sense and cause a stir.

Defect Hypothesis


 1)Success is a test that reveals the presence of a hypothesis regarding defects
2)Role of a Tester is like a doctor who is in the process of building a diagnosis of a sick patient. A health care provider about possible disease hypothesis using their knowledge of possible diseases and symptoms of the patient
3)Examinations carried out in order to make the correct diagnosis. One could see the faulty software as the sick patient.
4)Testers and physicians should be knowledgeable about possible defects (the disease to develop hypotheses defects)

Smart Testing

Test Case Checklist

Quality Attributes
• Accurate: evidence of what the description says it will test.
• Economical: only the steps necessary for its purpose.
• Repeatable, standing, yes: the same results regardless of the evidence.
• Appropriate: both immediate and future testers.
• Traceability: a requirement.
• Self-cleaning: returns the test environment to clean state.
Structure and testability
• Has a name and number
• Has a stated purpose that includes what requirement is being tested
• Has a description of the test method
• Specifies the configuration information - environment, data, prerequisite tests, security access
• Have actions and expected results
• States where the evidence, such as reports or screen shots, must be saved
• Leave the test environment clean
• Uses active case language
• Does not exceed 15 steps
• The matrix has no more than 20 minutes to test
• automated script is commented with purpose, inputs, expected results
• Setting up alternative offers the prerequisite tests, if possible,
• Is correct business scenario order with other tests
Configuration Management
• Use the naming conventions and numbering
• Saved in specified formats, file types
• Do version ed to match software under test
• Includes test objects needed for the case, such as databases
• stored as read
• Stored with controlled access
• Backups stored on a network that works
• Archived off-site

Validation Test Checklist

During testing, the software is tested against the requirements. This checklist
addresses some of the key issues that will lead to effective validation. To obtain this list, the more questions that cause a negative response, the greater the risk that no suitable validation tests will achieve its purpose.
• It is a complete software requirements specification available?
• Are the limited requirements?
• Have the equivalence classes defined for the exercise of entry?
• Limit tests have been referred to exercise the software on your borders.
• Has been developed sets of tests to validate each software function?
• Has been developed sets of tests to validate all data structures?
• Are test suites have been developed to evaluate the performance of software?
• Have test suites been developed to test the behavior of the software?
• Have test suites been developed to the full exercise of the user interface?
• Have test suites been developed to exercise all error handling?
• Are the use cases available for testing stage?
• Is the use of statistical evidence (SEPA, 5 / E, Chapter 26) is considered as an element of validation?
• Have tests been developed to exercise the software against the procedures defined in the user documentation and support services?
• error reporting and correction mechanisms have been established?
• Has a list of deficiencies has created?

Unit Test Checklist

• Is the number of input parameters equal to the number of arguments?
• What parameters and argument attributes match?
• Are the parameters and units agree with the argument of the system?
• Is the number of arguments passed to called modules equal to the number of parameters?
• Are the attributes of the arguments passed to called modules equal to the attributes of the parameters?
• Is the system of units of the arguments passed to called modules equal to the units of the system parameters?
• The number of attributes and the order of the arguments of built-in functions right?
• Are there references to parameters not related to the current entry point?
• Have input arguments only altered?
• Are global variable definitions consistent across modules?
• Restrictions are passed as arguments?

When performing an external module I / S, further tests of interface must be implemented:
• File attributes correct?
• OPEN / CLOSE statements correct?
• Format specification matches I / O statement?
• Buffer size matches record size?
• Files opened before use?
• End of file conditions handled?
• I / O errors handled?
• Any error in the output text information?
The local data structure for a module is a common source of errors. The test cases should be designed for detecting errors in the following categories:
• Inadequate or inconsistent writing
• incorrect initialization or default values
• incorrect (misspelled or truncated) variable names
• types of inconsistent data
• Underflow, overflow and addressing exceptions
From a strategic standpoint, the following questions should be addressed:
• component interface has been fully tested?
• Have structured local data has exercised its borders?
• Has the cyclomatic complexity of the module has been determined?
• Have all paths independently tested?
• Have all loops been adequately tested?
• Have the data flow paths tested? Make all routes handling errors has proved?