Introduction to Software Testing

  • By
  • July 25, 2019
  • Software Testing
Introduction to Software Testing

Introduction to Software Testing

What is Manual testing?

Manual Testing is a type of Software Testing where Testers manually execute test cases without using any automation testing tools. Manual Testing is the most convenient to all testing types and it helps to find bugs in the software.

Any new application/software must be manually tested before its testing can be automated. Manual Testing requires more effort and more time but is necessary to check automation feasibility.

Manual Testing does not require knowledge or programming knowledge of any testing tool.

One of the Software Testing Fundamental is that “100% Automation is not possible”.

There are two ways that software can be tested :

1) Manually by a human and

2)  Automatically by a computer-based. Each method has its advantages and disadvantages but they share the goal of ensuring quality in the software. In this article, Now here we’re going to focus on manual testing.

Manual Testing is a process of finding out the defects in a software program/Application. In manual testing, the tester plays an important role in end-user and verifies or check that all the features of the application are working correctly. The tester manually executes test cases without using any automation testing tools also tester prepares a test plan document which describes the detailed and systematic approach to testing of software applications which includes approach, resources, etc. As manual testing requires complete test cases it is a time-consuming test.

The differences between actual and expected results are treated as defects. The defects are then fixed by the developer of software application. The tester retests the defects to ensure that defects are fixed. The goal of Manual testing is to ensure that application or software is defect & error-free and is working fine to provide good quality work to customers.

For Free Demo classes Call: 9028414448
Registration Link: Click Here!

The goal of Manual Testing

  • The key concept of manual testing is to ensure that the software is error-free and it is working in conformance to the specified functional requirements.
  • Test cases, are designed during the testing phase and should have 100% test coverage.
  • It also makes sure that reported defects are fixed by developers and re-testing has been performed by testers on the fixed defects.
  • Basically, this tester checks the quality of the system and delivers bug-free product to the customer/client/end-user.


So What Is Manual Testing?

Manual testing is the process of testing the functions and features of the software as an end-user requirement which would in order to verify the software is working as required. With manual testing, a tester manually executes tests on the software by following a set of pre-defined test cases. Let us take a close look at how this is done.

How To Do Manual Testing?

Understand The Requirements given below :

In order to successfully conduct manual tests, the tester needs to understand the requirements of the software. By understanding the requirements, tester knows what needs to be tested and what classifies a defect. This is an important part of manual testing as the main goal is to make sure the software is bug-free.

Write Test Cases

Once you understand the requirements, a tester can write test cases. Test cases guide the tester through a sequence of steps to test functions, features and different scenarios within the software application. Writing good test cases is important as they make executing the tests very easily and ensures the best test coverage. Good test cases should also be repeatable, which allows future testers to go in and conduct the tests without having to ask an additional query.

If you’re writing test cases and still using excel to document them, check out TestLodge tool. We make it easy to write and manage test cases.

Log Good Bug Reports

An additional responsibility of the tester is for logging bugs. As you find the bugs, the tester needs to log information for the development team about the defect. Writing good bug reports helps you to more easily and your team also. The tester will save yourself time when answering questions about the bug later.

At its core, a good defect report should have a strong title, steps to replicate the bug, an expected & actual result, and any relevant attachments that will help the development team under stand the issue (screenshots, screen recordings, etc).

Report On The Test Results

After running all tests cases, it’s good to know the results of the tests at a high level. How many tests were run? How many tests failed? How many tests were skipped? TestLodge is a tool makes it easy to get a quick glance of these metrics.

For Free Demo classes Call: 9028414448

Registration Link: Click Here!

When And Why To Manual Test

Manual testing requires a lot of effort and time. But the truth is, it is essential to building software because automated testing can’t cover everything.

After all, humans will be using your software, therefore humans should be involved in testing your software application. Manual testing is more likely to find and solve real usability issues/defect than automated testing. It allows the tester to be flexible or reliable during the test and try different things on the fly.

This isn’t to say automated testing is useless. Automated testing has it’s own benefits (advantage)and provides value in some areas where manual testing does not. But we’ll save that for another post.

Closing Thoughts

Although tester requires a large amount of work, manual testing is necessary in order to ensure a good user experience and a high level of quality. A human tester is always going to find out the bug an automated test cannot. The keys to successful manual testing include understanding the requirements of the software, writing good test cases, and create bug reports.

Types of Manual Testing:

The below given diagram depicts Manual Testing Types. Any type of software testing type can be executed by both manually and as well using an automation tool.

  • Black Box Testing
  • White Box Testing
  • Unit Testing
  • System Testing
  • Integration Testing
  • Acceptance Testing

How to perform Manual Testing

Read and understand the software project documentation/guides. Also, study the Application Under Test (AUT) if available.

Draft Test cases that cover all the specific requirements mentioned in the documentation.

Execute the test cases on the AUT.

For Free Demo classes Call: 9028414448
Registration Link: Click Here!


