9
4/27/2015 1 By: Chris Mauck Principal Software Engineer in Test Reduce Third-Party Tool Dependencies in Your Test Framework Third-Party Tools © Neustar, Inc. / Proprietary and Confidential 2 » Winrunner (1995) » Test Complete (1999) » QuickTest -> QTP (1999) » IBM Rational Functional Tester –orig. RobotJ (2002) » Selenium - RC (2004) » UIAutomation – Coded UI (2005) » Tricentis Tosca (2007) » Selenium – WebDriver (2009) » Unified Functional Testing (UFT) – prev QTP (2012) » And many more

Reduce Third-Party Tool Dependencies in Your Test Framework

Embed Size (px)

Citation preview

4/27/2015

1

By: Chris Mauck

Principal Software Engineer in Test

Reduce Third-Party Tool

Dependencies in Your Test

Framework

Third-Party Tools

© Neustar, Inc. / Proprietary and Confidential2

» Winrunner (1995)

» Test Complete (1999)

» QuickTest -> QTP (1999)

» IBM Rational Functional Tester –orig. RobotJ (2002)

» Selenium - RC (2004)

» UIAutomation – Coded UI (2005)

» Tricentis Tosca (2007)

» Selenium – WebDriver (2009)

» Unified Functional Testing (UFT) – prev QTP (2012)

» And many more;

4/27/2015

2

Third-Party Tools

© Neustar, Inc. / Proprietary and Confidential3

» Winrunner (1995)

» Test Complete (1999)

» QuickTest -> QTP (1999)

» IBM Rational Functional Tester –orig. RobotJ (2002)

» Selenium - RC (2004)

» UIAutomation – Coded UI (2005)

» Tricentis Tosca (2007)

» Selenium – WebDriver (2009)

» Unified Functional Testing (UFT) – prev QTP (2012)

» And many more;

The issue

© Neustar, Inc. / Proprietary and Confidential4

Test Planning

Test Strategy

Test Case Development

Test Framework

Design

4/27/2015

3

Solution

© Neustar, Inc. / Proprietary and Confidential5

» Solid Foundation

» Build with the future in mind

» Proper Test Layout

» Common Methods

» Configuration / Reusability

» System Level

» Test Level

» Locators

» Data

» Hardcoded / Import File / Database / Data Generator

Disclaimer�

© Neustar, Inc. / Proprietary and Confidential6

» Pros

» Common Terminology

» Reliable

» Reduce Technical Debt

» Keep up with Changing Technologies

» Could prevent the need for third-party tool knowledge for end

user

» Cons

» Does not guarantee port (bridge) between languages

» Could prevent learning third-party tool knowledge for end user

4/27/2015

4

“10-codes”

© Neustar, Inc. / Proprietary and Confidential7

What are 10-codes?

Common terminology used by emergency personnel

Reduce the volume of radio traffic and add a layer of privacy

Issue: “10-88” for one jurisdiction could mean something completelydifferent in another jurisdiction

Same goes for coding

Enter Text into a TextBox

RFT :: rft.find(;).setText(text);

Selenium :: driver.findElement(;).sendKeys(text);

More on that soon

© Neustar, Inc. / Proprietary and Confidential8

Dispatch

4/27/2015

5

© Neustar, Inc. / Proprietary and Confidential9

;

;

;

RFT

Selenium

Ui Common

Interface

4/27/2015

6

© Neustar, Inc.11

© Neustar, Inc. / Proprietary and Confidential12

4/27/2015

7

Or this

© Neustar, Inc. / Proprietary and Confidential13

© Neustar, Inc. / Proprietary and Confidential14

4/27/2015

8

© Neustar, Inc. / Proprietary and Confidential15

Another Perspective

© Neustar, Inc.16

biz.neustar.xxx.codeRequests

CodeDisconnect.java

CodeModify.java

CodePart3CodeDisconnect.java

CodePart3CodeModify.java

biz.neustar.xxx.blockRequest

AssignCancelBlockReservation.java

BlockRequests.java

CreateNewBlockReservations.java

CreatePart3AssignCancelBlockReservation.java

biz.neustar.xxx.pageobjects

CodeDisconnnectObject.java

CommonPageObject.java

biz.neustar.xxx.codeRequests

CodeDisconnect.java

CodeModify.java

CodePart3CodeDisconnect.java

CodePart3CodeModify.java

biz.neustar.xxx.blockRequest

AssignCancelBlockReservation.java

BlockRequests.java

CreateNewBlockReservations.java

CreatePart3AssignCancelBlockReservation.java

biz.neustar.xxx.pageobjects

CodeDisconnnectObject.java

CommonPageObject.java

ObjectInteraction.java

AutomatonFramework.Jar

4/27/2015

9

Our Framework

© Neustar, Inc.17

Benefits

© Neustar, Inc.18

» Common Keywords

» Reliability

» Reduced Technical Debt

» Keep up with Changing Technologies

Questions?

“If you have to do something more than once, then chances

are you should automate it.“