Wednesday, December 15, 2021

Agile Testing

  

Agile Test Strategy

  • Big picture (ten words or less to speak to what this is that we are testing)

    • Drive behavior and set testing boundaries

    • Outline automation approach (typically executed after end-to-end testing)

    • Test data management (need to have clean data or will any data do?)

      • Test data should be re-usable and accessible in non-production environments

        • Collaborate with your data Team and Engineering Team

  • Defect management

    • UAT bug definition as agreed on by Product

    • QA bug

      • Create a ‘Bug’ and link to the story that the bug has been found in

        • Communicate to the Product owner for priority and assignment 

        • When a bug is blocking a ticket, send an email to all stake holder stating so

        • Bugs ought to be resolved in the same sprint or carried over into the next sprint with the relative ticket

        •  If the bug is NOT resolved and the ticket needs to move to Production then we will put it in the backlog and label with #techdebt

  • Large risks to our product quality

    • Our mindset is one of the end-users aka anyone using our tools and products.

 Value of the test plan

An agile test plan will harden what the customer and the Team agree on

  • Identify gaps

  • Set expectations

  • Details of acceptance criteria

 Notes: Continue collaboration via reviews, syncs, standups and maybe even a demo. Expect code, configuration and product to be changing every sprint.

 Quality can drive velocity in agile

  • Velocity is measured by our Developers

    • Quality is reflected by the QA Team

      • An increase in quality increases velocity

      • Bugs caught earlier saves time and money

      • releasing w/ no re-work due to bugs saves time and money 

      • list more bullets' or do folks get it?

 Who is responsible for quality ? EVERYONE. Our work is to reflect the quality that has been designed and engineered into the products that we support.

Who is responsible, accountable, consulted and informed from the quality perspective

<insert link to QA RACI blog post here>

First QA iteration - Test Design

Ask questions of the ENTIRE TEAM; product, app dev, data and/or vendors/third parties. The requested change is signed off on and prior to development or design work, QA will participate in Product meetings to understand the following, prior to coding or changes made;

  • what should I be testing? What are we automating?

  • With what tools will be needed? Postman, iPhone, automation, data sets, environments, …

  • What will be manually tested due to complexity?

  • Where do you expect to find issues?

  • What should we explore and for how long? (main user path and edge cases, integrations, …)

Test Requirements and testing design

  • What is to be tested? and how…

    • Who is doing the testing? (Unit, functional, integration, acceptance, …)

    • defer to QA RACI link above

  • Regression testing based on;

    • Complexity, Overlapping functionality (APIs), Value, Stability and integrated, Dependencies for automation, …

  • Out of scope
     

Second iteration - Story / Feature Verification 

Start your testing on the defined scenarios and readiness of code

  • Refer back to your plan

  • Team will be creating testing

  • Testing will be done as development completes and data is available

  • Identify test cases for automation

  • Update test data for QA and UA testing

  • Conduct manual validation

  • Create any stubs

Ensure the feature or changes are working as expected

Validate component interaction / integration testing

Write bugs and re-test for fixes 

Third iteration - System

  • Complete end-to-end testing of features and functionality

  • Run regression to validate prior feature are NOT broken

  • Ensure regression test are updated

  • Remove any stubbing if possible

  • Continue a correct a fix defect (critical)

  • Update the plan with any other change and communicate to the Team.

  • Dependencies & assumptions

    • Assumptions;

      • Systems are working as expected prior to change

      • Skills and time to complete the testing need

    • Which Teams are developing what

      • Dev, Vendor, Data, Product, … 

    •  

  • Test data: what specific types of data will we need

    • Mock data, Stubbed data

    • Production ‘like’ data (NPPI removed)

    • DO NOT USE REAL USER information.

      • Customers private data will NOT be used for testing as it s private.

 Tech debt - what’s that? Credit debt analogy 

  • Test acceptance Criteria

    • Do we have what QA needs for us to start?

    • Product/Dev/EDE review and sign off on the testing plan

 

 


Tuesday, December 14, 2021

How I've learned to code

 Being dyslexic has meant that my approach to learning has taken an un-traditional approach 

Tuesday, December 7, 2021

Me as a manager

 This is Strange 

  • We'll learn more about each other organically

  • This is intended to quickly mention a few things to better understand me 

  • This is not a presentation, but an info deck (https://martinfowler.com/bliki/Infodeck.html)

  • Part of having this be known by the team is so that you can all hold me accountable for my actions

What I do


  1. Attract and Retain World-Class Talent (that's you!)

  2. Set context and provide clarity 


  • When I do something that negatively impacts my ability to retain you, tell me, (or if you’re more comfortable my boss), ASAP. 

  • If I do something that feels more like telling you how to do your job rather than setting context, tell me ASAP.


How I approach my job

  • Autonomy - you decides how you do your work we each own what we do

  • Learn - continue to learn and do better for yourself and for the Enterprise be open about what you don’t know and be willing to learn

  • Purpose - Align your work with a high power, customer, Team, OKR, …

    • We are the Team that can change the way the world uses software 


Stay Frosty, (agile)
  • Document how you take in work; what’s most important and done first 

    • Grooming, planning, limiting work in progress...

  • Have retrospectives; when things are good and when thing are not so good

    • And learn from them  

    • And learn from them, and learn from them 

  • Limit the Work In Progress (WIP)

    • If you don’t limit the work your doing you’ll end up doing all the work.  

Transparency

  • I work to be as open as possible about what’s going on with our team, department, and the organization 

  • My calendar is public, update to day and very few events are private

  • This company may require me to not tell you about something before a certain date (e.g. stock option plan changes which managers may know a week before they were announced).

I bias toward transparency and candor.  You can ask anything.  Most of the time, I'll answer.  Rarely, I won't.  I'm committed to never lying to you.

Full stack QA

 What is a full stack QA ? 

Manual tester and SDET? 

Test the front, back, middle and side to side? 

Tools, tools, tools and yes more tools

 Docker, Kubernetes like peanut butter and jelly

Selenium web driver 

Maven 

Jenkins 

list more here later