CONFIDENTIAL
Document Date
SILK TEST
This report is solely for the use of client personnel. No part of it may be circulated, quoted, or reproduced for distribution outside the client organization without prior written approval from McKinsey & Company. This material was used by McKinsey & Company during an oral presentation; it is not a complete record of the discussion.
SilkTest Unit of measure Architecture
* Footnote Source:Sources
2/7
SilkTest QA Methodology
Unit of measure
Plan Phase •Use SilkTest projects to store information about your testing process •Define specific tests and determine testing strategies •Create a test plan - Testplan Overview - Testplan Detail * Footnote Source:Sources
3/7
Capture Unit of measure Phase •Learn about the application •Visit each window •Build a frame file •Capture windows •Create application states Create Phase •Create automated testcases * Footnote Source:Sources
4/7
Run Phase
Unit of measure
•Select and execute specific tests •Generate results Report Phase •Summarize progress and defects •Produce a Pass/Fail report
* Footnote Source:Sources
5/7
Track Phase Unit of measure •Track defects •Perform regression testing
* Footnote Source:Sources
6/7
Unit of measure File Types SilkTest
* Footnote Source:Sources
7/7
SilkTest Unit of measure Projects •Can be created through File/New Project •Organize all the resources associated with a test set, such as testplans, scripts, data, options sets, .ini files, results and frame/include files •Store relevant information about your project, including configuration information, editor settings and data files for attributes and queries at the project level •Allow you to add appropriate files to your project
* Footnote Source:Sources
8/7
Project Explorer Unit of measure •Is used to view and access all the resources in a SilkTest project •Makes it easy to access files that have been added to the project •Allows you to open a file by double-clicking it •Presents the resources within each project visually, making them easier to see, work with and manage •Contains two tabs: Files and Global
* Footnote Source:Sources
9/7
Files Tab Unit of measure •Lists all of the files included in the project •Allows you to view, edit, add and remove files from the project •Provides (via right-click) menu options for each of the file types, such as Record Testcase and Run Testcase for a file contained in the Script folder
Note: You cannot move files within the Project Explorer. For example, you cannot* drag a script file to another node Footnote Source:Sources
10/7
Global Tab Unit of measure •Displays at a global level all the resources, for the open project, such as testcases, functions and classes •Allows you to double-click an object to open the file in which the object is defined and position the cursor at the beginning of the first line of the double-clicked object
* Footnote Source:Sources
11/7
The Basic Workflow Bar Unit of measure
•Allows you to create a new project or open an existing project •Helps you to automatically enable and test extension settings •Assists you in configuring the recovery system •Leads you through the process of recording a testcase •Allows you to run a testcase
* Footnote Source:Sources
12/7
Enable Extensions Unit of measure Extensions enable SilkTest to recognize specific objects native to the environment in which the Application Under Test resides. Extensions must be set up prior to beginning the test development process
Recovery System Base State returns the application to its starting point before running a testcase, during a testcase, if an error occurs; and after testcase completion
Record Testcase •Displays the Record Testcase dialog which is used to create a testcase •Allows you to record the actions that you perform against the Application Under Test so that these can be played back at a later time •Stores recorded instructions in the specified script file * Footnote Source:Sources
13/7
Run Testcase Unit of measure •Displays the Run Testcase dialog •Is used to run any testcase in the active script file Note: You may also run all testcases by pressing F9 or the button located on the tool bar
Stopping a Testcase To stop a script or testcase from running: Select Run/Abort or press both shift keys simultaneously
* Footnote Source:Sources
14/7
The Frame File Unit of measure •Is a central, global repository of information pertaining to your application, including: - data structures that support your test scripts, including window declarations, constants, variables - application states, as well as user-defined methods and functions •Can be viewed by double-clicking the file listed under the Include/Frame node in the Project Explorer window •Provides the means to create logical descriptions (identifiers) for all objects in an application •Is written in the 4Test scripting language and can be edited through use of the 4test Editor •Uses indentation to indicate relationships between objects •Assigns distinct colors to the various types of editor items * Footnote Source:Sources
15/7
Unit of measure
Note:* Only one frame file is needed for an Application Under Test Footnote Source:Sources
16/7
A UnitTestcase of measure •Is a sequence of commands that simulate a user interacting with an application •Resides in a 4Test script (.t) file
* Footnote Source:Sources
17/7
Testcase Unit of measure Results File •Is automatically generated by SilkTest •Has the same name as the executed script, frame or testplan, but with an .res extension •Provides information about the execution of the testcase, script or testplan: - Statistics at each level, including number of testcases run, number of errors and pass/fail ratio - Performance data, including start, stop and elapsed times - Clear identification of passed versus failed testcases - Information about any error(s) •Is a generation data set containing results history for script, frame or testplan - Default history size is 5 - History size can be modified through the Runtime Options dialog * Footnote Source:Sources
18/7
Capturing States in an Application Unit of measure Base State •Is the known, stable state that you expect the application to be in before each testcase is executed •Is typically the state that the application is in just after being started •Has two components: - Default Base State - User-Defined Base State Method
Note: The Default Base State will look for and automatically execute a User-Defined Base State Method. Note: Each application will have only one base state. * Footnote Source:Sources
19/7
Default Base State Unit of measure •Is established when you create a new test fame to capture your application •Ensures that:
•Uses the value of the constant sLocation, as stored in the first (main) window declaration in the frame file, to determine which application window should be loaded * Footnote Source:Sources
20/7
User-Defined Base State Method Unit of measure •Allows you to enhance your application's default base state •May be useful for: - Adding specific data to a field on the Default Base State page - Changing browser options such as memory and file cache to give you a fresh start at the beginning of each new test •Is an addition to the Default Base State; not a replacement for the Default Base State
* Footnote Source:Sources
21/7
Unit of measure
* Footnote Source:Sources
22/7
An Application State Unit of measure •Is a state that you want your application to be in at the start of a given testcase •Is based on either Default Base State or another application state •Reduces redundant code in your 4Test script and makes the code easier to maintain •Makes a testcase easier to record •Ensures consistency in driving the application to the test state •Is normally defined in the frame file
Note: It is a good practice to test each application state as it is created.
* Footnote Source:Sources
23/7
Allows you to reuse existing application states to: Unit of measure
- Save effort - Modularize your routines - Reduce maintenance
* Footnote Source:Sources
24/7
Window Declarations Unit of measure •Describe a window and all of its child objects; recorded window declarations will capture all child objects •Separate the physical page (which may change with each new build) from its logical operation (which will generally remain unchanged) •Specify logical names for all objects on a page – these names (identifiers) will be used regardless of platform or browser •Are added to the active frame file Note: In general, all Web application pages and their respective objects should be declared before creating test scripts
* Footnote Source:Sources
25/7
Creating Unit of measure and Running Testcases Record Testcase •Displays the Record Testcase dialog which is used to create a testcase •Allows you to record the actions you perform against the application under test so that these can be played back at a later time •Stores recorded instructions in the specified script file
* Footnote Source:Sources
26/7
A Testcase Unit of measure •Is an automated test that tests one objective of a testplan •Drives an application to the state where the test will be performed •Verifies whether the application works as expected •Resides in a 4Test script file •Performs two fundamental tasks: - Drive the application to the state to be tested - Verify that the actual state matches the expected state
Note: Each test description in a testplan will be implemented by one testcase. Each testcase verifies one test objective Note: No script or testcase should rely on the successful completion of a previous script or testcase. Each testcase should be independent of * testcases Footnote other 27/7 Source:Sources
Testcase Structure Unit of measure
* Footnote Source:Sources
28/7