Automated Test Tools: Annexure - I B Part A

Download as pdf or txt
Download as pdf or txt
You are on page 1of 9

Annexure –I B

PART A
“Automated Test Tools”

1.0 Rationale

Introduction:-

Software testing is a software engineering activity to check whether


the actual results of the software being developed matches with those of the expected
results and to ensure that the software system is defect free. It involves the execution
of a software component or system component to evaluate one or more properties of
interest. Software testing is not a new field and it has appeared many years earlier, in
software, we need to create a good and efficient software product or services, but this
can be difficult because software must be tested before by stakeholders. A simple
definition of software testing is the process of investigating software to check if it
satisfies the requirement and detects errors that can happen in any software. “Another
definition of software testing is the process of testing, verifying and validating the
user’s requirements” [1]. Figure 1 shows the verification and validation activity of
software testing.

Fig. 1. Verification and validation activity of software testing.

Software validation and verification are software quality assurance activities. The
meaning of validation is the answer to the question “are we building the right
product” and the meaning of verification is the answer to the question “are we building
the product right”. The goal of software verification and validation is to provide tools
to check the correctness of the software. The amount of time required for testing
software can be infinite. The goal of software testing

MGM’s POLYTECHNIC, 1|Pag


AURANGABAD e
is to get information about the quality, risks, error, defects, and bugs that can be
present in the software.

Software testing can be done manually or automatically. Figure 2 shows software


testing. Manual testing is created by the testers. Automated testing or automated
software testing is a test that can be done by software and run automatically. The goal
of automated testing is to reduce the error that may be done by the user because users
are slow and could make an error, so this leads to reduce the cost of software. There
are many automated testing tools that can perform an automated test for software. A
simple example of the automated testing tool in Java is JUnit.

Fig. 2. Software testing [1].

2.0 Literature Review


The testing techniques that can be done by the developer could
be divided into two types. First, the static testing that is done earlier in the development
life cycle, it can be called a verification test. The static test could include inspection
which is a formal type of review where the checklist is created to review documents
works. The main goal of the inspection is to find the defects. The walkthrough is a
meeting conducted by the author to explain the product. The participants can ask
questions and a scribe is assigned to make notes. Technical reviews are created to
check if the code created depends on technical specification and standards. In general,
the test plans, test strategy, and test scripts reviewed in technical reviews. Informal
reviews it is an informal review of the document and the informal comments are
provided.

Second, the dynamic testing that is done in the runtime


environment; it can be called a validation testing. The dynamic test includes both
functional testing and non-functional testing. The dynamic test could include unit
testing which tests for individual modules by developers. The source code is tested in
unit testing. Integration testing which in different modules tests the interface between
them then they are joined. System testing provides a test for whole system. Acceptance
testing which is done form the user's point of view at user's end. The testing
techniques could divide into different types, which are a white box, a black box, and a
gray box. The white box is a test which is useful at exposing coding mistakes. The
black box is a functional test which is useful at exposing conceptual faults. The gray
box is a test has little information about the structure, code, and system. The gray box
commonly used in the integration test.

MGM’s POLYTECHNIC, 2|Pag


AURANGABAD e
3.0 Proposed Methodology

Test automation has undergone several stages of evolution, both in the


development of marketable test tool technologies and in the development of test
automation processes and frameworks within individual QA organizations. The
typical path followed is described below:

 Record and Playback:


monitoring of an active user session, recording user inputs related to
objects encountered in the user interface, and storing all steps and input data in a
procedural script. This method is useful in learning how to use a test tool, but the
scripts produced are difficult to maintain after the application under test changes
and do not produce reliable, consistent results.

 Test Script Modularity:


creating small, independent scripts that represent modules, sections, and
functions of the application-under-test; then combining them in a hierarchical
fashion to construct larger tests. This represents the first step toward creating
reusable test assets.

 Test Library Architecture:


dividing the application under test into procedures and functions – also
known as objects and methods depending on your implementation language –
instead of a series of unique scripts. This requires the creation of library files that
represent modules, sections, and functions of the application under test. These
files, often referred to as function libraries, are then called directly from within
test case scripts. Thus, as elements of the application change, only the common
library components which reference them must be changed, not multiple test
scripts with hard-coded references which might be difficult to locate and validate.

 Data-Driven Testing:
