How selenium can transform your qa career

download How selenium can transform your qa career

of 21

  • date post

    13-Jan-2017
  • Category

    Technology

  • view

    97
  • download

    0

Embed Size (px)

Transcript of How selenium can transform your qa career

How Selenium can Transform your QA Career

How Selenium can Transform your QA CareerShama Ugale

AgendaWhat is Test Automation Testing ??Why and when to Automate ??Automation Myths and RealityAutomation Vs ManualTools in the MarketSelenium The myth and TruthWho are you ??How can Selenium help you ??Do you can you really learn Selenium ??Then How and What ??

What is Test Automation ??Test automation is the use of software :

- To set test preconditions.- To control the execution of tests.- To compare the actual outcomes to predicted outcomes.- To report the Execution Status.

Commonly, test automation involves automating a manual process already in place that uses a formalized testing process.

Why and When To Automate?Frequent regression testingRepeated test case Execution is requiredUser Acceptance TestsFaster Feedback to the developersReduce the Human EffortTest same application on multiple environments

Myth - Test Automation is simple, that every tester can do itThis myth is promoted by the tool sales people. They are trying to promote the following test automation process:

- Record the script- Enhance the script by adding functions and data driving- Run the scripts- Report results

Under the influence of this myth the QA manager can proudly report: All our testers are developing test automation.

Reality - Test automation is a software development taskAutomation should be designed, developed and tested

You need to have some kind of a programming background to implement test automation. Test Automation is not as complex as C++/C#/Java development.

Test automation standards should be developed

Automated test components are assets that should be treated like application source code

Automated Tests vs Manual TestsManual Testing is boring- No one wants to keep filling the same forms- There is nothing new to learn when one tests manually- People tend to neglect running manual tests- No one maintains a list of the tests required to be run if they are manual tests

Automated Tests on the other hand are code- They are fun and challenging to write- One has to carefully think of design for reusability and coverage- They require analytical and reasoning skills- They represent contribution that is usable in the future

Automated Tests vs Manual TestsManual Testing is not reusable- The effort required is the same each time- One cannot reuse a Manual Test

Automated Tests are completely reusableIMPORTANT: One needs to setup a Continuous Integration Server, a common Code Repository and a organization structure- Once written the Automated Tests form a part of the codebaseThey can be reused without any additional effort for the lifetime of the Project

Automated Tests vs Manual TestsManual Tests provide limited Visibility and have to be Repeated by all StakeholdersOnly the developer testing the code can see the resultsTests have to be repeated by each stakeholderFor eg Developer, Tech Lead, GM, Management

Automated Tests provide global visibilityDevelopers, Tech Leads and Management can login and see Test ResultsNo additional effort required by any of them to see the software works!!

Automated Tests vs Manual TestsManual Testing requires complex Manual Setup and Tear Down- Can involve frequently running db queries- Can involve making changes to backend servers - Steps become more complex with multiple dependent test cases

Automated Tests can have varying scopes and require less complex setup and teardown- Unit Tests have external dependencies mocked so no setup / teardown required- Setup and Tear down are automated in Functional Tests using framework support

Automated Tests vs Manual TestsManual Testing has a high risk of missing out on something- Each time a developer runs manual tests it is likely he will miss out on an important test caseNew developers may have no clue about the battery of tests to be run

Automated Tests have zero risk of missing out a pre-decided test- Once a Test becomes a part of Continuous Integration it will run without someone having to remember to run it

Automated Tests vs Manual TestsEffort and CostLets assume 6 test casesEffort required to run all 6 manually => 10 minEffort required to write unit tests for all 6 cases => 10 minEffort required to run unit tests for all 6 cases => < 1 minNumber of testing iterations => 5Total manual testing time => 50 minTotal unit testing time => 10 min

ReleaseManual TestAuto TestManual TestCumulative1101010210020310030410040510050

ReleaseManual TestAuto TestManual TestCumulative1101010210020310030410040510050

12

Main Reasons for Test Automation failuresLack of Management SupportInexperienced Test Automation staffOver-engineering

Myth :

Open source so no costWidely usedVery complexYour future work

Truth :

No license, but more expensive skillMore popular than implementedNot that tough , when learnt in right way

14Selenium - The Myth and Truth

New to IT

QA

Non-QA IT guys

QA Lead / Manager

IT Leader15Who are you ??

Getting your first QA job.

For your upcoming automation project

Get a promotion at work

Saving project cost

Not sure . confused16How can Selenium help you ??

Getting Hired

Getting projects

It gives hope

Multi-skilled

17How can Selenium Transform your Career ??

I have no clue, dont know where and how to start .

I have never written code

Java scares me.

Am I even Capable.

Little bit all of the above18What is your biggest fear in learning Selenium ??

Fundamentals of Automation

Selenium Introduction

Core Java

Junit , TestNG

Element Identification.

Webdriver (Selenium 2.0)

Automation Frameworks

19What to learn ??

Trained hundreds of professionals

Practical projects

Well organized and rich course content

Strong emphasis and hands on coding.

Forum for further assistance

20Am I sure?? YES How ??

Thank you