Sunday, 22 January 2017

Testing types (Manual and Automation Testing )

Testing types:

In this section we will learn different types of testing which are being used in testing a Software during SDLC.
Manual Testing:-

In manual testing testers manually execute test cases without using any automation tools.
It is the most primitive of all testing types and helps to find bugs in the software system.
 Any new application must be tested manually, before it testing can not be automated. Manual testing requires more effort, but it is necessary to check feasibility of automation.
And manual Testing does not require knowledge of any testing tool.
In manual testing activity tester needs to be very patient, creative & open minded. They need to think and act with an End User perspective.
Goal of Manual Testing:
The main purpose of Manual Testing is to ensure that the application is error free and it is working in conformance to the specified functional requirements.
For manual testing test suites or cases, are designed during the testing phase and it should have 100% test coverage.
Manual testing also makes sure that reported defects are fixed by developers and re-testing has been performed by testers on the fixed defects.
Basically, manual testing checks the quality of the system and delivers bug-free product to the customer/client. 

Types of Manual Testing:

  1. Unit testing
  2.  System testing
  3. Integration testing,
  4. Acceptance testing
  5. Black box testing
  6. White box testing.

Tools Used in Testing:-

  1.  Selenium
  2. QTP
  3. Jmeter
  4. Loadrunner
  5. TestLink
  6.  Quality Center (ALM)

Automation Testing

Automation testing is also known as “Test Automation”, in which the tester writes scripts and uses another software to test the application/product.

As we know manual testing is performed by a human sitting in front of a computer carefully executing the test steps.

Automation Testing means using an automation tool to execute your test case suite.   
The automation software can also enter test data into the System under Test, compare expected and actual results and generate detailed test reports.
Test Automation demands considerable investments of money and resources.
Once the test suite is automated, there is no need of human intervention is required to test the software. 
Right selection of automation tool, testing process and team, are important players for automation to be successful. Manual and automation methods go hand-in hand for successful testing.

Why Automated Testing?

  • Manual Testing of all work flows, all fields, all negative scenarios is time and cost consuming.
  • It is difficult to test for multi lingual sites manually.
  • No need of human intervention. You can run automated test unattended (overnight)
  • Automation increases  speed of test execution.
  • Automation helps increase  Test Coverage.
  • Manual Testing can become boring and hence error prone.

What to automate?

It is not possible to automate everything in the Software; however the areas at which user can make transactions such as login form or registration forms etc, any area where large amount of users’ can access the Software simultaneously should be automated. Furthermore all GUI items, connections with databases, field validations etc. can be efficiently tested by automating the manual process.

When to Automate?
 Test Automation should be uses by considering the following for the Software:
        1. Large and critical projects.
        2. Projects that require testing the same areas frequently.
        3. Requirements not changing frequently.
        4. Accessing the application for load and performance with many virtual                 users.
        5. Stable Software with respect to manual testing.
        6. Availability of time.

How to Automate?
 Automation is done by using a supportive computer language like VB scripting and an automated software application. There are a lot of tools available which can be used to write automation scripts. Before mentioning the tools lets identify the process which can be used to automate the testing:
  1. Identifying areas within a software for automation.
  2. Selection of appropriate tool for Test automation
  3. Writing Test scripts
  4. Development of Test suits.Execution of scripts
  5. Create result reports.
  6. Identify any potential bug or performance issue.

   Tools Used in Automation Testing

  1. HP Quick Test Professional
  2. Selenium
  3. IBM Rational Functional Tester
  4. SilkTest
  5. TestComplete
  6. Testing Anywhere
  7. WinRunner
  8. LaodRunner
  9. Visual Studio Test Professional
  10. WATIR

Testing that can be Automated

  • Smoke Testing.
  •  Unit Testing
  • Integration Testing
  • Functional Testing
  • Keyword Testing
  • Regression Testing
  • Data Driven Testing
  • Black Box Testing
Programming Languages Used in Automation:
  • Java 
  • C#
  • Python
  • Ruby
  • Perl
  • PHP

No comments:

Post a Comment