SlideShare a Scribd company logo
1 of 30
UNIT - 4
TESTING IN THE AGILE ENVIRONMENT
• Agile software testing is a methodology that
helps developers test their code continuously
and rapidly.
• This methodology also allows testers to get
immediate feedback from customers.
Agile Testing Life Cycle
Agile Testing Methodologies
• Writing Test Cases to express the behavior of the
system.
• Early Defect Prevention, detection and removal.
• Ensuring that the right test types are run at the
right time and as part of the right test level.
The other commonly used Agile Testing Methodologies
are −
• Test-Driven Development (TDD) − Test-Driven
Development (TDD) is based on coding guided by
tests.
• Acceptance Test-Driven Development (ATDD) −
Acceptance Test-Driven Development (ATDD) is based
on communication between the customers,
developers and testers and driven by pre-defined
Acceptance Criteria and Acceptance Test Cases.
• Behavior-Driven Development (BDD) − In Behavior-
Driven Development (BDD) testing is based on the
expected behavior of the software being developed.
TESTING WEB AND MOBILE
APPLICATIONS
• Web app testing aims to ensure that websites
deliver a highly functional, bug-free experience
across browsers and devices.
• On the other hand, mobile app testing aims to
identify any compatibility issues or bugs for the
native or hybrid mobile app across a wide range of
Android and iOS devices.
UNIT - 5
TEST AUTOMATION AND
TOOLS
AUTOMATED SOFTWARE TESTING
• Automated testing is the application of software
tools to automate a human-driven manual process
of reviewing and validating a software product.
• Most modern agile and DevOps software projects
now include automated testing from inception.
How does automated testing work?
1. Select a testing tool. This depends on the type of
testing being done and if the tool in question
supports the platform on which the software is being
developed.
2. Define the scope of automation. This means how
much of the software testing is automated.
3. Plan, design and develop. This step includes
planning the automation strategy and developing
test scripts.
4. Execute the test. Software is tested using
automation scripts. The testing tool should also
collect data and provide detailed test reports.
5. Maintenance. Automated test scripts are modified
and updated as needed with newer versions of a
software build.
Tests that are normally automated include the
following:
• Acceptance tests.
• API tests.
• Integration tests.
• Regression tests.
• Smoke tests.
• System tests.
• Unit tests.
• User interface (UI) tests.
Benefits of automated testing
• Better reporting capabilities.
• More frequent tests.
• Enhanced resource efficiency.
• Faster than manual testing and has a faster feedback
cycle
• Higher accuracy.
• Improved bug detection.
• Improved return on investment over manual testing.
• Increased coverage.
• Reusable test scripts.
• Scalability.
• Automated testing best practices
1. Tests that are performed on different hardware or
software configurations or platforms.
2. Repetitive tests that are used for various builds.
3. Tests with multiple data sets.
4. Tests that are impossible to perform manually.
5. Tests that are too laborious and time-consuming
when performed manually.
6. Tests for frequently used functionalities.
7. Tests that frequently generate human error.
AUTOMATE TESTING OF WEB
APPLICATIONS
• Automated web application testing is a process in
which testing is performed using a set of
automated testing tools.
• Automating web applications saves time and
money as the same set of automated test cases
can be reused multiple times in various agile
sprints.
The types of Web App Testing that can be automated
What are the best tools for it?
Katalon Studio
• What do we like?
• It is convenient and accessible to different types of
testers(inclusive and exclusive of both programmings).
• It is flexible and easy to use with its quick, powerful
features(robust).
• It also supports image-based testing, which is quite an enhanced
and new feature.
• It’s known for its hassle-free, customizable execution workflow.
• It can support web application automation, API Testing, Mobile
Testing.
• It has built-in support for creating test cases, generating test
scripts, reporting results, recording actions. It is famous for its
built-in support for groovy(java) scripting languages.
• It can be integrated with CI/DevOps workflow and other tools.
• What do we dislike?
• It only supports groovy(java). So it is feasible for
java users only.
• It is not an open-source tool. It is closed source
code, and it further results in a small community.
• There are some performance issues, like more
interruption causing the device to slow down.
Cucumber
• What do we like?
• It is a collaborative tool based on behavior-driven
development.
• It is an open-source automated software testing tool.
• It helps in writing acceptance tests for our web
applications.
• It provides the amalgamation of both test
documentation and its specification(specs).
• It supports multi-languages like python,perl,ruby,.net
etc.
• It is provided with cross-platform compatibility.
• It can be integrated with DevOps tools like GIT,
Jenkins, etc., for better enhancement.
• What do we dislike?
• Integration and its dependency on generating
reports through plugins can be challenging
enough.
• Every time a new attribute or feature undergoes
it, we have to ensure all current steps and validate
them to see if they can be used.
Selenium
• What do we like?
• It is the most versatile automated software testing tool.
• This tool is open-source and widely supports all languages
and frameworks.
• It comes with heavy library packages.
• It supports cross-browser automation, API automation, and
database automation.
• Testers can use it for regression, exploratory testing, and
quick reproduction of bugs.
• It can be beneficial in parallel test execution techniques.
• It is highly known for its flexibility with ease of
implementation.
• Its integration with gauge automation framework, Galen
framework, lambda test, etc., is trending nowadays.
• What do we dislike?
• Test Maintenance in selenium can become
cumbersome and even expensive sometimes.
• Selenium requires coding skills, if not exceptional
but above average, though.
• It is only supported for web applications, though.
• Technical support and its reliability can cause
problems, though.
• Flaky tests can be a big problem as they generate
false negatives and false positives or vice versa.
SELENIUM: Introducing Web Driver and
Web Elements
• Selenium WebDriver is a programming interface that
can be used to create and execute test cases.
• It allows you to test across all major programming
languages, browsers, and operating systems.
• What is web driver and web element?
• The WebDriver class focuses on driving the browser in
a broad sense. It loads pages, it switches to different
windows/frames, gets the page title etc. Broad actions
that aren't specific to an element on the page.
• WebElement concentrates on interacting with a
specific element that you've located.
4 major components of Selenium
WebDriver
1. Selenium IDE
• Selenium IDE (Integrated Development
Environment) is the major tool in the Selenium
Suite. It is a complete integrated development
environment (IDE) for Selenium tests.
• It is implemented as a Firefox Add-On and as a
Chrome Extension. It allows for recording, editing
and debugging of functional tests.
2. Selenium RC (Remote control)
• Selenium Remote Control (RC) is a server, written
in Java, that accepts commands for the browser
via HTTP.
• RC makes it possible to write automated tests for
a web application in any programming language,
which allows for better integration of Selenium in
existing unit test frameworks.
• To make writing tests easier, Selenium project
currently provides client drivers for PHP, Python,
Ruby, .NET, Perl and Java.
3. Selenium Web Driver
• Selenium WebDriver is the successor to Selenium
RC. Selenium WebDriver accepts commands (sent
in Selenese, or via a Client API) and sends them to
a browser.
• Most browser drivers actually launch and access a
browser application (such as Firefox, Google
Chrome, Internet Explorer, Safari, or Microsoft
Edge);
4. Selenium GRID
• Selenium Grid is a server that allows tests to use
web browser instances running on remote
machines. With Selenium Grid, one server acts as
the hub.
• Selenium Grid allows running tests in parallel on
multiple machines and to manage different
browser versions and browser configurations
centrally (instead of in each individual test).

