Introduction to TestAutomation Presented by QuontraSolutions

Preview:

DESCRIPTION

Learn through Experience -- We differentiate our training and development program by delivering Role-Based training instead of Product-based training. Ultimately, our goal is to deliver the best IT Training to our clients. Attendees also learn: 1. Resume Preparation Guidelines and Tips 2. Mock Interviews and Interview Preparation Tips For more visit http://www.quontrasolutions.co.uk/selenium-training-classes/ - PowerPoint PPT Presentation

Citation preview

Software Testing & Introduction to Test

Automation

Presented By

Quontra Solutions IT Courses Online Training –USA & UK

For Free Demo Call Us : 20 - 3734 -

1498Email:

info@quontrasolutions.co.uk

Basic Software Testing Concepts

Types of Testing

Introduction to Automation

Pros and Cons

Some light on WHITE Framework- Windows Automation

Demo

Some light on Selenium- Web Automation

Demo

Q&A

Agenda

INTRODUCTION OF TESTING

What is Testing: Software testing is the process of evaluation of a software item to detect differences between actual and expected output on given input.

The purposes of testing are:

• Quality assurance, Verification and Validation,• To find the bugs before the product is released to customer. • To improve the quality of the product • To evaluate that the product is according to requirements.

Software Testing is the process of assuring that product which is manufactured by developer is meeting the user requirement. The motive to perform testing is to find the bugs and make sure that they get fixed.

TYPE OF TESTING

• Manual testing: This type includes the testing of the Software manually i.e. without using any automated tool or any script.

• A manual tester would typically perform the following steps for manual testing:

• Understand the functionality of program

• Prepare a test environment.

• Execute test case(s) manually

• Verify the actual result

• Record the result as Pass or Fail

• Make a report of the Pass and Fail test cases

• Publish the report

WHO AND WHEN TO START TESTING?

• Who does testing: Following professionals are involved in testing of a system within their respective capacities:

• Software Tester

• Software Developer

• Project Lead/Manager

• End User

• When to Start Testing?

• Testing is done in different forms at every phase of SDLC like during Requirement gathering phase, the analysis and verifications of requirements are also considered testing.

Pros - Cons• Advantage:-

• Manual testing can be use in both small and big project.

• We can easily reduce and add our test case according to project movement.

• Easy to learn for new people who enters in manual testing.

• Manual testing is more reliable then automated (in many cases automated test not cover all cases) .

* Disadvantage:-

• GUI object size difference and color combination etc is not easy to find out in manual testing.

• Actual load and performance is not possible to cover in manual testing for large number of users.

Automation testing• Automation testing: Automation testing which is also known as Test Automation.

In this testing, the tester writes scripts and uses another software to test the software. There are many Tools are use in automation Testing.

• Software testing tools:

• HP Quick Test Professional

• Selenium

• Test stack.White

• Testing Anywhere

• WinRunner

• LaodRunner

Pros - Cons• Advantages

• Easy to cover up all cases in a limited time period.

• You can perform different types of testing’s  like load testing, performance testing using tool.

• Automated testing can be performed on different operating systems.

• Disadvantages

• Purchase a tools and Maintenance.

• Automation testing is more expensive work as comparing with manual testing.

• Language wise there are many tools to test various type of software, means all tools will not support to all software which are developed in different languages.

SDLC AND STLC

• Software Development Life Cycle: There are six type of SDLC.• Requirement phase

• Design phase

• Coding (programming)

• Testing

• Release (Production)

• Maintenance (Support)

• Software Testing Life Cycle: There are seven type of STLC.• Requirement Study

• Test Planning

• Writing Test Cases

• Review the Test Cases

• Executing the Test Cases

• Bug logging

• Close or Reopen bugs

BASIC TYPE OF TESTING

• Black Box Testing: The technique of testing without having any knowledge of the interior workings of the application is Black Box testing. The tester is oblivious to the system architecture and does not have access to the source code. It is also called behavioral, functional and close box testing.

• White Box Testing: White box testing is require understanding of internal logic and structure of the code. White box testing is also called glassbox testing or open box, structural,clearbox testing.

• Different types of software testing:

• Unit testing

• Smoke testing

…continue

• Functional testing

• Integration testing

• Regression testing

• System testing

• Load testing

• Stress testing

