0% found this document useful (0 votes)
10 views23 pages

CH 7

The document discusses software testing, focusing on test tools and automation. It outlines the differences between manual and automated testing, the benefits of automation, and the process of selecting and implementing testing tools. Additionally, it covers the types of testing tools available and their classifications based on various criteria.

Uploaded by

danielzegabe
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
10 views23 pages

CH 7

The document discusses software testing, focusing on test tools and automation. It outlines the differences between manual and automated testing, the benefits of automation, and the process of selecting and implementing testing tools. Additionally, it covers the types of testing tools available and their classifications based on various criteria.

Uploaded by

danielzegabe
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 23

Software testing

Department of
Software engineering
4th Year
Software testing and quality assurance

Presented by: Demeke M.


MEKDELA AMBA U.
Chapter seven

Chapter seven
Test tool and automation

Presented by: Demeke M.


MEKDELA AMBA U.
Software testing tool 3
Introduction
o Software Testing is usually the part of the project which makes everybody weep. It involves
automating a manual process of testing.
o Now days we can get lots of software testing tools in the market.
o Selection of tools is totally based on the project requirements
• Proprietary/commercial tools or
• Free tools/open-source tools
o Off course, free testing tools may have some limitation in the features list of the product, so it’s
totally based on what are you looking for & is that your requirement fulfill in free version or go for
paid software testing tools.
o Software testing is done by either manually or automated.
Software testing tool 4
Manual vs automated
Manual testing Automated testing
It is less reliable and performed by It is more reliable and performed using
human intervention and exposed to different tools and test scripts.
human errors.
It is heavily dependent on automation
It is heavily dependent on human
tools.
resources.
It is a very slow process and relies It is a very fast process and does not
heavily on human intervention. require human intervention.

It does not require programming, and It requires programming, and technical


technical knowledge. knowledge.
Mostly the regression test cases are not Mostly the regression test cases should
executed manually. be automated to improve the software
quality.
Software testing tool 5
What is automation?
o “Automation is the use of tools and strategies that reduce human involvement or
interaction in unskilled, repetitive or redundant tasks”.
o Automation Testing, often known as Test automation, is a software testing approach
that involves the execution of a test case collection using particular automated testing
software tools.
o Automation testing is use of tools or software to perform software testing.
Software testing tool 6
Benefit of automation testing
Production of a reliable system Improved performance/load/stress testing Improved
partnership with development team Improved
system development life cycle

Improvement of the quality of the lest effort. Improved build verification testing (smoke testing)

Improved regression testing


Improved multiplatform/software compatibility testing
Improved execution of the repetitive tests

Improved focus on advanced test issues


Execution of tests that manual testing can't accomplish
Ability to reproduce software defects

Reduction of test effort and minimization of schedule


Software testing tool 7
Automated testing process
o In an Automation Process, the stages are as follows −
1. Choose a test tool
2. Define the Automation Scope
3. Design, Planning, and Development
4. Execution of the Test
5. Maintenance
Software testing tool 8
Choose a test tool
o Choosing the right test tool is crucial for ensuring the quality and efficiency of your
software development process or for successful automation. It involves a careful
evaluation of your project's needs and the tool's capabilities.
o Choosing the right software testing tool can be difficult, but it is essential for
successful test automation.
o Choosing the right test tool depends on several factors, including your project's
requirements, team skillset, budget, and the type of testing you need to perform.
Software testing tool 9
How to choose a test tool?
o The following are key factors to consider when choosing a software test automation tool.
• Project requirements like web, mobile, desktop
• Compatibility with the application
• Support for required programming languages and frameworks.
• Team skill set
• Project budget/cost and licensing like commercial vs. open-source
• Reusability and ease of Use
• Ease of maintenance and test case creation
• Community Support: Does the tool have a large and active community?
• Integration support with another tool (like CI/CD system)
Software testing tool 10
Define the automation scope
o This initial phase involves determining which parts of the application should be automated. It
includes analyzing the application's requirements, identifying suitable test cases for automation,
and assessing the feasibility of automation.
o The area of your application under test that will be automated is referred to as the scope of
automation. The following factors aid in determining scope −
• Regression tests: tests that ensure new code changes don't break existing functionality.
• Repetitive tests: tests that are executed frequently.
• High-risk areas: tests that focus on critical functionalities.
• Tests requiring high precision such as performance
• Stable functionality: tests that are less likely to change frequently.
Software testing tool 11
Design, planning and Development
o In this phase we plan the automation process, plan test data and developing the test
scripts.
o Test planning: Define objectives, plan test data, resources, tools, and timelines for
the automation project.
o Test Design: Designing a modular and maintainable framework (e.g., data-driven,
keyword-driven), and reusable modules.
o Test Development: In this we write the automation scripts that will run the test
cases, ensuring they are modular, maintainable, and efficient.
Software testing tool 12