More Related Content

Similar to 4&5.pptx SOFTWARE TESTING UNIT-4 AND UNIT-5

Automation Testing with Test Complete
Automation Testing with Test CompleteAutomation Testing with Test Complete
Automation Testing with Test CompleteVartika Saxena
 
Automation Tool Overview
Automation Tool OverviewAutomation Tool Overview
Automation Tool OverviewANKUR-BA
 
Automation Tools Overview
Automation Tools OverviewAutomation Tools Overview
Automation Tools OverviewSachin-QA
 
DevOps Overview in my own words
DevOps Overview in my own wordsDevOps Overview in my own words
DevOps Overview in my own wordsSUBHENDU KARMAKAR
 
#ATAGTR2020 Presentation - Universal Test Automation Framework
#ATAGTR2020 Presentation - Universal Test Automation Framework#ATAGTR2020 Presentation - Universal Test Automation Framework
#ATAGTR2020 Presentation - Universal Test Automation FrameworkAgile Testing Alliance
 
Neev Independent Testing Services
Neev Independent Testing ServicesNeev Independent Testing Services
Neev Independent Testing ServicesNeev Technologies
 
An Essential Guide to Effective Test Automation Leveraging Open Source
An Essential Guide to Effective Test Automation Leveraging Open SourceAn Essential Guide to Effective Test Automation Leveraging Open Source
An Essential Guide to Effective Test Automation Leveraging Open SourceRapidValue
 