• Performance testing

• User acceptance testing

• Black box testing

• White box testing

• Alpha testing

• Beta testing

SAMPLE OF TEST CASE AND BUG

LIFE CYCLE

Sample of Test case: Test Case ID

Test Case Descriptio

n

Input Data

Expected Result

Test Result

Remarks

Bug Life Cycle: There are six phases of Bug Life cycle. a. New b. Assigned c. Resolved d. Verified e. Closed f. Reopen

Sample of Bug : Bug Name: Application crash on clicking the SAVE button.

Bug ID: (It will be automatically created by the BUG Tracking tool once you save this bug)

Area Path: USERS menu > New Users

Severity: High (High/medium/Low)

Priority: High (High/medium/Low)

Assigned to: Developer-X

Reported By: Your Name

Reported On: Date

Reason : Defect

Environment: Windows 2003/SQL Server 2005

Bug details…continued

• Severity: Describes the bug in terms of functionality.

• Priority: Describes the bug in terms of customer.

• Ex.• High Priority and Low Severity: Company logo is not properly displayed on their website.

• High Priority and High Severity: Suppose you are doing online shopping and filled payment information, but After submitting the form, you get a message like "Order has been cancelled."

• Low Priority and High Severity: If we have a typical scenario in which the application get crashed, but that scenario exists rarely.

• Low Priority and Low Severity: There is a mistake like "You have registered success" instead of successfully, success is written.

Windows Application Automation using WHITE

Framework

Need for Automation in any Windows Application

• Repetitive and Multiple actions as a part of Functional

testing

• Parallel verifications in third party applications

• Post every deployment in the environment, smoke tests to

have health check.

Type of testing tasks that are routine while doing Verifications.

Some light on WHITE Framework

Framework for automating rich client applications based on Win32/Win

Forms/WPF/ Silverlight, Java platforms

.NET based and does not require the use of any proprietary scripting

languages

Open Source

Custom Commands, Custom Controls and performs complex actions of

any windows application

Integration with SELENIUM is hassle free…

Browse for more http://teststack.github.io/White/

WHIT

E

FRAMEW

ORK

Cont..

Time for a Demo!!!

Let’s have a Demo!! With

Quontra Solutions

Call Us : +1(404)-900-9988 Email:info@quontrasolutions.com

Let’s have a Demo!! With

Quontra Solutions

Call Us : +1(404)-900-9988 Email:info@quontrasolutions.com

Some light on Selenium

Web testing framework

Runs in a browser

HTML & Java script

Open Source

Selenium is a robust set of tools that supports rapid development of test automation

for web-based applications.

Selenium operations are highly flexible, allowing many options for locating UI

elements and comparing expected test results against actual application behavior.

Some light on Selenium…(Continued)Selenium Features

• Supports Cross Browser Testing. The Selenium tests can be run on multiple browsers.

• Allows scripting in several languages like Java, C#, PHP and Python.

• Assertion statements provide an efficient way of comparing expected and actual results.

• Inbuilt reporting mechanism.Selenium Flavors

• Selenium IDE

• Selenium Remote Control

• Selenium Webdrivers

Selenium’s Advantages over other tools

Multiple browser support (supports almost all browsers)

Ease in Custom Control Identification

Test playback is very fast.

Very easy to get your initial tests running. Highly in-built interface and Good workflow since it is visible side-by-side with your browser.

Test script is easily readable/understandable

Tests can be exported in many different programming languages

Custom Controls identification was difficult

Browser compatibility Issues.

Tool tips were not recognized.

Maintaining the single UI Map was a bit difficult.

Few controls were recognized on the basis of coordinates on the browser

which is not supporting our scripts on different screen sizes.

Few Common Challenges during Automation

Steps to start with Selenium!Selenium Remote Control (RC)

• Download and add ThoughtWorks.Selenium.Core dll to C# solution

• Download Run Selenium server in your system

• Create a test script in C# and run it.

Selenium Test Automation Process

• Once the Selenese script is

converted into your

preferred language you can

run them using Selenium

Server.

• For running the script you

also need the client driver

for that particular language.

And Some Limitations

No support for https on Google chrome in Selenium.

Selenium is only for Web Test Automation

Sometimes issues with object identification

Queries/Suggestions- Lets discuss

Recommended