reading input and output values from data files or tables into the variables
used in recorded or manually coded test scripts. These scripts include navigation
through the application and logging of test status. This abstraction of data from
the test script logic allows testers with limited knowledge of the test tool to focus
on developing, executing and maintaining larger and more complex sets of test
data. This increase in organizational efficiency fosters enhanced test coverage
with shorter test cycles.

 Keyword-Driven Testing:
including test step functionality in the data driven process by using data
tables and keywords to trigger test events. Test steps are expressed as Object →
Action →Expected Result. The difference between data-driven and keyword-
driven testing is that each line of data in a keyword script includes a reference that
tells the framework what to do with the test data on that line. The keyword
attached to the test step generally maps to a call to a library function using
parameters read in from the data file or table. One major benefit is the improved
maintainability of the test scripts: by fully modularizing automation of each step,
MGM’s POLYTECHNIC, 3|Pag
AURANGABAD e
it’s easier to accommodate any user interface changes in the Application under
test

4.0 Action Plan

Name of
Details of activity Planned Planned
Responsible Team
Start date Finish date
Members
Collected All Information about
operating system and its types of
Omkar Bomble
27/9/21 27/9/21
operating system.
Design a Report Format and Find
different operating system
Vaibhav Jadhav 15/10/21 15/10/21
pictures & download it.
Collect All Detailed Information
about operating system. And also
Rushikesh Chathe
10/12/21 10/12/21
create certificate page.

5.0 Resources Required


S. No. Name of Specifications Qty Remark
s
Resource/materi
al
1 Computer system 8GB Ram 64bit 1 -
OS
2 Software Microsoft Office 1 -

3 Operating System Windows 11 1 -

**************

MGM’s POLYTECHNIC, 4|Pag


AURANGABAD e
Annexure –I B
PART B
“Automated Test Tools”

1.0 Rationale

With the help of testing tools, we can improve our software performance, deliver a
high-quality product, and reduce the duration of testing, which is spent on manual
efforts.

The software testing tools can be divided into the following:

o Test management tool


o Bug tracking tool
o Automated testing tool
o Performance testing tool
o Cross-browser testing tool
o Integration testing tool
o Unit testing tool
o Mobile/android testing tool
o GUI testing tool
o Security testing tool

Test management tool

Test management tools are used to keep track of all the testing activity, fast data
analysis, manage manual and automation test cases, various environments, and plan
and maintain manual testing as well.

Bug tracking tool

The defect tracking tool is used to keep track of the bug fixes and ensure the delivery
of a quality product. This tool can help us to find the bugs in the testing stage so that
we can get the defect-free data in the production server. With the help of these tools,
the end-users can allow reporting the bugs and issues directly on their applications.

MGM’s POLYTECHNIC, 5|Page


AURANGABAD
Automation testing tool

This type of tool is used to enhance the productivity of the product and improve the
accuracy. We can reduce the time and cost of the application by writing some test
scripts in any programming language.

Performance testing tool

Performance or Load testing tools are used to check the load, stability, and scalability
of the application. When n-number of the users using the application at the same time,
and if the application gets crashed because of the immense load, to get through this
type of issue, we need load testing tools.

Cross-browser testing tool

This type of tool is used when we need to compare a web application in the various
web browser platforms. It is an important part when we are developing a project.
With the help of these tools, we will ensure the consistent behavior of the application
in multiple devices, browsers, and platforms.

Integration testing tool

This type of tool is used to test the interface between modules and find the critical
bugs that are happened because of the different modules and ensuring that all the
modules are working as per the client requirements.

Unit testing tool

This testing tool is used to help the programmers to improve their code quality, and
with the help of these tools, they can reduce the time of code and the overall cost of
the software.

Mobile/android testing tool

We can use this type of tool when we are testing any mobile application. Some of the
tools are open-source, and some of the tools are licensed. Each tool has its
functionality and features.

GUI testing tool

GUI testing tool is used to test the User interface of the application because a
proper GUI (graphical user interface) is always useful to grab the user's attention.
These type of tools will help to find the loopholes in the application's design and
makes its better.