Lesson_06_Software_and_Automation_Testing_Frameworks.pdf
Lesson_06_Software_and_Automation_Testing_Frameworks.pdfLesson_06_Software_and_Automation_Testing_Frameworks.pdf
Lesson_06_Software_and_Automation_Testing_Frameworks.pdfMinh Quân Đoàn
 
KrishnaToolComparisionPPT.pdf
KrishnaToolComparisionPPT.pdfKrishnaToolComparisionPPT.pdf
KrishnaToolComparisionPPT.pdfQA or the Highway
 
Top 5 automation testing tools to gear up website development
Top 5 automation testing tools to gear up website developmentTop 5 automation testing tools to gear up website development
Top 5 automation testing tools to gear up website developmentBJIT Ltd
 
[DevDay 2017] Automation Testing - Speaker: Nghia Khuong - Project Manager at...
[DevDay 2017] Automation Testing - Speaker: Nghia Khuong - Project Manager at...[DevDay 2017] Automation Testing - Speaker: Nghia Khuong - Project Manager at...
[DevDay 2017] Automation Testing - Speaker: Nghia Khuong - Project Manager at...DevDay.org
 
Automation Tools Overview
Automation Tools OverviewAutomation Tools Overview
Automation Tools OverviewMurageppa-QA
 
Module-1_Getting-Started_with_selenium_and_Java_basics.pdf
Module-1_Getting-Started_with_selenium_and_Java_basics.pdfModule-1_Getting-Started_with_selenium_and_Java_basics.pdf
Module-1_Getting-Started_with_selenium_and_Java_basics.pdfdevika266518
 
DevOps Engineering.pptx
DevOps Engineering.pptxDevOps Engineering.pptx
DevOps Engineering.pptxAbalBoot
 
Aravind Java Selenium Automation- US
Aravind Java Selenium Automation- US Aravind Java Selenium Automation- US
Aravind Java Selenium Automation- US gbaravindkumar
 
Selenium test automation
Selenium test automationSelenium test automation
Selenium test automationSrikanth Vuriti
 

Similar to 4&5.pptx SOFTWARE TESTING UNIT-4 AND UNIT-5 (20)

Automation Testing with Test Complete
Automation Testing with Test CompleteAutomation Testing with Test Complete
Automation Testing with Test Complete
 
Automation Tool Overview
Automation Tool OverviewAutomation Tool Overview
Automation Tool Overview
 
Automation Tools Overview
Automation Tools OverviewAutomation Tools Overview
Automation Tools Overview
 
DevOps Overview in my own words
DevOps Overview in my own wordsDevOps Overview in my own words
DevOps Overview in my own words
 
#ATAGTR2020 Presentation - Universal Test Automation Framework
#ATAGTR2020 Presentation - Universal Test Automation Framework#ATAGTR2020 Presentation - Universal Test Automation Framework
#ATAGTR2020 Presentation - Universal Test Automation Framework
 
Neev Independent Testing Services
Neev Independent Testing ServicesNeev Independent Testing Services
Neev Independent Testing Services
 
Khushboo_Resume
Khushboo_ResumeKhushboo_Resume
Khushboo_Resume
 
