useful automation
DESCRIPTION
В докладе рассказано о том, как автоматизация может упростить жизнь мануальному тестировщику. Автор делиться личным опытом и практическими советами о том, как начать изучать автоматизацию без вреда текущему проекту и процессу тестирования в целом. Расскажу вам какие языки программирования лучше применить в конкретных практических ситуациях. Доклад будет интересен прежде всего для тех тестировщиков, которые хотят научиться автоматизировать, но не знают как и с чего начать.TRANSCRIPT
Useful Automation
Confidential
Sergey Tupchiy, Automation QA Architect
http://github.com/stupchiy
http://ua.linkedin.com/in/stupchiy
AKA
WHO AM I?
Confidential
Why you need automation?
• Why we should do Automated Testing?
Faster Bug Determining Faster Releases Faster Testing Less Efforts of Manual Testers Less Efforts of Developers Saves Time Increase Accuracy Improves Coverage Reusability Automation can save money
Confidential
Problems
• Need to be more technical person• Need to learn something new• Need to do programming• Need to do not your work • Record & Run tools don't give good feedback• A lot of efforts needed
Confidential
Problems
• You need to use project TIME• You need a lot of TIME to automate• You have no TIME• You need to waste your own TIME
IT's all about TIME
Confidential
EXAMPLE
Confidential
Beginning
How to start?
• Take the basics• Start to learn programming• Ask for help from developers• Determine Repeatable tasks
Confidential
Beginning
What to start automate?
• Covering annoying manual tests• Test Data Preparation• DB insertions
Confidential
EXAMPLE
Confidential
Programming
How to learn programming?
Ruby• http://learnruby.com/• http://rubykoans.com/Perl• http://cpan.org• http://learn.perl.org/Python http://learnpythonthehardway.org/ http://www.learnpython.org/And a lot more
Confidential
Programming
Advantages of LanguagesAdvantages of LanguagesPerl
Better text processing Regular expression support Cpan.org
Python Readability and cleaner code Easy variables Learnability
Ruby Better OOP Flexibility and Consistency
Bash Everything you can do in *nix like terminal
Confidential
EXAMPLE
Confidential
About Tools
Compatibility • Is the tool compatible with the application? Does it
identify all the objects in your application?• Identify different classes of object in the
application. (Standard controls & customized)• Identify different possible events for each
object (mouse over, mouse down, type, drag, etc)
• Record and Playback for aboveFunctionality
• Rate the application against the features list required for automation team (Evaluation Criterion)
Confidential
About Tools
Usability • How easy it is to learn and adapt? • Availability of trainings.
Maintainability• How good is support by the company. • Online user community?
Flexibility• Licensing policy of the company (This points is here
thanks to the rigid licensing policies of some companies
Confidential
EXAMPLE
Confidential
And Remember The Rules
There is no easy way sometimes
Confidential
And Remember The Rules
Don't be afraid
PYTHON PERL RUBY
Or Bash, JAVA, ActionScript, JS, bla, bla, bla
Confidential
Thank You!
QUESTIONS ?