Showing posts with label Agile Testing. Show all posts
Showing posts with label Agile Testing. Show all posts

Wednesday, July 22, 2020

Test Automation cycle in Agile

Agile Automated Testing quadrants

Q1- Automated- unit

Q2 -Requirements- business focus

Q3- Manual – feedback of Q1 and Q2 and starting for automated testing

Q4- Tools - Non functional requirments

 

Agile Automated Testing plan

  • For each release of application
  • Testing scope
  • Feature complexity tst coverage
  • Test new functionality
  • Performance and load testing
  • Infrastructure review
  • Available resources
  • Mititgation or risk plan
  • Deliverables and milestone of testing

 

Agile Automated testing life cycle

  1. Iteration 0- initial setup identify resource,install tools, scheduling etc- ,
  2. construction iterations
  3. Release end game- system and acceptance testing
  4. Production

 

Agile automated testing risks

  1. Cost to build and maintain
  2. Does not replace exploratory manual testing
  3. Unreliable tests or unclear user stories
  4. Relying on macro-recording test
  5. Part of continuous integration process
  6. Inadequate test plan
  7. Missing setup/tear down scripts
  8. High level of maintenance
  9. Metrics may be misleading
  10. Lack of automated testing expertise
  11. Team collaboration is crucial
  12. Focusing on the valuable features

 

Agile and Devops Test automation

Agile vs. Devops principles

  • Agile- speed of deployment, while in devops-team specialization
  • Agile focus on creating vs deploying software while devops focus on communication vs documentation
  • Devops relies on documentation, while agile will be scheduling timeframe or meetings
  • Agile teams are small, devops many teams collaborate to large team
  • Agile focus not on automation, devops focus on automation

 

Devops test automation factors

  • Management of test data
  • Steering parameters
  • Test servers and virtualization
  • Dedicated test user accounts
  • Continuous testing and integration
  • High degree of communication required among teams

 

Test automation and Dev-Ops

  • Supports continuous development
  • Coordination required amongst stakeholders
  • All processes must be automated

 

Dev-Ops test automation best practices

  • Set achievable expectations
  • Ensure test automaton is adopted
  • Assign dedicated resources
  • Decide on a starting point
  • Include automation testing in definition of done
  • Review and adapt

 


Test Management in Agile using Jira (Scrum/Kanban)

Test Management in Jira

Need account in Jira

To configure jira project click on Jira setting > clicks on Apps > Manage App or find new apps (TM4J- test management for jira – paid plug in (free trial))

Back to main menu

Click on Test

Click on project setting page

Click on “On”

Permission “On”

Test cycle, test cases, reports etc can be set

 

Whole Team Approach

Collaborative user story creation

Tester can give idea for user story creation

  • Release planning
  • Sprint planning
  • Test analysis
  • Automation testing
  • Regression testing

 

Agile testing practices

  • Pairing
  • Incremental test design
  • Agile metrics
  • Sprint retrospectives

 

Agile Testing methods

  • Test driven development – programming practice for unit automated testing
  • Acceptance test driven development – focus on acceptance test cases
  • Behavior driven development – involves visualize the behavior of system or application , its language oriented with simple English cucumber with selenium

 

Scrum and Kanban in Jira

1 scrum project

  • Jira dashboard > project > create project > select Classic > project name and key Template Scrum and create
  • Showing active sprints
  • Click on backlog
  • Create sprint
  • Create user stories

 

kanban project

  • Jira dashboard > project > create project > select Classic > project name and key Template kanban and create
  • Showing kaban board
  • Click create an issue
  • Enter summary select issue type
  • Can move to development, inprogress and done

 

Agile Testing Levels and Quadrants

Agile testing levels

Levels of Testing

  1. Unit testing – individual unit or feature testing
    1. Short program fragment
    2. Binary outcome
    3. Save cost effort for debug defect
    4. Detect bugs at early stages
    5. Routine operations reduce the manual testing efforts
  2. Integration testing – combine individual unit as group and test
    1. Expose the fault at combine unit
    2. Tests runs faster
    3. Higher code coverage
    4. Reliable and easy
    5. Catch system level issues like broken DB schema etc
  3. System testing- complete application or software
    1. Black box testing – functional level
    2. White box testing
    3. Tests full software product
  4. Acceptance testing – software testing for acceptability, acceptable for delivery or not
    1. Black box system tests- represent business owners for acceptance
    2. Used as regression tests
    3. Occurs earlier and more frequently

 

Using cucumber with selenium for automation

 

Agile Testing quadrant

 

Business facing

Quadrant 1

Automated and manual

Functional tests

Quadarant 2

Manual

Exploratory testing scenarios

Usability testing

Quadrant 3

Automated

Unit tests

Component tests

Quadrant 4

Tools

Performance and load testing security testing

 

Quadrant 1

  1. Unit level
  2. Develop test cases- technology facing
  3. Supports developers
  4. Perform unit and component testing