An Essential Guide to Effective Test Automation Leveraging Open Source
An Essential Guide to Effective Test Automation Leveraging Open SourceAn Essential Guide to Effective Test Automation Leveraging Open Source
An Essential Guide to Effective Test Automation Leveraging Open Source
 
Lesson_06_Software_and_Automation_Testing_Frameworks.pdf
Lesson_06_Software_and_Automation_Testing_Frameworks.pdfLesson_06_Software_and_Automation_Testing_Frameworks.pdf
Lesson_06_Software_and_Automation_Testing_Frameworks.pdf
 
Test automation proposal
Test automation proposalTest automation proposal
Test automation proposal
 
KrishnaToolComparisionPPT.pdf
KrishnaToolComparisionPPT.pdfKrishnaToolComparisionPPT.pdf
KrishnaToolComparisionPPT.pdf
 
Top 5 automation testing tools to gear up website development
Top 5 automation testing tools to gear up website developmentTop 5 automation testing tools to gear up website development
Top 5 automation testing tools to gear up website development
 
[DevDay 2017] Automation Testing - Speaker: Nghia Khuong - Project Manager at...
[DevDay 2017] Automation Testing - Speaker: Nghia Khuong - Project Manager at...[DevDay 2017] Automation Testing - Speaker: Nghia Khuong - Project Manager at...
[DevDay 2017] Automation Testing - Speaker: Nghia Khuong - Project Manager at...
 
Automation Tools Overview
Automation Tools OverviewAutomation Tools Overview
Automation Tools Overview
 
Introduction to selenium
Introduction to seleniumIntroduction to selenium
Introduction to selenium
 
Module-1_Getting-Started_with_selenium_and_Java_basics.pdf
Module-1_Getting-Started_with_selenium_and_Java_basics.pdfModule-1_Getting-Started_with_selenium_and_Java_basics.pdf
Module-1_Getting-Started_with_selenium_and_Java_basics.pdf
 
DevOps Engineering.pptx
DevOps Engineering.pptxDevOps Engineering.pptx
DevOps Engineering.pptx
 
Neev QA Offering
Neev QA OfferingNeev QA Offering
Neev QA Offering
 
Aravind Java Selenium Automation- US
Aravind Java Selenium Automation- US Aravind Java Selenium Automation- US
Aravind Java Selenium Automation- US
 
Selenium test automation
Selenium test automationSelenium test automation
Selenium test automation
 

Recently uploaded

Introduction-To-Agricultural-Surveillance-Rover.pptx
Introduction-To-Agricultural-Surveillance-Rover.pptxIntroduction-To-Agricultural-Surveillance-Rover.pptx
Introduction-To-Agricultural-Surveillance-Rover.pptxk795866
 
Application of Residue Theorem to evaluate real integrations.pptx
Application of Residue Theorem to evaluate real integrations.pptxApplication of Residue Theorem to evaluate real integrations.pptx
Application of Residue Theorem to evaluate real integrations.pptx959SahilShah
 
Arduino_CSE ece ppt for working and principal of arduino.ppt
Arduino_CSE ece ppt for working and principal of arduino.pptArduino_CSE ece ppt for working and principal of arduino.ppt
Arduino_CSE ece ppt for working and principal of arduino.pptSAURABHKUMAR892774
 
Electronically Controlled suspensions system .pdf
Electronically Controlled suspensions system .pdfElectronically Controlled suspensions system .pdf
Electronically Controlled suspensions system .pdfme23b1001
 
HARMONY IN THE NATURE AND EXISTENCE - Unit-IV
HARMONY IN THE NATURE AND EXISTENCE - Unit-IVHARMONY IN THE NATURE AND EXISTENCE - Unit-IV
HARMONY IN THE NATURE AND EXISTENCE - Unit-IVRajaP95
 
What are the advantages and disadvantages of membrane structures.pptx
What are the advantages and disadvantages of membrane structures.pptxWhat are the advantages and disadvantages of membrane structures.pptx
What are the advantages and disadvantages of membrane structures.pptxwendy cai
 
