new trends in testing automation

41
New Trends in Testing Automation New Trends in Testing Automation

Upload: eran-kinsbrunner

Post on 09-Dec-2014

5.209 views

Category:

Technology


1 download

DESCRIPTION

Trends in automation testing presentation given by Lior Katz, TACT testing at QA Extreme 2011 conference.

TRANSCRIPT

Page 1: New trends in testing automation

New Trends in Testing AutomationNew Trends in Testing Automation

Page 2: New trends in testing automation

Changing the concept Changing the concept Changing the concept Changing the concept Test Automation frame workTest Automation frame workTest Automation frame workTest Automation frame work

Page 3: New trends in testing automation

Key Driven Test Key Driven Test Definition

Keyword Driven Testing is a comprehensive, cross-Keyword Driven Testing is a comprehensive, cross-organization test design solution that bridges the gap between the Test Automation team and the rest of the between the Test Automation team and the rest of the roles involved in the testing process. It allows both manual testers and other subject-matter experts to manual testers and other subject-matter experts to design, build and execute test automation scripts without any programming knowledgeany programming knowledge

Page 4: New trends in testing automation

Limitation of Testing Automation Limitation of Testing Automation

Process• Design – Specific design• Design – Specific design• Execution – separate execution and separate results

Maintenance• Test Automation require maintenance shifting from version to

version ExpertiseExpertise

• Automated Testing tool software developers• System experts• Test engineers• Test engineers

Page 5: New trends in testing automation

KDT advantages KDT advantages

• Increase Testing Automation coverage• Faster ROI• Faster ROI• Join effort between automated testing and

Manual testing (Omnitest)Manual testing (Omnitest)• Manual testing and automation executed

togethertogether

Page 6: New trends in testing automation

The KDT language The KDT language

Basic Terms• Test case – A set of conditions or variables under which a tester • Test case – A set of conditions or variables under which a tester

will determine whether an application or software system is working correctly or notworking correctly or not

• Keyword - A word or identifier that has a particular meaning to the programming language

KDT TermsKDT Terms• Action – A perform action on a specific GUI object• Automated TC’s – a sequence of actions represent TC flow

Page 7: New trends in testing automation

When/Where to implement KDT When/Where to implement KDT

• Testing Automation already implemented• Testing Environment ready to go• Testing Environment ready to go• Keep all management requirement from Testing

Automation aspectsAutomation aspects• Keep Automation developers update with the

processprocess• Massive amount of TC’s

Page 8: New trends in testing automation

����������� ������������ ��������������������� ������������ ����������Testing automation frame work – Layers structure

1 Mapping OR 2 Develop GUI & Business function 3 Develop scripts 4 Execution maintenance via QTP

Testing automation frame work – Key Driven Test

1 Mapping OR 2 Develop Scripts via KDT 3 Generate QTP code 4 Execution via QTPmaintenance via KDT tool

Page 9: New trends in testing automation

����������� ��������������� ����

� ��� ������� ������������ ��� ������� �����������

. CommentMaintenanceExecutionDevelopmentPlanning WorkFrameFrame

Very easy to maintain ONLY

GUI function and Objects

Execute via QC or via automated

engine

Develop GUI and business

function

No planning is needed

ONLY

Layer

and Objects changes

engineONLY manual

TC’s

Can be a Via the KDT Need to All KDT Can be a problem, not

much experience with working

Via the KDT tool

Need to develop

infrastructure via automated

All planning via the

KDT tool

KDT

with working projects

via automated tool

KDT tool

Page 10: New trends in testing automation

����������� ��������������� ����

����������������� ���������������������� �����

. OmniTest – OmniSys Via XLS file

Tesnet – KDT HP BPTTesnet – KDT HP BPT

Test planner -QualitestQualitest

Page 11: New trends in testing automation

����������� ��������������� ����

����������������� �� ������������������ �� �

.

Page 12: New trends in testing automation

�����������.