Quadrant 2

  1. System level- perform manual testing
  2. Business facing- test cases
  3. Conform product behavior

Quadrant 3

  1. System acceptance level – provide feedback of two quadrant
  2. Business facing
  3. Focus on real time scenarios
  4. Perform manual testing- exploratory testing, user testing, collaboration testing

Quadrant 4

  1. Operational acceptance level
  2. Focuses on
    1. Performance
    2. Load
    3. Stress
    4. Maintainability
    5. Scalability tests

Agile Testing Tools

Agile Testing tools

  1. Worksoft
    1. Provides agile testing framework
    2. Faster approach to build automation
    3. Can integrate with Dev-Ops
    4. Can achieve end to end testing
    5. Resolve data transfer problems
  2. Soap UI
    1. Agile testing tool and popular for API testing
    2. Support various protocol and technologies
    3. Functional, load and regression testing
    4. Open source
    5. Support API and web service functional testing
    6. Uses drag and drop
    7. Support multiple environment with data driven testing
  3. Jira
    1. Project management tool
    2. Can use for defect report, planning and management
    3. Supports agile methodology (scrum, Kanban)
    4. Strong reporting feature
    5. Customized filters support query language
    6. End to end traceability

 


Agile Tester Role and Responsibility


Tester Role and Responsibilities

Agile Tester Role and responsibilities

  • Quality assistance over quality assurance
  • Continuous testing over testing at the end
  • Automated checking over manual regression testing
  • Exploratory testing over scripted testing
  • Preventing defects over finding defects

 

Agile tester skill requirements

  • Solution oriented
  • Quality oriented
  • Responds quickly to change
  • Proficient in automation and familiar with development

 


Agile Testing - Key Metrics

Test Tracking and Metrics in Agile

  1. Test Status Tracking (pass/fail by test cases)
  • Discuss in Daily stand up meeting
  • Use standard test management tools
  • Communicate via instant message to update status
  1. Test progress Tracking
    1. Automated test results approach
    2. Scrum task boards approach
    3. Burn down charts approach

 

Agile Quality Metrics

  1. Escaped defects
  2. Failed deployments
  3. Release NPS (net promoter score)- if user recommend release or not

 

Agile productivity Metrics

  1. Lead time
  2. Cycle time
  3. Sprint burndown

 


Agile Testing Life Cycle

Agile Testing life Cycle

  1. Test Planning
  2. Sprint planning
  3. Implementation and execution
  4. Sprint closure activities

 

  1. Test plan and key features

Test plan defines the risks, scope of testing and approach of testing

  • Purpose and project overview
  • Risks
  • In or out of scope features
  • Test Approach
  1. Sprint planning
    1. Scrum framework

                                                               i.      Determines product backlog

    1. Involvement in sprint planning

                                                               i.      Product owner

                                                             ii.      Team

                                                           iii.      Scrum master

  1. Implementation and execution
    1. Creation of test cases (must link to user stories)
    2. Ensure smaller cycles
    3. Less bugs
    4. Quick deliveries
  2. Sprint closure activities
    1. Report review
    2. Defect analysis report
    3. Sprint retrospective meeting

 

Using cucumber for BDD

Feature files

Step definition file

Function.java file

 

Agile Methodology and Testing

Agile Methodologies and Testing

  • continuous iteration of development and testing
  • concurrent development and testing activities
  • core values
    • individual and team interactions over processes and tools
    • working software over comprehensive documentation
    • customer collaboration over contract negotiation
    • responding to change over following plans

 

Agile Methodologies

  • scrum
  • crystal methodologies
  • dynamic software development method
  • feature driven development
  • lean software development
  • extreme programming

 

Agile Testing

API can be tested before UI.

Agile testing follows principal of agile software development

  • whole team approach
  • business facing tests
  • critique products

 

Agile testing categories

  • functional testing
  • Stress testing
  • Performance testing
  • Exploratory testing
  • Security testing
  • End to end testing

 

Challenges and Guidelines for Agile

Agile Testing Benefits

  • Businesses are more satisfied with end results
  • Better collaboration and communication between teams
  • Application maintenance becomes easier
  • Speeds up testing process with consistent sprints

 

Best practices in Agile Testing

  • Continuous testing
    • Lean testing
    • Automate testing
    • Implement QA practice
    • Automate deployments

 

Challenges in Agile Testing

  • Changing requirements
  • Partial information
  • Continuous testing
  • Technical skills
  • Frequent regression cycles

 


Wednesday, April 15, 2020

Scrum Overview

Scrum framework
Roles
  1. Product owner
  2. Scrum master
  3. Scrum development team

Sprint planning
Work to be performed in the sprint
Created through collaborated teamwork of scrum team
Answer the questions- what can be delivered and how can be delivered