Characteristics of automated test cases


Software testing tool 16
Execution of the test
o The primary goal of this phase is executing the automated test cases and verify the
system's behavior.
o Automation during this phase, Run the automated test scripts and collect results.
Before they may be configured to run, the scripts need input test data. They generate
extensive test results after they've been run.
o Execute tests in the planned environment (e.g., browsers, devices, operating
systems).
o Not only executing test case but also analyzing test result.
Software testing tool 17
Maintenance
o Maintain the automated test scripts to keep them up to date with application changes. [Maintain
and update the automated test scripts to keep them aligned with application changes.]
o Main tasks are:
• Script maintenance: Update the automated test scripts to accommodate changes in the
application (e.g., UI changes, functionality changes).
• Test data maintenance: Modify test data as needed, especially when business logic changes.
• Framework upkeep: Ensure the automation framework is up to date with the latest best
practices and tools.
• Re-run automation tests: Run tests periodically to check for regression and detect new bugs
that could have been introduced after code changes.
Software testing tool 18
Automated testing type
o Testing for smoke
o Testing at the unit level
o Integrity checking
o Testing of functionality
o Keyword research
o Testing for regression
o Data-informed testing
o Testing in a black box
Software testing tool 19
Advantage of test automation
o Testing is 70% quicker than manual testing.
o More application functionalities are tested.
o Saves both time and money / reduced cost
o During the execution, no human intervention is necessary.
o Enhances Productivity
o Improved test execution speed / fast
o Test scripts that may be reused
o Frequently and thoroughly test
o Automation allows for a longer cycle of execution.
o Earlier delivery to market
Software testing tool 20
Disadvantage of test automation
o The setting up of test automation initially requires a lot of time, effort, and cost.
o High investment is needed in the tools and training
o A hundred percent test automation is not possible to achieve.
o It is not feasible to automate all kinds of scenarios, and use cases.
o The test automation can be performed by testers who are experienced, and have the
technical expertise, and programming knowledge.
o A lot of testing areas left uncovered.
Software testing tool 21
Limitation of test automation
o Does not replace manual testing
o Test automation may limit software development
o Tool have no imagination
o Manual tests find more defects than automated tests.
o Automatic test plan generation /No tool can create automatically a
comprehensive test plan.
Software testing tool 22
Classification of testing tool
o Testing tool are classified int to
o Based on testing phase
1. Unit Testing Tools - These tools are used to test individual units or components of code.
• E.g. JUnit, NUnit, PyTest, TestNG
2. Integration Testing Tools - These tools are used to test the interactions between different
units or components.
• E.g. Postman (for APIs), WireMock, Mockito, FitNesse.
3. System Testing Tools - These tools are used to test the entire system as a whole.
• E.g. Selenium, Cypress, Playwright
4. Acceptance Testing Tools - These tools are used to verify that the system meets the
requirements of the users or customers.
• E.g. Cucumber, FitNesse.
o Based on the Automation Level:
1. Manual Testing Tools: These tools assist with manual testing
• E.g. TestRail, Jira, Bugzilla, Trello, Zephyr
2. Automated Testing Tools: these tools automate the execution of test cases.
Software testing tool 23
Cont.…
o Based on testing type
1. Functional Testing Tools: These tools are used to test the functionality of the software.
• E.g. Selenium, Postman, SoapUI
2. Non-Functional Testing Tools: These tools are used to test non-functional aspects of the
software, such as performance, security, and usability.
• Performance Testing Tools: JMeter, LoadRunner.
• Security Testing Tools: OWASP ZAP, Nessus.
• Usability Testing Tools: UserZoom, Lookback
• Smoke Testing: Selenium, Postman, TestNG, Cypress
3. Regression Testing Tools: These tools are used to ensure that changes to the software have
not introduced new defects.
• E.g. Selenium, QTP, Appium
4. Static Analysis Tools: these tools analyze code without executing it.
• E.g. SonarQube, Checkstyle.
5. Dynamic Analysis Tools: These tools analyze code while it is running.
• E.g. Debuggers, profilers.
Software testing tool 24
Other type of testing tool
o Web Testing Tools: These tools are used to test web applications.
• E.g. Selenium, Cypress, Playwright, Protractor
o Mobile app Testing Tools: These tools are used to test mobile applications.
• E.g. Appium, XCUITest(IOS), Espresso(Android)
o API Testing Tools: These tools are used to test APIs.
• E.g. Postman, Rest Assured, SoapUI.
o Database Testing Tools: These tools are used to test databases.
• E.g. DbFit.
o Security testing : Evaluate the security vulnerabilities of an application
• E.g. OWASP ZAP, Nessus, SQLMap, Fortify
o GUT testing
• E.g. Selenium, Playwright, Cypress
Software testing tool 25

Lab exercise
Test software using tool
NEXT CLASS >>>>>>>>
Software testing tool

End !!!

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy