Keyword Driventaf 120110090043 Phpapp01

Embed Size (px)

Citation preview

  • 8/2/2019 Keyword Driventaf 120110090043 Phpapp01

    1/31

    Keyword-driven

    Test AutomationFrameworkConcept, features, architecture

    Misha Suboch

  • 8/2/2019 Keyword Driventaf 120110090043 Phpapp01

    2/31

    2

    Topics Covered

    Features

    Workflow

    Future

    TestAutomation

    FrameworkArchitecture

    TAF is a program which helps to performautomation testing effectively. Let us see TAF:

  • 8/2/2019 Keyword Driventaf 120110090043 Phpapp01

    3/31

    3

    Presentation agenda

    1

    . Features and Advantages

    2

    . Usage Workflow

    3

    . Architecture

    4. Artifacts

    5. Implementation in Your Project

    6. TAF Core Features

  • 8/2/2019 Keyword Driventaf 120110090043 Phpapp01

    4/31

    4

    Features and Advantages1

  • 8/2/2019 Keyword Driventaf 120110090043 Phpapp01

    5/31

    5

    Features

    Keyword

    -

    Driven

    1

    Product

    -

    independent

    2

    Tool

    -

    Independent

    3

    Maintainability

    4

    Business Logic

    GUI Objects

    Steps

    Utilities

  • 8/2/2019 Keyword Driventaf 120110090043 Phpapp01

    6/31

    6

    Advantages

    Keyword-driven

    Product-independent

    Compatible with any automation tools on the market

    Aligned with Continuous Integration Frameworks

    (single entry point, unified test reports, etc.)

  • 8/2/2019 Keyword Driventaf 120110090043 Phpapp01

    7/317

    Workflow2

  • 8/2/2019 Keyword Driventaf 120110090043 Phpapp01

    8/318

    Automation with TAF

    Initialization1

    Usage Run Test Scenarios

    Create New Test Scenarios

    Development

    Study Application

    Mock up Test Scenarios

    Implement Scenarios

    Debug /Verify

    3

    Maintainability Tune for New Build

    Implement New Steps4

    2

  • 8/2/2019 Keyword Driventaf 120110090043 Phpapp01

    9/319

    Architecture3

  • 8/2/2019 Keyword Driventaf 120110090043 Phpapp01

    10/3110

    High-Level Architecture

    TAF Core

    Bug List

    Test Scenario 1

    Test Scenario 2

    Test Scenario N

    TestComplete TAF

    CustomAutomation tool

    AnotherAutomation tool

    Run TAF.exe

    Test Reports

    XML

    HTML

    Tool Specific

    Test

  • 8/2/2019 Keyword Driventaf 120110090043 Phpapp01

    11/3111

    Detailed Architecture

  • 8/2/2019 Keyword Driventaf 120110090043 Phpapp01

    12/3112

    TAF Core,Responsibilities

    Read ConfigsRead Test Suite/Unified Test Scenario

    Read Bug List

    Load Data

    Constant variables

    Stores

    Substitute

    Calculate Expressions

    Create Execution List

    Run Automation Tool TAF

    Execution Optional (Cleanup) Command

    Create Reports

  • 8/2/2019 Keyword Driventaf 120110090043 Phpapp01

    13/31

    13

    TAF.exe Config

  • 8/2/2019 Keyword Driventaf 120110090043 Phpapp01

    14/31

    14

    TAF Core Source Code

    TAF Core code is generated using Test-Driven Development approach, it is very well

    structured and covered by unit tests (more than 300 passed unit tests validates TAF Core

    quality).

  • 8/2/2019 Keyword Driventaf 120110090043 Phpapp01

    15/31

    15

    Detailed Architecture

  • 8/2/2019 Keyword Driventaf 120110090043 Phpapp01

    16/31

    16

    Communication between TAFCore and Automation Tool TAF

    1.When scenario is read and parsed, TAF Core generate Execution List and runAutomation Tool TAF.

    2.After executing all tests, Automation Tool TAF generates Test Results Summaryand exits.

    3.TAF Core reads Test Results Summary and generates final results.

    Automation

    Tool TAFTAF Core

    ExecutionList.txt

    TestResultsSummary.txt

  • 8/2/2019 Keyword Driventaf 120110090043 Phpapp01

    17/31

    17

    Automation Tool TAF

  • 8/2/2019 Keyword Driventaf 120110090043 Phpapp01

    18/31

    18

    Automation Tool TAF

    Driver Controller

    Test Cases

    Actions

    Verifies

    ScreensFrames

    Utilities

    Scripts

    Test

    Scenarios

    TestData

    Tool Status of TAF support

    SilkTest Supported

    TestComplete Supported (TAF Core)

    Quicktest Pro Supported (TAF Core)

    Watir Supported (TAF Core)

    Selenium Supported (TAF Core)

  • 8/2/2019 Keyword Driventaf 120110090043 Phpapp01

    19/31

    19

    Controller in TestComplete

  • 8/2/2019 Keyword Driventaf 120110090043 Phpapp01

    20/31

    20

    Step Implementation

  • 8/2/2019 Keyword Driventaf 120110090043 Phpapp01

    21/31

    21

    TestComplete, TAF Detailed Log

  • 8/2/2019 Keyword Driventaf 120110090043 Phpapp01

    22/31

    22

    Artifacts4

  • 8/2/2019 Keyword Driventaf 120110090043 Phpapp01

    23/31

    23

    Unified Test Scenario

  • 8/2/2019 Keyword Driventaf 120110090043 Phpapp01

    24/31

    24

    Test Result Report for Scenario

    Metrics Summary, Passed

  • 8/2/2019 Keyword Driventaf 120110090043 Phpapp01

    25/31

    25

    Test Result Report for Scenario

    Summary, Failed

    Summary, Failed with Bug Link

    Summary, Known Issue

  • 8/2/2019 Keyword Driventaf 120110090043 Phpapp01

    26/31

    26

    Implementation in Your Project5

  • 8/2/2019 Keyword Driventaf 120110090043 Phpapp01

    27/31

    27

    How to Proceed andTake Advantage of TAF

    Get Test Complete TAF /Watir TAF / QTP TAF

    Develop test scenarios

    Implement steps

    Automation with TestComplete, Watiror QTP: Automation with another tool:

    Implement controller

    Develop test scenarios

    Implement steps

  • 8/2/2019 Keyword Driventaf 120110090043 Phpapp01

    28/31

    28

    TAF Core Features6

  • 8/2/2019 Keyword Driventaf 120110090043 Phpapp01

    29/31

    29

    TAF Core Features:Overview

    1. Unique keywords in test scenarios allow you togenerate unique text and numbers in specifiedformat

    2. Ability to run several test scenarios at once, even ifwritten in different automation tools

    3. Ability to use the same test scenario for differentautomation tools, when one tool could not cover all

    test configurations (browsers/OS).

    4.Unified test results (in .xml) across differentautomation tools/projects/applications provideintegration options with external tools (like CruiseControl).

    5. Ability to mark failed test cases as known issue and

    link to related bugs in test results.6.Keywords Feature: Load/Repeat keywords allow to

    create data-driven test cases. Application keywordallow you to work in one test scenario (or even inone test case) with different applications.

  • 8/2/2019 Keyword Driventaf 120110090043 Phpapp01

    30/31

    30

    TAF Core Features:Overview

    8. Arithmetic expressions calculation and Variables valuessubstitution. Ability to exchange variables values

    between different test scenarios, automation tools or

    even when different test scenarios should be run one

    by one on different servers.

    9. Unified test scenario could be easily accessed for

    review by customer or business analyst (noprogramming knowledge required)

    10. Working with results: Auto-archiving of previous test

    results. Test results contains information about what

    workstation/server was used for scripts run, when and

    which TAF Core version they were generated by.

    11. Extensive configuration features: execution (runselected tests/complete scenario), results output,

    logging, etc.

  • 8/2/2019 Keyword Driventaf 120110090043 Phpapp01

    31/31

    Test Automation

    Framework

    Misha Suboch

    [email protected]