• KDT is the next Testing Automation generation• Current status KDT work as a POC in several places still need to Ripen in order to • Current status KDT work as a POC in several places still need to Ripen in order to

give the full ROI• KDT will:

• empower the usage with Testing Automation tools• Force the organization to use Automated tools• Increase coverage• Solve maintenance issues• Shortage the development period• Shortage the development period

• Current status:• No company is using a KDT tool as a stable testing environment• Maintenance issues still not resolve completely• Automation expert still take big part in the script development• Automation expert still take big part in the script development

Page 13: New trends in testing automation

Working in other project environmentWorking in other project environmentTesting automation in Agile environmentTesting automation in Agile environment

Page 14: New trends in testing automation

The old and “good” (?) water fallThe old and “good” (?) water fallThe old and “good” (?) water fallThe old and “good” (?) water fall“The "traditional" model of software development “The "traditional" model of software development

lifecycle.”

1 Analysis 2 Design 3 Coding 4 Testing

Page 15: New trends in testing automation

The old and “good” (?) water fallThe old and “good” (?) water fallThe old and “good” (?) water fallThe old and “good” (?) water fallTesting automation life cycle in water fallTesting automation life cycle in water fall

• Only regression testing covered by TA• Testing automation follow the manual testing versions • Testing automation follow the manual testing versions

(always regression testing of the previous version executed)executed)

• TA design always by the manual testing group• Execution Priority by the manual testing manager• Execution Priority by the manual testing manager• Very easy to control and manage

Page 16: New trends in testing automation

Agile conceptAgile conceptEmphasize collaborative, integrated teams, frequent deliveries, and the ability to adapt to changing business deliveries, and the ability to adapt to changing business needs

Page 17: New trends in testing automation

Testing Automation in AgileTesting Automation in Agileenvironmentenvironmentenvironmentenvironment

Since working increments of the software are released often in agile software development, there is also a need often in agile software development, there is also a need to test often. This is commonly done by using automated tests to minimize the amount of manual labor involved. tests to minimize the amount of manual labor involved. Undertaking only manual testing in agile development may result in either buggy software or slipping may result in either buggy software or slipping schedules, as it may not be possible to test the entire build manually before each release.

Page 18: New trends in testing automation

Testing Automation as Testing Automation as part of the scrum teampart of the scrum teampart of the scrum teampart of the scrum team

• Testing automation activities is part of the backlog • Testing automation activities is part of the backlog document

• Automation developer take part in all scrum stages• Automation developer take part in all scrum stages• Automation status is part of the morning meetings• Testing automation is a MUST as part of the scrum

testing scopetesting scope• Automation developer works closely with all team

members (Manual tester, Developer, PMO, etc…)members (Manual tester, Developer, PMO, etc…)

Page 19: New trends in testing automation

Testing Automation executionTesting Automation executionScrum work flowScrum work flow

• Testing automation execution occur after the first • Testing automation execution occur after the first code delivery

• Usually will try to use existing code• Usually will try to use existing code• API execution is an advantage• Result analyze by the whole scrum team

Page 20: New trends in testing automation

Some Agile testing principles Some Agile testing principles justify Testing Automationjustify Testing Automationjustify Testing Automationjustify Testing Automation

• Testing moves the project forward• Testing moves the project forward• Testing is not a phase – it’s a way of life (ongoing

execution)execution)• Every body test – Manual testers execute automation• Keep the code clean – rerun testing execution• Test Driven advantage – very easy to • Test Driven advantage – very easy to

develop in automated testing

Page 21: New trends in testing automation

Testing Automation management Testing Automation management Testing Automation management Testing Automation management processprocessprocessprocess

Page 22: New trends in testing automation

����������� ����� ��!������ ��������������������� ����� ��!������ ����������Common life cycle

1 Purchase the tool 2Recruit developers 3 Understand ROI 4 Fail to implement

1 Analyze the systemsPurchase the tools 2 Recruit developers

and managers3 Understand ROI 4 Follow TTM

