SlideShare a Scribd company logo
Verification of Software
Systems
Presenter:
Kiril Delovski
Software Testing Community Macedonia
10th February 2016
SOFTWARE DEVELOPMENT LIFECYCLES
(PHASES OF SOFTWARE PROJECT)
Development methodologies
Verification of Software Systems | Kiril Delovski | delovski.office@gmail.com
Requirements
Deployment and
Maintenance
Implementation
(developing or coding)
Design
Testing (verification)
• Waterfall
CMC Limited
• Software Testing is the process used to help to identify the correctness, completeness, security,
and quality of developed computer software, matching the specification and execution in its
intended environment.
DEFINITION OF SOFTWARE TESTING
Verification of Software Systems | Kiril Delovski | delovski.office@gmail.com
CMC Limited
• Software Testing is the process used to help to identify the correctness, completeness, security,
and quality of developed computer software, matching the specification and execution in its
intended environment.
DEFINITION OF SOFTWARE TESTING
Verification of Software Systems | Kiril Delovski | delovski.office@gmail.com
TEST CYCLE
Software testing is maintain through a chain of cycle
• Requirements Analysis
• Design phase
• Test Planning
• Test Development
• Test Execution
• Test Reporting
• Retesting the Defects
Verification of Software Systems | Kiril Delovski | delovski.office@gmail.com
INTRODUCTION TO TESTING
• Debugging and testing are not the same thing!
• Testing is a systematic attempt to break a program.
• Correct, bug-free programs by construction are the goal but until that is possible
(if ever!) we have testing.
• Testing is a process of executing a program with the intent of finding an error.
Verification of Software Systems | Kiril Delovski | delovski.office@gmail.com
CMC Limited
TESTING OBJECTIVES
• Uncover as many as errors in the software as possible in a given timeline, and make sure get fixed
• Demonstrate a given software product matching its requirement specifications.
• Validate the quality of a software testing using the minimum cost and efforts.
• Generate high quality test cases, perform effective tests, and issue correct and helpful problem reports.
Verification of Software Systems | Kiril Delovski | delovski.office@gmail.com
LIMITATIONS OF TESTING
• Programs take input in a variety of ways: mouse, keyboard,
• Must test valid and invalid inputs.
• There are an infinite amount of sequences of inputs to be tested.
• To test all possible inputs is impractical or Impossible
• To test all possible paths is impractical or impossible
• Too Many Possible User Environments
Verification of Software Systems | Kiril Delovski | delovski.office@gmail.com
WHEN TO START / END TESTING
When to start
• In the early stage of testing life cycle it reduces the errors.
• The goal of Software Tester is to find bugs, find them as early as possible, and make sure being fixed.
When to end
• It is difficult to determine.
• There are common factors in deciding when to stop testing:
 Deadlines (release deadlines, testing deadlines.)
 Test cases completed with certain percentages passed
 Test budget depleted
 Coverage of code/functionality/requirements reaches a specified point
 The rate at which Bugs can be found is too small
 Beta or Alpha Testing period ends
