You are on page 1of 14

March 25th 2008

Season 1 - First blossom at Rosebud

Service Test Automation


Framework
Rosebud – Software Test Automation Framework

• Requirements
• Process
• Hurdles
• Team
Rosebud 1.0 – Requirements
Test Suite

Browser Support
Data Driven Tests

Globalization

Integration with Quality Center WCF Services Testing Support

Logging Localization

RAD Ajax UI Page Testing Support Compiler Signature Enforcement

Source Code Repository

Rosebud – Automation Framework


Rosebud – Targets

Objective:
To develop test framework for RoD
2008 – Services & UI

Characteristics
• Simple
• Reliable
• Accurate
• Faster
• Scalable
• Low Maintenance
Rosebud – Service Test Automation Framework Overview

Hosted WCFServices

Service 1 Service 2 Service N

Database

Execute Results
Service invocation and validation

Rosebud Framework

NUnit Script Test Data XML


Application/ FOIL
Service Service
Application/ Service Service
Framework Proxy
Framework Proxy

Service 1 Service 1
Service 1 Service 1

Service 2 Service 2
Service 2 Service 2

Service 2 Service 2
Details Service
Service33 Details Service 3
Service 3

Service
Service44 Service 4
Service 4

Service
Service55 Service 5
Service 5

Strongly
Typed Object DTO
Rosebud - Services Test scripts
Services Framework – Workflow for Writes

Restore DB state as it was before test execution


Selenium Remote Content (RC):

 Allows us to write automated web application UI tests in any programming language against
any HTTP website using any mainstream JavaScript-enabled browser.
 Selenium Server, which can automatically start/stop/control any supported browser.
 Selenium Core is a pure-HTML+JS library that performs automated tasks in JavaScript.
 Selenium Server acts as a client-configured HTTP proxy, to stand in between the browser
and your website.
 Selenium Server communicates directly with the browser using AJAX (XmlHttpRequest)
Rosebud – Reusability
Rosebud – Test Scripts
Rosebud –Hurdles
• Data validation upon service invocation
• Implementation of user state management
• Dependency on RoD product
• Façade Object Interface Layer implementation
• Integration of tests with quality center
• Supporting multiple browsers and OS
• Supporting user defined UI controls
• Knowledge root cause upon failure
• Creation of input and output arguments
• Population/Maintenance of sample data for tests
Rosebud Genie - Make a Wish !
• Builds input / expected output arguments
• Performs quick test on service
• Records audit log on DB tables
• List of tables touched by the service
• Builds application configuration file
• Mock implementation code for service contracts
Rosebud - Scrum Team

You might also like