methodology

TTM – life cycle

Page 23: New trends in testing automation

��������������� � ���������������������� � �������" ��#�$�����

Page 24: New trends in testing automation

�#����� � ��%�#����� � ��%

& ��# ����#��'���� �� ��� �$��#��'����& ��# ����#��'���� �� ��� �$��#��'����

������'��������� ��� ��!����� ���� ������

� � ������������� ������ � ������������� �����

Page 25: New trends in testing automation

Testing Automation Readiness Testing Automation Readiness • Developers

4

• Stable environment• Understand business process• Tools readiness• Tools readiness• Testing Automation environment readiness• Developers understand the project scope• Developers understand the project scope• Set expectation

Page 26: New trends in testing automation

4

Testing Automation Stages

• Sanity SET– Set of ~50 QTP scripts, verify that new build (version) ready for massive – Set of ~50 QTP scripts, verify that new build (version) ready for massive

testing process• Quick ROI Developments

– Packages can retrieve the investment immediately (e.g. API, data driven, data – Packages can retrieve the investment immediately (e.g. API, data driven, data inflation)

• Regression by modulesSo important to make sure NOT to develop all regression tests in one SET, “Before moving forward with the development stage, we need to analyze our system and moving forward with the development stage, we need to analyze our system and divide it by modules, for each module to develop his own automation SET”

• Data Inflation– Using our GUI interface can help with massive data changes– Using our GUI interface can help with massive data changes

Page 27: New trends in testing automation

4

Testing Tools Management Progress

• Define the project scope• Follow up• Follow up• Testing Automation methodology• Summary

Page 28: New trends in testing automation

Manage your testing projectManage your testing projectManage your testing projectManage your testing projectALMALMALMALM

Page 29: New trends in testing automation

Application Lifecycle Management Application Lifecycle Management

����������

�" �����#��� ��� ������'�������� � ��������������� ����" �����#��� ��� ������'�������� � ��������������� ���

������������� $�� ����'���'���������# ��� ����� ��� �$�

������ �����(���������� � ������)� ��#�������)���$���)������� �����(���������� � ������)� ��#�������)���$���)�

�������)��� �����)� �$����� ���� � �������

Page 30: New trends in testing automation

����� ������������������ �������������

* ���� ������ ����

����� �����

+" �+��!�����

� � ������

,������,������

Page 31: New trends in testing automation

ALM Stages ALM Stages

��� ���� ����������� � ���� ���� �����

Page 32: New trends in testing automation

Strategy Strategy

• ��������#������������� �

• & ���� � �• & ���� � �

• ������ �$���� ����'�������

-��.• -��.

Page 33: New trends in testing automation

Requirement Requirement

• /������� ������• 0������ ��$�����• 0������ ��$�����• �����• �����• �������(��������

Page 34: New trends in testing automation

Quality Quality

• 0������ �• +������ ����• +������ ����

• ,�������• ,�������

Page 35: New trends in testing automation

Operational Operational

• ������ ����

• ��(������������� ��• ��(������������� ��

• �������� � ������• �������� � ������

Page 36: New trends in testing automation

ALM ToolsALM Tools����� ���� ����

������������

Page 37: New trends in testing automation

The ToolsThe Tools

Page 38: New trends in testing automation

Open SourceOpen Source

Open source tools

Testing tool for browser-based testing of web applications

A plug-in driven automated testing tool that separates applications into features and allows those features to be tied together independently

An automated functional testing framework for web applications

Page 39: New trends in testing automation

Types of testing Automation ToolsTypes of testing Automation Tools

Tools cost money

QTP – The MOST common testing Automation tool (41% of the market)

Test Complete – support Extensive platforms Not supported as QTP

Team System 10.00 Coded UI – Testing Automation tool by Microsoft Microsoft

Page 40: New trends in testing automation

�� �!������"�� �!������"

���# �������$���# �������$

Page 41: New trends in testing automation

������������������ ��������������������

[email protected]