MGM’s POLYTECHNIC, 6|Page


AURANGABAD
Security testing tool

The security testing tool is used to ensure the security of the software and check for
the security leakage. If any security loophole is there, it could be fixed at the early
stage of the product. We need this type of the tool when the software has encoded the
security code which is not accessible by the unauthorized users.

2.0 Course Outcomes Integrated


a) Apply various software testing methods.
b) Text software of performance measure using automated testing tools.

3.0 Literature Review


IBM Rational Functional Tester is an automated functional testing and
regression testing tool. This software provides automated testing capabilities
for functional, regression, GUI and data-driven testing. It supports a range of
applications, including web-based, .Net, Java, Siebel, SAP, terminal emulator-
based applications, and PowerBuilder.

 Visual editing through screenshotsL:-

Visual editing through application screenshots allows testers to understand


test flow and edit test actions without reading
or writing test script code.

 Advanced Script Assure technology :-

With Script Assure, Rational Functional Tester allows you to accommodate


frequent user interface changes and avoid increases in maintenance
overhead.

 Earlier data detection :-

Use Rational Functional Tester to automatically detect data entered during


test recording and prepare the test for data-driven testing.

 Test scripting :-

Choose between Java or Visual Basic .NET. Testers using Java can work in
the Eclipse Java editor, while testers using Visual Basic .NET can work in
Visual Studio .NET.

MGM’s POLYTECHNIC, 7|Page


AURANGABAD
4.0 Actual Procedure Followed.

Name of
Details of activity Planned Planned
Responsible Team
Start date Finish date
Members
Collected All Information about
operating system and its types of
Omkar Bomble
27/9/21 27/9/21
operating system.
Design a Report Format and Find
different operating system
Vaibhav Jadhav 15/10/21 15/10/21
pictures & download it.
Collect All Detailed Information
about operating system. And also
Rushikesh Chathe
10/12/21 10/12/21
create certificate page.

5.0 Actual Resources Used

S. No. Name of Specifications Qty Remark


s
Resource/materi
al
1 Computer system 8GB Ram 64bit 1 -
OS
2 Software Microsoft Office 1 -

3 Operating System Windows 11 1 -

6.0 Outputs of the Micro-Project

Testing is an inevitable part of creating any software product. But manual


testing takes a lot of time and effort and may lead to a delayed product
release. Automated testing can help you improve the efficiency of your testing
efforts and speed up the release of your solution. However, in order to ensure
that automated testing really brings the best results, it’s critical to choose the
right automated software testing tool.

MGM’s POLYTECHNIC, 8|Page


AURANGABAD
7.0 Skill Developed / learning out of this Micro-Project
We’ll be introduced to the world of Software testing. We’ll learn about the
different facets or types of testing tools like Test management tool, Bug tracking
tool, Automated testing tool, Performance testing tool, Cross-browser testing
tool, Integration testing tool, Unit testing tool, Mobile/android testing tool ,GUI
testing tool, Security testing tool ,etc.

8.0 Applications of this Micro-Project

o Katalon. Launched in 2015, Katalon is a free-licensed, cross-browser


tool that enables running automation testing for APIs, Web interfaces, and
mobile (Android and iOS).
o Selenium.
o Lambda Test.
o Ranorex.
o Appium.
o Eggplant.
o Kobiton.

9.0 Area of Future Improvement


Lot of freshers write to me via email about career in software testing,
various growth opportunities that exist in India vs. career in software
development. The main issue is that no one really tells you what kind of jobs
and career do both these career streams offer. This short essay aims to give you
a clarity so that you can make a well informed decision and be happy about your
career choice.

Skill Sets For Test Engineers: They require entirely different skill set which
could be a mix of Java, C, Ruby, Python along with software manual and
automation tools along with scripting languages. There are several automation
tools that require programming knowledge. It's a myth that software testing
engineers do not write code. Given the complexity of the project a software
testing engineer might end up writing more complex code than his developer
counterpart. The point to be understood is that - both development and testing
jobs require you to have programming knowledge.

MGM’s POLYTECHNIC, 9|Page


AURANGABAD

You might also like