Backlog refinement
Product owner and team review items in backlog to ensure
  1. Backlog contains appropriate items
  2. The items are prioritized
  3. Items at top of the backlog are ready for delivery

Scrum Artifacts
Product backlog
  1. Ordered list of everything that might be needed in the project
  2. Single source of requirements for any changes that need to made to the product
  3. At any point, the total work remaning to reach the goal can be summed in the product backlog
Sprint Backlog
  1. A set of product backlog selected for that sprint
  2. Contains a plan for delivering the product increment and realizing the sprint goal
  3. Makes all the work the team sees as necessary to meet the sprint goal visible
Increment
  1. The sum of all the backlogs that have been completed in the sprint
  2. The values of all previous sprints

Limitation of scrums
  1. No detailed estimated of time and cost
  2. Uncertainty over cost and completion date of final product
  3. Meetings can consume resources

Scrum values
  1. Commitment
  2. Focus
  3. Openness
  4. Respect 
  5. Courage

Scrumban
  1. Combines scrum and Kanban
  2. Generally used in maintenance projects
  3. Uses the prescriptive nature of scrum
  4. Uses the process improvement of Kanban

Scrum workflow steps
  1. Product backlog
  2. Sprint planning
  3. Sprint backlog
  4. Daily scrum
  5. Sprint review

Friday, November 29, 2019

Friday, July 27, 2018

Jira user story workflow

Hey folks,

In Jira, we have to work on user story for testing. Here, I try to write some basic flow about it. This can be vary as per your project needs.

When story is assigned-it will be in NEW stage.
After discussions, when story is accepted it will be inPENDING ASSIGNMENT stage.
When story is discussed among team it is ASSIGNED to development team.
When story is developing ,it is in FIX IN PROGRESS.
Once developed, it is in READY FOR QA DEPLOYMENT
Once deployed,it is in READY FOR TESTING
Once testing is in progress,it is in QA IN PROGRESS
If everything working fine on SIT, story assigned to UAT for testing and take change to PASS. If something fails, then defect needs to raise and follow defect life cycle and stage is FAILED RETEST.
Once the story is passed, stage change to CLOSE

Regards,
Trupti

Sunday, April 10, 2011

More About Scrum

Scrum
Scrum excels on urgent projects that are critical to the organization. Scrum excels when requirements are unknown or changing. Scrum helps by helping teams excel

Scrum has been used for…
  • FDA-approved, life-critical software for x-rays and MRIs
  • Enterprise workflow systems
  • Financial payment applications
  • Biotech
  • Call center systems
  • Tunable laser subsystems for fiber optic networks
  • Application development environments
  • 24x7 with 99.99999% uptime requirements
  • Multi-terabyte database applications
  • Media-neutral magazine products

Scrum Characteristics
  •          One of the agile methodologies
  •          Self-organizing teams
  •          Product progresses in a series of month-long “sprints”
  •          Requirements are captured as items in a list of “product backlog”
  •          No specific engineering practices prescribed
  •          Wraps existing engineering practices, including Extreme Programming
  •          Delivers business functionality in 30 days

Scrum’s Roles
  •          The Product Owner
  •          The Scrum Master
  •          The Team
  •          Everyone else is not part of Scrum
The Product Owner
  •          Creates initial product vision - overall requirements
  •          Manage and prioritize the Product Backlog
  •          Decide on release dates and its contents
  •          Responsible for the ROI, audience, etc.
  •          Interact with stakeholders and customers to define the Product backlog
  •          Adjust features and prioritize every sprint, as needed!
  •          Accept or reject work results during the Sprint Review
The Scrum Master
  •          Protect values and principles
  •          Removes impediments
  •          Keep the team fully functional and productive
  •          Enable cooperation
  •          Shield the team from “dark forces”
  •          Facilitates integration
  •          Does NOT allocate tasks
The Team
  •          Typically 7 plus or minus 2
  •          Self organizing
  •          Self managing
  •          Full time allocated
  •          Cross functional (Developers , QA ,Doc ,UED, PM etc…)
  •          Figure out how to turn Scrum backlog into an increment of functionality.
  •          Responsible for the quality
  •          Estimates the complexity
  •          Committed to developing functionality
Chickens
  •          No formal responsibilities
  •          No accountabilities
  •          Not a team member
  •          Someone who is interested in the project
Facilities Strategy
  •           Open space.
  •           Tables in the middle of the space.
  •          Cubbies (Private) around the outside of the space
Scrum Practices
  •          The Sprint Planning Meeting
  •          The Sprint
  •          The Daily Scrum
  •          The Sprint Review Meeting
  •          The Sprint Retrospective
  •          All other practices are not part of Scrum
Scrum’s Artifacts
  •          The Product Backlog
  •          The Product Burndown Chart
  •          The Sprint Goal
  •          The Sprint Backlog
  •          The Sprint Burndown Chart
  •          The Potentially Shippable Product Increment