Verification of Software Systems | Kiril Delovski | delovski.office@gmail.com
BASIC SOFTWARE TESTING TYPES
• Security Testing
• Stress Testing
• Load testing
• Performance Testing
Verification of Software Systems | Kiril Delovski | delovski.office@gmail.com
Severity
Factor that shows how bad the defect is and the impact it has on the product
Priority
Based upon input from users regarding which defects are most important to them, and
be fixed first.
SEVERITY VS PRIORITY
Verification of Software Systems | Kiril Delovski | delovski.office@gmail.com
SEVERITY LEVELS
• Critical
• Major / High
• Average / Medium
• Minor / low
• Cosmetic defects
Verification of Software Systems | Kiril Delovski | delovski.office@gmail.com
SOFTWARE TESTING ACTIVITIES
- Test Planning
- a need for test schedule for a test process and its activities
- test requirements and items
- test strategy and supporting tools
- Test Design and Specification
- Conduct software design based on well-defined test generation methods.
- Specify test cases to achieve a targeted test coverage.
- Test Set up:
- Testing Tools and Environment Set-up
- Test Suite Set-up
- Test Operation and Execution
- Run test cases manually or automatically
Verification of Software Systems | Kiril Delovski | delovski.office@gmail.com
SOFTWARE TESTING ACTIVITIES
- Test Result Analysis and Reporting
Report software testing results and conduct test result analysis
- Problem Reporting
Report program errors using a systematic solution.
- Test Management and Measurement
Manage software testing activities, control testing schedule, measure testing complexity and cost
- Test Automation
- Define and develop software test tools
- Adopt and use software test tools
- Write software test scripts and facility
- Test Configuration Management
- Manage and maintain different versions of software test suites, test environment and tools, and
documents for various product versions.
Verification of Software Systems | Kiril Delovski | delovski.office@gmail.com
TEST DOCUMENTS
• Test plan
• Quality objectives, resource needs, schedules, assignments, methods, etc.
• Test cases
• Inputs and expected outputs.
• Bug reports
• E.g., the Bugzilla web-based bug tracker.
• Test tools and automation
• Metrics, statistics, and summaries
• Number of unresolved bugs, (time to repair a bug, etc.)
Verification of Software Systems | Kiril Delovski | delovski.office@gmail.com
GOOD TEST PLANS
• Developed and Reviewed early.
• Clear, Complete and Specific
• Staff knows what to expect and when to expect it.
• Realistic quality levels for goals
• Includes time for planning
• Can be monitored and updated
• Includes user responsibilities
• Based on past experience
Verification of Software Systems | Kiril Delovski | delovski.office@gmail.com
TEST CASES, SUITES, SCRIPTS AND SCENARIOS
Test Case
Is a set of conditions or variables under which a tester will determine if a requirement or use case upon
an application is partially or fully satisfied.
Test Script
A test script is a short program written in a programming language used to test part of the
functionality of a software system.
Test Suite
The most common term for a collection of test cases is a test suite.
Test Scenario
Scenario testing is a software testing activity. It uses scenario tests, or simply scenarios, which are
based on a hypothetical story to help a person think through a complex problem or system.
Verification of Software Systems | Kiril Delovski | delovski.office@gmail.com
GOOD TEST CASES
• Have high probability of finding a new
defect.
• Repeatable and predictable.
• Traceable to requirements or design
documents
• Execution and tracking can be automated
• Do not mislead
• Feasible
Verification of Software Systems | Kiril Delovski | delovski.office@gmail.com
Purpose to Find Defects
WHY AUTOMATION?
When to Automate?
-Stable Application
-Manual Efforts are high
-Regression comes frequently
-We have plenty of time for
testing
When not to Automate?
- Application changes frequently
- Testing time is not defined or agreed
- Budget does not allow us
Automation Tools
- QTP
- Cucumber
- Soap UI
- Selenium
- Jmeter
- LoadRunner
- SilkTest etc.
Benefits
- One Time effort
- Saves Time
- Saves Money
- Better Outputs
Verification of Software Systems | Kiril Delovski | delovski.office@gmail.com
SELENIUM
Verification of Software Systems | Kiril Delovski | delovski.office@gmail.com
• Selenium 1.0 - Selenium RC or Remote Control
• support for several languages (Java, Javascript, Ruby, PHP, Python, Perl and C#)
• Selenium IDE (Integrated Development Environment)
• Selenium-Grid 1.0
SELENIUM’S TOOL SUITE
* Via appium, Selendroid,
ios-driver and WP driver.
WEB, NATIVE, AND HYBRID APPLICATIONS
Verification of Software Systems | Kiril Delovski | delovski.office@gmail.com
1. Selenium IDE (Integrated Development Environment)
• Is a prototyping tool for building test scripts
• A Firefox Add-on provides easy-to-use interface for recording user actions,
editing and running automated tests.
• Exports user actions as a reusable script in one of many programming
languages that can be later executed
• Can be downloaded from seleniumhq.org
SELENIUM IDE
Advantages:
• No programming skills required
• Easy record and playback
• Step by step debugger
• Play tests on any browser
• Export tests as WebDriver tests
• Extensible
Disadvantages:
• Based on SeleniumCore
• No code reuse
• No iterations and conditional statements
• No exception handling
• No error recovery
Verification of Software Systems | Kiril Delovski | delovski.office@gmail.com
SELENIUM IDE
Disadvantages:
• Based on SeleniumCore
• No code reuse
• No iterations and conditional statements
• No exception handling
• No error recovery
Verification of Software Systems | Kiril Delovski | delovski.office@gmail.com
SELENIUM ELEMENT LOCATORS
• 1. ID
• 2. Name
• 3. LinkText
• 4. TagName
• 5. Partial Link Text
• 6. CSS
• 7. xPath (Absolute and Relative)
Verification of Software Systems | Kiril Delovski | delovski.office@gmail.com
• storeText ( locator, variableName )
• From getText ( locator ) command
• storeLocation (variableName)
• From getLocation() command
• assertText(locator, pattern)
from getText(locator)command
• assertLocation(pattern)
from getLocation() command
• verifyText
• waitForText
• verifyLocation
• waitForLocation
• 1. open (url)
• 2. click (locator)
• 3. type (locator, value)
• 4. select (locator, optionLocator)
SELENIUM COMMANDS
Verification of Software Systems | Kiril Delovski | delovski.office@gmail.com
Practical Example with Presentation
Requirements:
Java JDK
IntelliJ IDE
Junit 4 – an unit testing framework
Selenium - tool for automatic testing
Apache Maven – for building the tests and creating the reports
Verification of Software Systems | Kiril Delovski | delovski.office@gmail.com
ВИ БЛАГОДАРАМ ЗА ВНИМАНИЕТО
ПРАШАЊА? / QUESTIONS?
КРАЈ / THE END
THANK YOU FOR YOUR ATTENTION
Verification of Software Systems | Kiril Delovski | delovski.office@gmail.com
https://www.facebook.com/groups/SoftwareTestingCommunityMacedonia/
More About Me
https://www.facebook.com/kdelovski
http://delovski.innosmartsoft.mk/Online CV -
https://mk.linkedin.com/in/kdelovski6
delovski.office@gmail.comEmail:
Verification of Software Systems | Kiril Delovski | delovski.office@gmail.com

More Related Content

What's hot

Software Quality and Testing_Se lect18 btech
Software Quality and Testing_Se lect18 btechSoftware Quality and Testing_Se lect18 btech
Software Quality and Testing_Se lect18 btech
IIITA
 
Tools for Software Testing
Tools for Software TestingTools for Software Testing
Tools for Software Testing
Mohammed Moishin
 
Automation Tool Overview
Automation Tool OverviewAutomation Tool Overview
Automation Tool Overview
ANKUR-BA
 
Software Testing Tools | Edureka
Software Testing Tools | EdurekaSoftware Testing Tools | Edureka
Software Testing Tools | Edureka
Edureka!
 
Agile testing for embedded software development
Agile testing for embedded software developmentAgile testing for embedded software development
Agile testing for embedded software development
Tom Stiehm
 
Continuous testing
Continuous testing Continuous testing
Continuous testing
Dr Ganesh Iyer
 
Test Automation and Continuous Integration
Test Automation and Continuous Integration Test Automation and Continuous Integration
Test Automation and Continuous Integration TestCampRO
 
Static Analysis Techniques For Testing Application Security - Houston Tech Fest
Static Analysis Techniques For Testing Application Security - Houston Tech FestStatic Analysis Techniques For Testing Application Security - Houston Tech Fest
Static Analysis Techniques For Testing Application Security - Houston Tech Fest
Denim Group
 
Decoupled System Interface Testing at FedEx
Decoupled System Interface Testing at FedExDecoupled System Interface Testing at FedEx
Decoupled System Interface Testing at FedEx
TechWell
 
Kusuma_Resume_5+
Kusuma_Resume_5+Kusuma_Resume_5+
Kusuma_Resume_5+kusuma T
 
Software testing tools (free and open source)
Software testing tools (free and open source)Software testing tools (free and open source)
Software testing tools (free and open source)
Wael Mansour
 
Programming skills for test automation
Programming skills for test automationProgramming skills for test automation
Programming skills for test automationRomania Testing
 
Top 20 best automation testing tools
Top 20 best automation testing toolsTop 20 best automation testing tools
Top 20 best automation testing tools
QACraft
 
How Agile Are you
How Agile Are youHow Agile Are you
How Agile Are you
Heaton Cai
 
ІГОР ПАВЛЕНКО «QA role in DevOps world» Online QADay 2021
ІГОР ПАВЛЕНКО «QA role in DevOps world» Online QADay 2021ІГОР ПАВЛЕНКО «QA role in DevOps world» Online QADay 2021
ІГОР ПАВЛЕНКО «QA role in DevOps world» Online QADay 2021
QADay
 
Test Automation Framework Designs
Test Automation Framework DesignsTest Automation Framework Designs
Test Automation Framework Designs
Sauce Labs
 
Demo1ghjkl
Demo1ghjklDemo1ghjkl
Demo1ghjkl
crazyvirtue
 
Continuous testing for devops
Continuous testing for devopsContinuous testing for devops
Continuous testing for devops
Subrahmaniam S.R.V
 
Performance Testing
Performance TestingPerformance Testing
Performance Testing
Selin Gungor
 

What's hot (20)

Software Quality and Testing_Se lect18 btech
Software Quality and Testing_Se lect18 btechSoftware Quality and Testing_Se lect18 btech
Software Quality and Testing_Se lect18 btech
 
Tools for Software Testing
Tools for Software TestingTools for Software Testing
Tools for Software Testing
 
Automation Tool Overview
Automation Tool OverviewAutomation Tool Overview
Automation Tool Overview
 
Software Testing Tools | Edureka
Software Testing Tools | EdurekaSoftware Testing Tools | Edureka
Software Testing Tools | Edureka
 
Agile testing for embedded software development
Agile testing for embedded software developmentAgile testing for embedded software development
Agile testing for embedded software development
 
Continuous testing
Continuous testing Continuous testing
Continuous testing
 
Test Automation and Continuous Integration
Test Automation and Continuous Integration Test Automation and Continuous Integration
Test Automation and Continuous Integration
 
Static Analysis Techniques For Testing Application Security - Houston Tech Fest
Static Analysis Techniques For Testing Application Security - Houston Tech FestStatic Analysis Techniques For Testing Application Security - Houston Tech Fest
Static Analysis Techniques For Testing Application Security - Houston Tech Fest
 
Decoupled System Interface Testing at FedEx
Decoupled System Interface Testing at FedExDecoupled System Interface Testing at FedEx
Decoupled System Interface Testing at FedEx
 
Kusuma_Resume_5+
Kusuma_Resume_5+Kusuma_Resume_5+
Kusuma_Resume_5+
 
Software testing tools (free and open source)
Software testing tools (free and open source)Software testing tools (free and open source)
Software testing tools (free and open source)
 
Programming skills for test automation
Programming skills for test automationProgramming skills for test automation
Programming skills for test automation
 
Top 20 best automation testing tools
Top 20 best automation testing toolsTop 20 best automation testing tools
Top 20 best automation testing tools
 
Journey to the center of DevOps - v6
Journey to the center of DevOps - v6Journey to the center of DevOps - v6
Journey to the center of DevOps - v6
 
How Agile Are you
How Agile Are youHow Agile Are you
How Agile Are you
 
ІГОР ПАВЛЕНКО «QA role in DevOps world» Online QADay 2021
ІГОР ПАВЛЕНКО «QA role in DevOps world» Online QADay 2021ІГОР ПАВЛЕНКО «QA role in DevOps world» Online QADay 2021
ІГОР ПАВЛЕНКО «QA role in DevOps world» Online QADay 2021
 
Test Automation Framework Designs
Test Automation Framework DesignsTest Automation Framework Designs
Test Automation Framework Designs
 
Demo1ghjkl
Demo1ghjklDemo1ghjkl
Demo1ghjkl
 
Continuous testing for devops
Continuous testing for devopsContinuous testing for devops
Continuous testing for devops
 
Performance Testing
Performance TestingPerformance Testing
Performance Testing
 

Similar to SW Verification presentation

4&5.pptx SOFTWARE TESTING UNIT-4 AND UNIT-5
4&5.pptx SOFTWARE TESTING UNIT-4 AND UNIT-54&5.pptx SOFTWARE TESTING UNIT-4 AND UNIT-5
4&5.pptx SOFTWARE TESTING UNIT-4 AND UNIT-5
hemasubbu08
 
Software testing-and-analysis
Software testing-and-analysisSoftware testing-and-analysis
Software testing-and-analysis
WBUTTUTORIALS
 
Fundamentals of Software Quality Assurance & Testing
Fundamentals of Software Quality Assurance & TestingFundamentals of Software Quality Assurance & Testing
Fundamentals of Software Quality Assurance & Testing
rongbaz
 
Automated Testing Using Selenium
Automated Testing Using SeleniumAutomated Testing Using Selenium
Automated Testing Using Selenium
TechWell
 
Software testing
Software testingSoftware testing
Software testing
KarnatiChandramoules
 
SENG202-v-and-v-modeling_121810.pptx
SENG202-v-and-v-modeling_121810.pptxSENG202-v-and-v-modeling_121810.pptx
SENG202-v-and-v-modeling_121810.pptx
MinsasWorld
 
verification and validation
verification and validationverification and validation
verification and validationDinesh Pasi
 
Effective Software Testing
Effective Software TestingEffective Software Testing
Effective Software Testing
Valeria - Growdigitally
 
software testing
 software testing software testing
software testing
Sara shall
 
5 Steps to Jump Start Your Test Automation
5 Steps to Jump Start Your Test Automation5 Steps to Jump Start Your Test Automation
5 Steps to Jump Start Your Test Automation
Sauce Labs
 
Istqb foundation level day 1
Istqb foundation level   day 1Istqb foundation level   day 1
Istqb foundation level day 1
Shuchi Singla AKT,SPC4,PMI-ACP,ITIL(F),CP-AAT
 
Software testing ppt
Software testing pptSoftware testing ppt
Software testing ppt
Heritage Institute Of Tech,India
 
QA Best Practices at Atlogys - Tech Talk (Atlogys Academy)
QA Best Practices at Atlogys - Tech Talk (Atlogys Academy)QA Best Practices at Atlogys - Tech Talk (Atlogys Academy)
QA Best Practices at Atlogys - Tech Talk (Atlogys Academy)
Atlogys Technical Consulting
 
testing strategies and tactics
 testing strategies and tactics testing strategies and tactics
testing strategies and tactics
Preeti Mishra
 
Automation Testing with Test Complete
Automation Testing with Test CompleteAutomation Testing with Test Complete
Automation Testing with Test CompleteVartika Saxena
 
Software Testing PPT | Software All Testing
Software Testing PPT | Software All TestingSoftware Testing PPT | Software All Testing
Software Testing PPT | Software All Testing
sankalpkumarsahoo174
 
Automation Tools Overview
Automation Tools OverviewAutomation Tools Overview
Automation Tools Overview
Sachin-QA
 
UNIT 1.pptx
UNIT 1.pptxUNIT 1.pptx
UNIT 1.pptx
GNANAJESLINJ
 
An introduction to Software Testing and Test Management
An introduction to Software Testing and Test ManagementAn introduction to Software Testing and Test Management
An introduction to Software Testing and Test Management
Anuraj S.L
 

Similar to SW Verification presentation (20)

4&5.pptx SOFTWARE TESTING UNIT-4 AND UNIT-5
4&5.pptx SOFTWARE TESTING UNIT-4 AND UNIT-54&5.pptx SOFTWARE TESTING UNIT-4 AND UNIT-5
4&5.pptx SOFTWARE TESTING UNIT-4 AND UNIT-5
 
Software testing-and-analysis
Software testing-and-analysisSoftware testing-and-analysis
Software testing-and-analysis
 
Fundamentals of Software Quality Assurance & Testing
Fundamentals of Software Quality Assurance & TestingFundamentals of Software Quality Assurance & Testing
Fundamentals of Software Quality Assurance & Testing
 
Automated Testing Using Selenium
Automated Testing Using SeleniumAutomated Testing Using Selenium
Automated Testing Using Selenium
 
Software testing
Software testingSoftware testing
Software testing
 
SENG202-v-and-v-modeling_121810.pptx
SENG202-v-and-v-modeling_121810.pptxSENG202-v-and-v-modeling_121810.pptx
SENG202-v-and-v-modeling_121810.pptx
 
verification and validation
verification and validationverification and validation
verification and validation
 
Effective Software Testing
Effective Software TestingEffective Software Testing
Effective Software Testing
 
software testing
 software testing software testing
software testing
 
5 Steps to Jump Start Your Test Automation
5 Steps to Jump Start Your Test Automation5 Steps to Jump Start Your Test Automation
5 Steps to Jump Start Your Test Automation
 
Istqb foundation level day 1
Istqb foundation level   day 1Istqb foundation level   day 1
Istqb foundation level day 1
 
Software testing ppt
Software testing pptSoftware testing ppt
Software testing ppt
 
QA Best Practices at Atlogys - Tech Talk (Atlogys Academy)
QA Best Practices at Atlogys - Tech Talk (Atlogys Academy)QA Best Practices at Atlogys - Tech Talk (Atlogys Academy)
QA Best Practices at Atlogys - Tech Talk (Atlogys Academy)
 
testing strategies and tactics
 testing strategies and tactics testing strategies and tactics
testing strategies and tactics
 
Automation Testing with Test Complete
Automation Testing with Test CompleteAutomation Testing with Test Complete
Automation Testing with Test Complete
 
Software Testing PPT | Software All Testing
Software Testing PPT | Software All TestingSoftware Testing PPT | Software All Testing
Software Testing PPT | Software All Testing
 
Resume_Trupti
Resume_TruptiResume_Trupti
Resume_Trupti
 
Automation Tools Overview
Automation Tools OverviewAutomation Tools Overview
Automation Tools Overview
 
UNIT 1.pptx
UNIT 1.pptxUNIT 1.pptx
UNIT 1.pptx
 
An introduction to Software Testing and Test Management
An introduction to Software Testing and Test ManagementAn introduction to Software Testing and Test Management
An introduction to Software Testing and Test Management
 

SW Verification presentation

  • 1. Verification of Software Systems Presenter: Kiril Delovski Software Testing Community Macedonia 10th February 2016
  • 2. SOFTWARE DEVELOPMENT LIFECYCLES (PHASES OF SOFTWARE PROJECT) Development methodologies Verification of Software Systems | Kiril Delovski | delovski.office@gmail.com Requirements Deployment and Maintenance Implementation (developing or coding) Design Testing (verification) • Waterfall
  • 3. CMC Limited • Software Testing is the process used to help to identify the correctness, completeness, security, and quality of developed computer software, matching the specification and execution in its intended environment. DEFINITION OF SOFTWARE TESTING Verification of Software Systems | Kiril Delovski | delovski.office@gmail.com
  • 4. CMC Limited • Software Testing is the process used to help to identify the correctness, completeness, security, and quality of developed computer software, matching the specification and execution in its intended environment. DEFINITION OF SOFTWARE TESTING Verification of Software Systems | Kiril Delovski | delovski.office@gmail.com
  • 5. TEST CYCLE Software testing is maintain through a chain of cycle • Requirements Analysis • Design phase • Test Planning • Test Development • Test Execution • Test Reporting • Retesting the Defects Verification of Software Systems | Kiril Delovski | delovski.office@gmail.com
  • 6. INTRODUCTION TO TESTING • Debugging and testing are not the same thing! • Testing is a systematic attempt to break a program. • Correct, bug-free programs by construction are the goal but until that is possible (if ever!) we have testing. • Testing is a process of executing a program with the intent of finding an error. Verification of Software Systems | Kiril Delovski | delovski.office@gmail.com
  • 7. CMC Limited TESTING OBJECTIVES • Uncover as many as errors in the software as possible in a given timeline, and make sure get fixed • Demonstrate a given software product matching its requirement specifications. • Validate the quality of a software testing using the minimum cost and efforts. • Generate high quality test cases, perform effective tests, and issue correct and helpful problem reports. Verification of Software Systems | Kiril Delovski | delovski.office@gmail.com
  • 8. LIMITATIONS OF TESTING • Programs take input in a variety of ways: mouse, keyboard, • Must test valid and invalid inputs. • There are an infinite amount of sequences of inputs to be tested. • To test all possible inputs is impractical or Impossible • To test all possible paths is impractical or impossible • Too Many Possible User Environments Verification of Software Systems | Kiril Delovski | delovski.office@gmail.com
  • 9. WHEN TO START / END TESTING When to start • In the early stage of testing life cycle it reduces the errors. • The goal of Software Tester is to find bugs, find them as early as possible, and make sure being fixed. When to end • It is difficult to determine. • There are common factors in deciding when to stop testing:  Deadlines (release deadlines, testing deadlines.)  Test cases completed with certain percentages passed  Test budget depleted  Coverage of code/functionality/requirements reaches a specified point  The rate at which Bugs can be found is too small  Beta or Alpha Testing period ends Verification of Software Systems | Kiril Delovski | delovski.office@gmail.com
  • 10. BASIC SOFTWARE TESTING TYPES • Security Testing • Stress Testing • Load testing • Performance Testing Verification of Software Systems | Kiril Delovski | delovski.office@gmail.com
  • 11. Severity Factor that shows how bad the defect is and the impact it has on the product Priority Based upon input from users regarding which defects are most important to them, and be fixed first. SEVERITY VS PRIORITY Verification of Software Systems | Kiril Delovski | delovski.office@gmail.com
  • 12. SEVERITY LEVELS • Critical • Major / High • Average / Medium • Minor / low • Cosmetic defects Verification of Software Systems | Kiril Delovski | delovski.office@gmail.com
  • 13. SOFTWARE TESTING ACTIVITIES - Test Planning - a need for test schedule for a test process and its activities - test requirements and items - test strategy and supporting tools - Test Design and Specification - Conduct software design based on well-defined test generation methods. - Specify test cases to achieve a targeted test coverage. - Test Set up: - Testing Tools and Environment Set-up - Test Suite Set-up - Test Operation and Execution - Run test cases manually or automatically Verification of Software Systems | Kiril Delovski | delovski.office@gmail.com
  • 14. SOFTWARE TESTING ACTIVITIES - Test Result Analysis and Reporting Report software testing results and conduct test result analysis - Problem Reporting Report program errors using a systematic solution. - Test Management and Measurement Manage software testing activities, control testing schedule, measure testing complexity and cost - Test Automation - Define and develop software test tools - Adopt and use software test tools - Write software test scripts and facility - Test Configuration Management - Manage and maintain different versions of software test suites, test environment and tools, and documents for various product versions. Verification of Software Systems | Kiril Delovski | delovski.office@gmail.com
  • 15. TEST DOCUMENTS • Test plan • Quality objectives, resource needs, schedules, assignments, methods, etc. • Test cases • Inputs and expected outputs. • Bug reports • E.g., the Bugzilla web-based bug tracker. • Test tools and automation • Metrics, statistics, and summaries • Number of unresolved bugs, (time to repair a bug, etc.) Verification of Software Systems | Kiril Delovski | delovski.office@gmail.com
  • 16. GOOD TEST PLANS • Developed and Reviewed early. • Clear, Complete and Specific • Staff knows what to expect and when to expect it. • Realistic quality levels for goals • Includes time for planning • Can be monitored and updated • Includes user responsibilities • Based on past experience Verification of Software Systems | Kiril Delovski | delovski.office@gmail.com
  • 17. TEST CASES, SUITES, SCRIPTS AND SCENARIOS Test Case Is a set of conditions or variables under which a tester will determine if a requirement or use case upon an application is partially or fully satisfied. Test Script A test script is a short program written in a programming language used to test part of the functionality of a software system. Test Suite The most common term for a collection of test cases is a test suite. Test Scenario Scenario testing is a software testing activity. It uses scenario tests, or simply scenarios, which are based on a hypothetical story to help a person think through a complex problem or system. Verification of Software Systems | Kiril Delovski | delovski.office@gmail.com
  • 18. GOOD TEST CASES • Have high probability of finding a new defect. • Repeatable and predictable. • Traceable to requirements or design documents • Execution and tracking can be automated • Do not mislead • Feasible Verification of Software Systems | Kiril Delovski | delovski.office@gmail.com Purpose to Find Defects
  • 19. WHY AUTOMATION? When to Automate? -Stable Application -Manual Efforts are high -Regression comes frequently -We have plenty of time for testing When not to Automate? - Application changes frequently - Testing time is not defined or agreed - Budget does not allow us Automation Tools - QTP - Cucumber - Soap UI - Selenium - Jmeter - LoadRunner - SilkTest etc. Benefits - One Time effort - Saves Time - Saves Money - Better Outputs Verification of Software Systems | Kiril Delovski | delovski.office@gmail.com
  • 20. SELENIUM Verification of Software Systems | Kiril Delovski | delovski.office@gmail.com
  • 21. • Selenium 1.0 - Selenium RC or Remote Control • support for several languages (Java, Javascript, Ruby, PHP, Python, Perl and C#) • Selenium IDE (Integrated Development Environment) • Selenium-Grid 1.0 SELENIUM’S TOOL SUITE * Via appium, Selendroid, ios-driver and WP driver. WEB, NATIVE, AND HYBRID APPLICATIONS Verification of Software Systems | Kiril Delovski | delovski.office@gmail.com
  • 22. 1. Selenium IDE (Integrated Development Environment) • Is a prototyping tool for building test scripts • A Firefox Add-on provides easy-to-use interface for recording user actions, editing and running automated tests. • Exports user actions as a reusable script in one of many programming languages that can be later executed • Can be downloaded from seleniumhq.org SELENIUM IDE Advantages: • No programming skills required • Easy record and playback • Step by step debugger • Play tests on any browser • Export tests as WebDriver tests • Extensible Disadvantages: • Based on SeleniumCore • No code reuse • No iterations and conditional statements • No exception handling • No error recovery Verification of Software Systems | Kiril Delovski | delovski.office@gmail.com
  • 23. SELENIUM IDE Disadvantages: • Based on SeleniumCore • No code reuse • No iterations and conditional statements • No exception handling • No error recovery Verification of Software Systems | Kiril Delovski | delovski.office@gmail.com
  • 24. SELENIUM ELEMENT LOCATORS • 1. ID • 2. Name • 3. LinkText • 4. TagName • 5. Partial Link Text • 6. CSS • 7. xPath (Absolute and Relative) Verification of Software Systems | Kiril Delovski | delovski.office@gmail.com
  • 25. • storeText ( locator, variableName ) • From getText ( locator ) command • storeLocation (variableName) • From getLocation() command • assertText(locator, pattern) from getText(locator)command • assertLocation(pattern) from getLocation() command • verifyText • waitForText • verifyLocation • waitForLocation • 1. open (url) • 2. click (locator) • 3. type (locator, value) • 4. select (locator, optionLocator) SELENIUM COMMANDS Verification of Software Systems | Kiril Delovski | delovski.office@gmail.com
  • 26. Practical Example with Presentation Requirements: Java JDK IntelliJ IDE Junit 4 – an unit testing framework Selenium - tool for automatic testing Apache Maven – for building the tests and creating the reports Verification of Software Systems | Kiril Delovski | delovski.office@gmail.com
  • 27. ВИ БЛАГОДАРАМ ЗА ВНИМАНИЕТО ПРАШАЊА? / QUESTIONS? КРАЈ / THE END THANK YOU FOR YOUR ATTENTION Verification of Software Systems | Kiril Delovski | delovski.office@gmail.com https://www.facebook.com/groups/SoftwareTestingCommunityMacedonia/
  • 28. More About Me https://www.facebook.com/kdelovski http://delovski.innosmartsoft.mk/Online CV - https://mk.linkedin.com/in/kdelovski6 delovski.office@gmail.comEmail: Verification of Software Systems | Kiril Delovski | delovski.office@gmail.com