20
Functional Tests Automation with Robot Framework nov 2013 Laurent Bristiel

Functional Tests Automation with Robot Framework

Embed Size (px)

DESCRIPTION

Functional Tests Automation with Robot Framework. Slides from a talk given at softShake 2013.

Citation preview

Page 1: Functional Tests Automation with Robot Framework

Functional TestsAutomation

with Robot Framework

nov 2013

Laurent Bristiel

Page 2: Functional Tests Automation with Robot Framework

Target audience

testers over developers

products over projects

application/web over mobile

Agile over traditional

Page 3: Functional Tests Automation with Robot Framework

What tests?

Unit Tests

End 2 EndExploratory

Tests

Component Tests

Page 4: Functional Tests Automation with Robot Framework

Why automation?

lazy

cautious

wise

Page 5: Functional Tests Automation with Robot Framework

When to automate?

before development

during development

after development

Page 6: Functional Tests Automation with Robot Framework

What tool?

Page 7: Functional Tests Automation with Robot Framework

Robot Framework

Generic framework for tests automation

Open Source - Apache 2.0 licence

Sponsored by Nokia Siemens Networks

Written in Python

Current version 2.8.1 (june 2013)

Several approach of tests

Page 8: Functional Tests Automation with Robot Framework

Architecture

a test case is a file

a test case is a suite of keywords with arguments

Keywords are builtin, written in Python or in Java

Robot execute the keywords until it reaches an exception

If exception, test case is failed, otherwise it is passed

command line results and html report

log file

Page 9: Functional Tests Automation with Robot Framework

Architecture

Librairies

SUT

Page 10: Functional Tests Automation with Robot Framework

Keyword-driven

Page 11: Functional Tests Automation with Robot Framework

data-driven

Page 12: Functional Tests Automation with Robot Framework

behaviour-driven (BDD)

Page 13: Functional Tests Automation with Robot Framework

LIVE CODINGchecking files

Page 14: Functional Tests Automation with Robot Framework

checking through REST API

LIVE CODING

Page 15: Functional Tests Automation with Robot Framework

checking through web UI

LIVE CODING

Page 16: Functional Tests Automation with Robot Framework

Moody’s : 800 tests on 5 products Finance, C++, SQL, Windows

Robot used by technical and functional QA

XLS spreadsheets used as tests config

ForgeRock : 400 tests on 3 products Identity, Java, BD, JSON, REST, Linux, Mac, backbone.js

Heteregeous tests on multi-plateforms (OS, BD, Java...)

Performance optimization with multi-levels setup/teardown

Feedback

Page 17: Functional Tests Automation with Robot Framework

Good points

lightweight, simple, fast

easy to read tests

can be used by non-technical QA

unique entry point for heterogeneous tests

many Python libraries available

Page 18: Functional Tests Automation with Robot Framework

Limitations

Robot DSL can seem restricted

Custom IDE (RIDE) not working well on Mac

Tests are so easy to write they can be dirty code

!

Might be too optimistic to expect products and dev teams to write or maintain tests

QA might end up isolated on their own framework

Page 19: Functional Tests Automation with Robot Framework

Bonus

Jenkins Plugin

Maven Plugin

IDE Plugin (Eclipse, Vim, Textmate)

Active mailing list

Page 20: Functional Tests Automation with Robot Framework

[email protected]

laurent.bristiel.com

Functional Tests Automation with Robot Framework

Thanks Questions?

http://robotframework.org