Work Experience-Dalton Park.pptxfvvvvvvv
Work Experience-Dalton Park.pptxfvvvvvvvWork Experience-Dalton Park.pptxfvvvvvvv
Work Experience-Dalton Park.pptxfvvvvvvvLewisJB
 
Past, Present and Future of Generative AI
Past, Present and Future of Generative AIPast, Present and Future of Generative AI
Past, Present and Future of Generative AIabhishek36461
 
Call Girls Narol 7397865700 Independent Call Girls
Call Girls Narol 7397865700 Independent Call GirlsCall Girls Narol 7397865700 Independent Call Girls
Call Girls Narol 7397865700 Independent Call Girlsssuser7cb4ff
 
Internship report on mechanical engineering
Internship report on mechanical engineeringInternship report on mechanical engineering
Internship report on mechanical engineeringmalavadedarshan25
 
Effects of rheological properties on mixing
Effects of rheological properties on mixingEffects of rheological properties on mixing
Effects of rheological properties on mixingviprabot1
 
EduAI - E learning Platform integrated with AI
EduAI - E learning Platform integrated with AIEduAI - E learning Platform integrated with AI
EduAI - E learning Platform integrated with AIkoyaldeepu123
 
VICTOR MAESTRE RAMIREZ - Planetary Defender on NASA's Double Asteroid Redirec...
VICTOR MAESTRE RAMIREZ - Planetary Defender on NASA's Double Asteroid Redirec...VICTOR MAESTRE RAMIREZ - Planetary Defender on NASA's Double Asteroid Redirec...
VICTOR MAESTRE RAMIREZ - Planetary Defender on NASA's Double Asteroid Redirec...VICTOR MAESTRE RAMIREZ
 
CCS355 Neural Networks & Deep Learning Unit 1 PDF notes with Question bank .pdf
CCS355 Neural Networks & Deep Learning Unit 1 PDF notes with Question bank .pdfCCS355 Neural Networks & Deep Learning Unit 1 PDF notes with Question bank .pdf
CCS355 Neural Networks & Deep Learning Unit 1 PDF notes with Question bank .pdfAsst.prof M.Gokilavani
 
DATA ANALYTICS PPT definition usage example
DATA ANALYTICS PPT definition usage exampleDATA ANALYTICS PPT definition usage example
DATA ANALYTICS PPT definition usage examplePragyanshuParadkar1
 
Gurgaon ✡️9711147426✨Call In girls Gurgaon Sector 51 escort service
Gurgaon ✡️9711147426✨Call In girls Gurgaon Sector 51 escort serviceGurgaon ✡️9711147426✨Call In girls Gurgaon Sector 51 escort service
Gurgaon ✡️9711147426✨Call In girls Gurgaon Sector 51 escort servicejennyeacort
 
GDSC ASEB Gen AI study jams presentation
GDSC ASEB Gen AI study jams presentationGDSC ASEB Gen AI study jams presentation
GDSC ASEB Gen AI study jams presentationGDSCAESB
 
INFLUENCE OF NANOSILICA ON THE PROPERTIES OF CONCRETE
INFLUENCE OF NANOSILICA ON THE PROPERTIES OF CONCRETEINFLUENCE OF NANOSILICA ON THE PROPERTIES OF CONCRETE
INFLUENCE OF NANOSILICA ON THE PROPERTIES OF CONCRETEroselinkalist12
 

Recently uploaded (20)

Introduction-To-Agricultural-Surveillance-Rover.pptx
Introduction-To-Agricultural-Surveillance-Rover.pptxIntroduction-To-Agricultural-Surveillance-Rover.pptx
Introduction-To-Agricultural-Surveillance-Rover.pptx
 
Application of Residue Theorem to evaluate real integrations.pptx
Application of Residue Theorem to evaluate real integrations.pptxApplication of Residue Theorem to evaluate real integrations.pptx
Application of Residue Theorem to evaluate real integrations.pptx
 
Arduino_CSE ece ppt for working and principal of arduino.ppt
Arduino_CSE ece ppt for working and principal of arduino.pptArduino_CSE ece ppt for working and principal of arduino.ppt
Arduino_CSE ece ppt for working and principal of arduino.ppt
 