Automation Testing has become an important part of the development process. Verifying the functionality and test with regression and executing the tests are part of the Test automation process. These are carried out simultaneously and in a very efficient way. Manual testing is the traditional method adopted by a different organization. However, with the increasing number of web-based applications and there quality tools in the market, this is slowly vanishing. Verification and testing web-based interfaces are made very easier with the help of a test automation tool.


Automation testing is a method where software is used to execute the test scripts. This compares the actual result with the expected result by using tools. It can also automate repetitive tasks which are pre-defined, or additional test execution which is difficult to take up manually. Automation testing is a process that actually checks the application after development. Test automation needs less time, money and less human resources.


When automating testing for the projects, certain characteristics are to be taken while automate. Several situations execute where test automation is beneficial. Consider a scenario where the bug is fixed in the code and the same feature was used in various modules. It is difficult to check the bug which is fixed, in previous functionality of the software. While carrying out a test script, regression test is carried out around the bug fixes. This testing execution is done every time , whenever a manual test is executed on a functionality. Working effectively will reduce the time and money. In such a situation, we consider Automation test.


Automation testing process increases the efforts that are required to deliver the test results. This reduces the execution of the test cycles and time. Automation testing is a well-defined procedure with various stages. The automation testing scope has to be defined before the test automation. When starting a test development, its order has to be determined according to the priority of the module. Software tools are used to help write the scripts in order to automate a test process. Automation process involves —

  • Identifying the software to be tested
  • Selecting the proper and applicable automation tool
  • Writing the test scripts
  • Developing the test scripts
  • Executing the test scripts
  • Generating the result/report
  • Identifying the bugs or performance defects


There are several testing tools that are used to build and execute the test script. Below are few of the tools that make the test automation process easy for the web applications.

For Free Demo classes Call: 9028414448

Registration Link: Click Here!


This is a portable, open-source testing tool. It record/playback activity which allows the team to write test scripts without actually learning the scripting language. The different programming language is used to write scripts in various coding languages. This tool can be run on most of the browsers like chrome, Firefox, IE, etc.

Rational Function Tester:

RFT tool is created by software division of IBM. This is used to create tests script that replicates the human tester. Quality assurance (QA) teams mainly use this tool.

HP Load Runner:

LR tool is designed by Hewlett- Packard. This tool tests the system behavior and its performance under some load. It can respond to various users parallelly who interact with the software. Recording and finding the performance of the user activity is performed.

Soap UI:

This open-source tool is specially created for service-oriented architectures. This is a Java-based tool that can test development, functional testing, load testing and other also.


Automation Testing is a classical way to ensure the quality of an application by not introducing bugs or performance issues in the new versions of the application. Completion of the projects is done quickly as the automation verifies each functionality quickly after a change is done. Test automation can be used to test various applications/software on load, performance and stress. Automation testing improves efficiency and is more cost effective than manual testing.


Automation Testing has specific advantages for improving the long-term efficiency of a software team’s testing processes to beats manual testing. It  supports the following features:

  • Frequent regression testing
  • Rapid feedback to developers
  • Virtually unlimited iterations of test case execution
  • Support for Agile and extreme development methodologies
  • Disciplined documentation of test cases
  • Customized defect reporting
  • Finding defects missed by manual testing

For Free Demo classes Call: 9028414448

Registration Link: Click Here!


Introducing Selenium

Selenium is an automation testing tool which automates a set of different software tools each with a different approach to supporting test automation. Most Selenium QA Engineers focus on the few tools that most meet the needs of their project, however learning all the automation tools will give you many different opportunities for approaching different test automation problems. The entire whole suite of tools results in a rich set of testing functions specifically geared to the needs of testing of web applications of all types. These operations are so flexible and can easily allow many options for locating elements present on a web page and comparing expected test results against actual application/software behavior. One of Selenium’s key features is that one’s tests support for executing on multiple browser platforms.

What is Selenium?

Selenium is a free or (open source) automated testing suite to automate web applications across different browsers and platforms. Selenium tool is quite similar to HP Quick Test Pro (QTP now UFT) only that Selenium focuses on automating web-based applications.

Selenium is not just a single tool but it is a suite of software’s tools, each catering to different testing needs of an organization. It has four components.

  • Selenium Integrated Development Environment (IDE)
  • Selenium Remote Control (RC)
  • WebDriver
  • Selenium Grid



  • WebDriver is One of the most core components of Selenium
  • WebDriver having very vast features where the driver covers all the features and properties of explorers
  • WebDriver gives us the opportunity to write once and execute a script on multiple platforms
  • WebDriver provides speed to Selenium architecture where communication with Application under Test (AUT) becomes faster
  • Despite working on any other programming language or environment you need not learn anything new it just grabs the knowledge and starts producing results
  • WebDriver gives an opportunity to explore the Browser from the core and can contribute till the end in the Automation process
  • WebDriver Introduce AndroidDriver and IphoneDriver to explore the Mobile world

Call the Trainer and Book your free demo Class for now!!!

call icon

© Copyright 2019 | Sevenmentor Pvt Ltd.


One thought on “Introduction to Software Testing

Submit Comment

Your email address will not be published. Required fields are marked *