Electronically Controlled suspensions system .pdf
Electronically Controlled suspensions system .pdfElectronically Controlled suspensions system .pdf
Electronically Controlled suspensions system .pdf
 
HARMONY IN THE NATURE AND EXISTENCE - Unit-IV
HARMONY IN THE NATURE AND EXISTENCE - Unit-IVHARMONY IN THE NATURE AND EXISTENCE - Unit-IV
HARMONY IN THE NATURE AND EXISTENCE - Unit-IV
 
What are the advantages and disadvantages of membrane structures.pptx
What are the advantages and disadvantages of membrane structures.pptxWhat are the advantages and disadvantages of membrane structures.pptx
What are the advantages and disadvantages of membrane structures.pptx
 
Call Us -/9953056974- Call Girls In Vikaspuri-/- Delhi NCR
Call Us -/9953056974- Call Girls In Vikaspuri-/- Delhi NCRCall Us -/9953056974- Call Girls In Vikaspuri-/- Delhi NCR
Call Us -/9953056974- Call Girls In Vikaspuri-/- Delhi NCR
 
Work Experience-Dalton Park.pptxfvvvvvvv
Work Experience-Dalton Park.pptxfvvvvvvvWork Experience-Dalton Park.pptxfvvvvvvv
Work Experience-Dalton Park.pptxfvvvvvvv
 
🔝9953056974🔝!!-YOUNG call girls in Rajendra Nagar Escort rvice Shot 2000 nigh...
🔝9953056974🔝!!-YOUNG call girls in Rajendra Nagar Escort rvice Shot 2000 nigh...🔝9953056974🔝!!-YOUNG call girls in Rajendra Nagar Escort rvice Shot 2000 nigh...
🔝9953056974🔝!!-YOUNG call girls in Rajendra Nagar Escort rvice Shot 2000 nigh...
 
Past, Present and Future of Generative AI
Past, Present and Future of Generative AIPast, Present and Future of Generative AI
Past, Present and Future of Generative AI
 
Call Girls Narol 7397865700 Independent Call Girls
Call Girls Narol 7397865700 Independent Call GirlsCall Girls Narol 7397865700 Independent Call Girls
Call Girls Narol 7397865700 Independent Call Girls
 
Internship report on mechanical engineering
Internship report on mechanical engineeringInternship report on mechanical engineering
Internship report on mechanical engineering
 
Effects of rheological properties on mixing
Effects of rheological properties on mixingEffects of rheological properties on mixing
Effects of rheological properties on mixing
 
EduAI - E learning Platform integrated with AI
EduAI - E learning Platform integrated with AIEduAI - E learning Platform integrated with AI
EduAI - E learning Platform integrated with AI
 
VICTOR MAESTRE RAMIREZ - Planetary Defender on NASA's Double Asteroid Redirec...
VICTOR MAESTRE RAMIREZ - Planetary Defender on NASA's Double Asteroid Redirec...VICTOR MAESTRE RAMIREZ - Planetary Defender on NASA's Double Asteroid Redirec...
VICTOR MAESTRE RAMIREZ - Planetary Defender on NASA's Double Asteroid Redirec...
 
CCS355 Neural Networks & Deep Learning Unit 1 PDF notes with Question bank .pdf
CCS355 Neural Networks & Deep Learning Unit 1 PDF notes with Question bank .pdfCCS355 Neural Networks & Deep Learning Unit 1 PDF notes with Question bank .pdf
CCS355 Neural Networks & Deep Learning Unit 1 PDF notes with Question bank .pdf
 
DATA ANALYTICS PPT definition usage example
DATA ANALYTICS PPT definition usage exampleDATA ANALYTICS PPT definition usage example
DATA ANALYTICS PPT definition usage example
 
Gurgaon ✡️9711147426✨Call In girls Gurgaon Sector 51 escort service
Gurgaon ✡️9711147426✨Call In girls Gurgaon Sector 51 escort serviceGurgaon ✡️9711147426✨Call In girls Gurgaon Sector 51 escort service
Gurgaon ✡️9711147426✨Call In girls Gurgaon Sector 51 escort service
 
GDSC ASEB Gen AI study jams presentation
GDSC ASEB Gen AI study jams presentationGDSC ASEB Gen AI study jams presentation
GDSC ASEB Gen AI study jams presentation
 
INFLUENCE OF NANOSILICA ON THE PROPERTIES OF CONCRETE
INFLUENCE OF NANOSILICA ON THE PROPERTIES OF CONCRETEINFLUENCE OF NANOSILICA ON THE PROPERTIES OF CONCRETE
INFLUENCE OF NANOSILICA ON THE PROPERTIES OF CONCRETE
 

4&5.pptx SOFTWARE TESTING UNIT-4 AND UNIT-5

  • 2. TESTING IN THE AGILE ENVIRONMENT • Agile software testing is a methodology that helps developers test their code continuously and rapidly. • This methodology also allows testers to get immediate feedback from customers.
  • 4. Agile Testing Methodologies • Writing Test Cases to express the behavior of the system. • Early Defect Prevention, detection and removal. • Ensuring that the right test types are run at the right time and as part of the right test level.
  • 5. The other commonly used Agile Testing Methodologies are − • Test-Driven Development (TDD) − Test-Driven Development (TDD) is based on coding guided by tests. • Acceptance Test-Driven Development (ATDD) − Acceptance Test-Driven Development (ATDD) is based on communication between the customers, developers and testers and driven by pre-defined Acceptance Criteria and Acceptance Test Cases. • Behavior-Driven Development (BDD) − In Behavior- Driven Development (BDD) testing is based on the expected behavior of the software being developed.
  • 6. TESTING WEB AND MOBILE APPLICATIONS • Web app testing aims to ensure that websites deliver a highly functional, bug-free experience across browsers and devices. • On the other hand, mobile app testing aims to identify any compatibility issues or bugs for the native or hybrid mobile app across a wide range of Android and iOS devices.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11. UNIT - 5 TEST AUTOMATION AND TOOLS
  • 12. AUTOMATED SOFTWARE TESTING • Automated testing is the application of software tools to automate a human-driven manual process of reviewing and validating a software product. • Most modern agile and DevOps software projects now include automated testing from inception.
  • 13. How does automated testing work? 1. Select a testing tool. This depends on the type of testing being done and if the tool in question supports the platform on which the software is being developed. 2. Define the scope of automation. This means how much of the software testing is automated. 3. Plan, design and develop. This step includes planning the automation strategy and developing test scripts. 4. Execute the test. Software is tested using automation scripts. The testing tool should also collect data and provide detailed test reports. 5. Maintenance. Automated test scripts are modified and updated as needed with newer versions of a software build.
  • 14. Tests that are normally automated include the following: • Acceptance tests. • API tests. • Integration tests. • Regression tests. • Smoke tests. • System tests. • Unit tests. • User interface (UI) tests.
  • 15. Benefits of automated testing • Better reporting capabilities. • More frequent tests. • Enhanced resource efficiency. • Faster than manual testing and has a faster feedback cycle • Higher accuracy. • Improved bug detection. • Improved return on investment over manual testing. • Increased coverage. • Reusable test scripts. • Scalability.
  • 16. • Automated testing best practices 1. Tests that are performed on different hardware or software configurations or platforms. 2. Repetitive tests that are used for various builds. 3. Tests with multiple data sets. 4. Tests that are impossible to perform manually. 5. Tests that are too laborious and time-consuming when performed manually. 6. Tests for frequently used functionalities. 7. Tests that frequently generate human error.
  • 17. AUTOMATE TESTING OF WEB APPLICATIONS • Automated web application testing is a process in which testing is performed using a set of automated testing tools. • Automating web applications saves time and money as the same set of automated test cases can be reused multiple times in various agile sprints.
  • 18. The types of Web App Testing that can be automated
  • 19. What are the best tools for it? Katalon Studio • What do we like? • It is convenient and accessible to different types of testers(inclusive and exclusive of both programmings). • It is flexible and easy to use with its quick, powerful features(robust). • It also supports image-based testing, which is quite an enhanced and new feature. • It’s known for its hassle-free, customizable execution workflow. • It can support web application automation, API Testing, Mobile Testing. • It has built-in support for creating test cases, generating test scripts, reporting results, recording actions. It is famous for its built-in support for groovy(java) scripting languages. • It can be integrated with CI/DevOps workflow and other tools.
  • 20. • What do we dislike? • It only supports groovy(java). So it is feasible for java users only. • It is not an open-source tool. It is closed source code, and it further results in a small community. • There are some performance issues, like more interruption causing the device to slow down.
  • 21. Cucumber • What do we like? • It is a collaborative tool based on behavior-driven development. • It is an open-source automated software testing tool. • It helps in writing acceptance tests for our web applications. • It provides the amalgamation of both test documentation and its specification(specs). • It supports multi-languages like python,perl,ruby,.net etc. • It is provided with cross-platform compatibility. • It can be integrated with DevOps tools like GIT, Jenkins, etc., for better enhancement.
  • 22. • What do we dislike? • Integration and its dependency on generating reports through plugins can be challenging enough. • Every time a new attribute or feature undergoes it, we have to ensure all current steps and validate them to see if they can be used.
  • 23. Selenium • What do we like? • It is the most versatile automated software testing tool. • This tool is open-source and widely supports all languages and frameworks. • It comes with heavy library packages. • It supports cross-browser automation, API automation, and database automation. • Testers can use it for regression, exploratory testing, and quick reproduction of bugs. • It can be beneficial in parallel test execution techniques. • It is highly known for its flexibility with ease of implementation. • Its integration with gauge automation framework, Galen framework, lambda test, etc., is trending nowadays.
  • 24. • What do we dislike? • Test Maintenance in selenium can become cumbersome and even expensive sometimes. • Selenium requires coding skills, if not exceptional but above average, though. • It is only supported for web applications, though. • Technical support and its reliability can cause problems, though. • Flaky tests can be a big problem as they generate false negatives and false positives or vice versa.
  • 25. SELENIUM: Introducing Web Driver and Web Elements • Selenium WebDriver is a programming interface that can be used to create and execute test cases. • It allows you to test across all major programming languages, browsers, and operating systems. • What is web driver and web element? • The WebDriver class focuses on driving the browser in a broad sense. It loads pages, it switches to different windows/frames, gets the page title etc. Broad actions that aren't specific to an element on the page. • WebElement concentrates on interacting with a specific element that you've located.
  • 26. 4 major components of Selenium WebDriver
  • 27. 1. Selenium IDE • Selenium IDE (Integrated Development Environment) is the major tool in the Selenium Suite. It is a complete integrated development environment (IDE) for Selenium tests. • It is implemented as a Firefox Add-On and as a Chrome Extension. It allows for recording, editing and debugging of functional tests.
  • 28. 2. Selenium RC (Remote control) • Selenium Remote Control (RC) is a server, written in Java, that accepts commands for the browser via HTTP. • RC makes it possible to write automated tests for a web application in any programming language, which allows for better integration of Selenium in existing unit test frameworks. • To make writing tests easier, Selenium project currently provides client drivers for PHP, Python, Ruby, .NET, Perl and Java.
  • 29. 3. Selenium Web Driver • Selenium WebDriver is the successor to Selenium RC. Selenium WebDriver accepts commands (sent in Selenese, or via a Client API) and sends them to a browser. • Most browser drivers actually launch and access a browser application (such as Firefox, Google Chrome, Internet Explorer, Safari, or Microsoft Edge);
  • 30. 4. Selenium GRID • Selenium Grid is a server that allows tests to use web browser instances running on remote machines. With Selenium Grid, one server acts as the hub. • Selenium Grid allows running tests in parallel on multiple machines and to manage different browser versions and browser configurations centrally (instead of in each individual test).