Read Along- ‘Agile Testing’ Chapter-8

“Business-Facing Tests that Support the Team”

A look at tests in Quadrant-2 – Business-Facing tests

Agile Testing Quadrants
  • On an agile project, the customer team and the development team strike up a conversation based on a user story.
  • Business-facing tests address business requirements. They express requirements based on examples and use a language and format that both the customer and development teams can understand. Examples form the basis of learning the desired behavior of each feature and we use those examples as the basis of our story tests in Quadrant-2
  • Business-facing tests are also called “customer-facing”,”story”,”customer” and “acceptance” tests. The term ‘acceptance tests’ should not be confused with ‘user acceptance tests’ from Quadrant-3.
  • The business-facing tests in Q-2 are written for each story before coding started, because they help the team understand what code to write.
    • Quadrant-1 activities ensure internal quality, maximize team productivity, and minimize technical debt.
    • Quadrant-2 tests define and verify external quality and help us know when we are done.

The customer tests to drive coding are generally written in executable format, and automated, so that team members can run the tests as often as they like to see if functionality works as desired.

  • Tests need to include more than the customer’s stated requirements. We need to test for post-conditions, impact on the system as a whole, and integration with other systems. We identify risks and mitigate those with our tests. All of these factors then guide our coding.
  • The tests need to be written in a way that is comprehensible to a business user yet still executable by the technical team.
  • Getting requirements right is an area where team members in many different roles can jump in to help.
  • We often forget about non-functional requirements. Testing for them may be a part of Quadrants 3 and 4, but we still need to write tests to make sure they get done.

There are conditions of satisfaction for the whole team as well as for each feature or story. They generally come out of conversations with the customer about high-level acceptance criteria for each story. They also help identify risky assumptions and increases team’s confidence in writing & correctly estimating tasks needed to complete the story.

  • A smart incremental approach to writing customer tests that guide development is to start with a “thing-slice” that follows a happy path from one end to the other. (also called a “steel-thread” or “tracer-bullet”). This ‘steel-thread’ connects all of the components together and after it’s solid, more functionality can be added.
  • After the thin slice is working, we can write customer tests for the next chunk.
    • It’s a process of  “write tests — write code— run tests — learn”
  • Another goal of customer tests is to identify high-risk areas and make sure code is written to solidify those.
  • Experiment & find ways your team can balance using up-front detail and keeping focused on the big picture.

Quadrant-2 contains a lot of different types of tests and activities. We need the right tools to facilitate gathering, discussing, and communicating examples and tests.

>>Simple tools such as Paper or Whiteboard work well for gathering examples if the team is co-located.

>>More sophisticated tools help teams write business-facing tests that guide development in an executable, automatable format.

Are you a Good Agile Leader?

Agile leaders are supposed to get the maximum amount of quality work done with minimum control of the situation. The team constantly needs support and guidance while remaining independent and self-motivated.

How do you get this done within the tight deadlines? Do you have the team’s trust, and do they have yours? How do you know if you are a good leader for your agile team?

In my article for Testrail blog, I discussed the challenges of Agile Leadership and shared some tips for aspiring Agile Leaders to excel in their team management! Here are some areas to focus on:-

Communication

Communication is the backbone of agile. Open, clear and frequent communication breathes life into the agile team.

As an agile leader, you will be required to be big on communication, stressing its need, ensuring it is happening, and keeping it open and constructive at all times. You may even need to get over your own fear or reluctance if you are an introvert! A good agile leader needs to constantly encourage people to work together, discuss issues, and enforce good communication practices.

Vision

As a good agile leader, it is imperative to maintain a clear vision for the project. Since agile requires teams to deliver working software frequently, most of the team’s time is spent concentrating on different tasks and activities to make the release happen.

But since requirements change often, it is easy to lose sight of the overall vision for the project amidst all that chaos. It falls to the leader to keep the team aligned, maintain the overall vision, and help everyone zoom out periodically to look at the bigger picture.

Removing Impediments

A Good Agile Leader

An agile leader is required to be a constant problem solver. They need to look for problems before they happen and resolve them as early as possible.………

Read More »

My contribution to the eBook “Software People- Work From Home” -now on Leanpub

I am super excited to share that I have my first ever contribution to an eBook now published on Leanpub. This eBook called “Software People- Work From Home” is initiated and compiled by Stephan Kamper and Maik Nogens which has many software professionals from all around the globe contributing their stories, experiences and ideas on their work-from-home experiences.

In my chapter , I wrote about Speaking and Engaging from home in this pandemic-induced lock-down situation. I shared my take on engaging with your colleagues, engaging with the community and also with oneself while working from home. Check out Chapter-9 in the eBook to read my contribution. Please give it a read and support this wonderful initiative –> https://leanpub.com/softwarepeopleworkfromhome

Catch updates and opinions about the book, and tweet about it using the hashtag #SoftwarePeopleWfhBook

My Work-from-Home Desk

Another fun aspect of this eBook is getting to see all the fun ‘work-from-home’ setups and desk images shared by the authors along with their write-ups. It brings a sense of belonging, understanding and normalcy to this unique situation and helps you relate to the writer’s life and experiences. I , too shared by home desk image! 🙂

Find out how software people experienced the corona-virus-caused time working from home!

Software people from all over the planet share their insights & experiences, opinions, and tips.

The coronian times during the year of 2020 have – in fact are still at the time of the writing – proven to provide a good number of challenges for everyone.

– eBook “Software People- Work From Home”

This eBook is available for free at LeanPub. Please give it a read and support this wonderful initiative! https://leanpub.com/softwarepeopleworkfromhome

Cheers

Nishi

My experience speaking at Testbash Home

The Ministry of Testing (MoT) is definitely the biggest and the most supportive testing community. Having heard so much about their Testbash events conducted world-wide, speaking at one was a long time goal. And I was fortunate enough to be accepted to speak at Testbash Detroit this year. But as things progressed since the beginning of 2020, travels and conferences of any kind were far from possible in light of a the global pandemic of Covid-19. Alas! our dreams were shattered. And though, it was disheartening for sure, the awesome community jumped back from the jolt and got together to bring us all an awesome online event #Testbash Home 2020.

Preparations began and I too got back to preparing my talk, which I had given up on after the cancellations! Took a couple of weekends sorting out the content and slides. Then we had a call to record the talks with the community members Heather and Diana were ever so supportive and so kind with their emails, scheduling and feedback! This was a wonderful idea to have the talks pre-recorded so that we are not hampered by any technical glitches on the event day, while we speakers get to focus on engaging with everyone and answering questions from the community.

As the day of the event approached, I prepared for my live interview. The event had more than 1000 registrations! Definitely making it the biggest audience I have ever presented to. Though the event began late night hours for my timezone, my talk was at a convenient morning hour. So that is when I joined in. Had a wonderful chat with Richard who was the Backstage boss and handling the entire livestream for the entire 24 hours! Checked on my audio & video etc and also had introductions with James who was the host for that part. And then we were live!

The duration of the talk went great. It was surreal listening to myself presenting, and looking at the live chat and questions coming from the participants throughout the talk. Once it ended, I was back live with my video. Me and James continued to discuss the most popular voted questions asked and I answered them the best to my knowledge. It was amazing to see such great comments and kind appreciation by the listeners in the chats once we were done. #Grateful

Once my talk was done, I could now continue to enjoy the rest of the live event! #Testbash Home was an absolute treat with a mix of great content, discussions, community participation, fun hosts and great conversations! It sure has set the bar really high for all online events in the future. I stayed throughout the next 5 parts of the event and only left late at night when it was absolutely impossible to keep my eyes open 😛

It sure felt like a day away from our regular stay-at-home lives, and felt like we had met up with so many people in the virtual world. Some key highlights of the day were-

  • Awesome talks by speakers
  • Black Box puzzles played live with volunteers
  • 99 second talks with many enthusiastic participants, many of whom were presenting for the first time!
  • The breakout room was so much fun – where you could select your avatar, enter a virtual room and just chit chat (and play with Ralph the dogBoss 😛 )
  • The breaks in-between parts had the background noise of an actual conference hall with people chattering and plates clanking. It was so soothing to hear (given the times we are in!) A fantastic idea! 🙂
  • The hosts did an awesome job engaging everyone in informal chats, yoga, discussing shows we are watching, things we are cooking and what not. Considering that it was a 24 hour long event, it sure was a welcome change of pace every few hours.
  • The short intros of all the MoT community bosses was so much fun to watch and made it very relatable. Now we know the faces behind the names.

Overall, TestBash home was an awesome experience, and I was fortunate to get some great feedback for my first ever Testbash Talk! I also loved the sketch-note of my talk created by Louise Gibbs

Sketch note Created by Louise Gibbs

I look forward to taking it further and engaging with this community in a live Testbash event some day! 🙂

Cheers

Nishi

I am speaking at TestBash Home 2020

When life gives you lemons, make lemonade! None better example of this than the zingy, sweet lemonade under preparation by this awesome community at @Ministry Of Testing , bringing the ‘testing’ flavors of the entire world right to your home!

Despite cancellations of a number of events due to the ongoing pandemic, this community has come back together to create an amazing online event. I am super excited to be speaking at TestBash Home 2020 – the first online software testing conference by Ministry Of Testing. It will begin on the 30th of April 2020 and run for a full 24 hours into the 1st of May 2020, traveling all timezones so that everyone in our truly global testing community can get involved. 

I am honored to be a part of such an awesome line-up of speakers. These hours are going to be packed full of interactive sessions including talks, panels, challenges, plus we’ll relive and reflect on some classic TestBash talks.

Speakers List – TestBash Home 2020

The agenda is live now-

Checkout more details about the event and schedule here –https://www.ministryoftesting.com/events/testbash-home-2020

Follow the updates on Twitter—

Register now for loads of fun and learning and engaging with a worldwide community of testers right from your home!

Cheers

Nishi

Read Along- ‘Agile Testing’ Chapter-4

“Team Logistics”

  • Testers on agile teams feel very strongly about their role as customer advocate and also feel they can influence the rest of the team with their quality thinking.
  • Testers also need training on pair testing, working with incomplete and changing requirements, automation and all of the other new skills that are required.
  • Programmers also might need coaching to understand the importance of business-facing tests and the whole-team approach to writing and automating tests.
  • The pairing of programmers and testers can only improve communication about the quality of the product.

“One major advantage of an integrated project team is that there’s only one budget and one schedule.”

The difference between a traditional cross-functional team and an agile team is the approach to the whole-team effort. Members are not just “representing” their functions in the team but are becoming true members of the team for as long as the project or permanent team exists.

  • The best teams are those that have learned to work together and have developed trust with one another.
  • Teams work better when they have ready access to all team members, easy visibility of all progress charts and an environment that fosters communication.
  • Teams make the best progress when they’re empowered to identify and solve their own problems. If you’re a manager, resist the temptation to impose all your good ideas on the team.
  • Make sure testers are involved in all meetings! If you are a tester and someone forgets to invite you to a meeting, invite yourself!

“Courage is especially important. Get up and go talk to people; ask how you can help. Reach out to team members and other teams for direct communication. Notice impediments ad ask the team to help remove them.”

Agile development works because it gets obstacles out of our path and lets us do our best work.

——- On to the next one!

Cheers

Nishi

Read Along- ‘Agile Testing’ Chapter-2

“The Principles for agile testers”

Points to remember and Quotable Quotes

Definition of Agile Tester-

“A professional tester who embraces change, collaborates well with both technical and businesspeople, and understands the concept of using tests to document requirements and drive development.”

  • Skills are important, but attitude counts more
  • An agile tester does not see herself as a quality police officer, protecting her customers from inadequate code.
  • Agile testers don’t limit themselves to solving only testing issues.
  • Creativity, openness to ideas, willingness to take on any task or role, focus on the customer and a constant view of the big picture – are some components of the agile testing mindset.
  • A team that guides itself with agile values and principles will have higher team morale and better velocity than a poorly functioning team of talented individuals.
  • The principles important for agile testers are –
    • Provide continuous feedback
    • Deliver value to customer
    • Enable face-to-face communication
    • Have courage
    • Keep it Simple
    • Practice continuous improvement
    • Respond to change
    • Self-organize
    • Focus on people
    • Enjoy
  • AATD “Agile Attention Deficit Disorder” – Anything not learned quickly might be deemed useless!
  • Automating tests is hard, but it is much easier when you have the whole team working together.
  • Agile development rewards the agile tester’s passion for her work!

I had written an article about differences between Agile and Traditional testing approaches a few years back. Though I had not read this book at the time, I now feel how many of the points were similar and resonate the same even now. You can read my article here – https://testwithnishi.com/2016/10/20/5-ways-agile-testing-is-different-from-traditional-testing/

***Update **About face-to-face communication** during Covid-19 ***

As I am reading this book during this bizarre time of social-distancing, working remotely and entire nations on lockdown, the part about ‘face-to-face’ communication has a new meaning now. As Janet Gregory also pointed out in response to this article, our definition of face-to-face has changed over the last few weeks over the entire world! We are lucky to have technology that helps us continue effective communication within our teams, have conversations, video calls, screen shares, continue learning over webinars and continue working, feeling useful and being productive.

Hoping things change soon and we can go back to having fun, productive discussions with our team mates over coffee. Until then — Happy social distancing!

*************

Read Along- ‘Agile Testing’ Chapter-1

“What is Agile Testing, Anyway?”

Points to remember and Quotable Quotes:

  • “Several core practices used by agile teams relate to testing.”
    • Programmers using TDD, code integration tests being written contribute to a successful project.
  • “Agile Testing just doesn’t mean testing on an agile project.”
    • Some testing approaches like exploratory testing are inherently agile, whether done in an agile project or not.
  • Testers are integral members of the customer team as well as development team
  • The best part of this chapter is Lisa and Janet’s wonderful stories on beginning with their first agile projects, and a realization by Janet’s co-worker, a developer in a team following XP on how they saw Janet’s contribution to the project.
  • “Testers don’t sit & wait for work; they get up and look for ways to contribute throughout the development cycle and beyond.”
  • Traditional vs Agile Testing
    • In Traditional approach – “Testing gets “squished” because coding takes longer than expected, and because teams get into a code-and-fix cycle at the end.
    • In Agile – “As an agile team member, you will need to be adaptive to the team’s needs
    • “Participants, tests, and tools need to be adaptive.”
  • “An Agile team is a wonderful place to be a tester”
  • The Whole-Team Approach –
    • “Everyone on an agile team gets “test-infected.”
    • “An agile team must possess all the skills needed to produce quality code that delivers the features required by the organization.”
    • “The whole team approach involves constant collaboration”
    • “On an agile team, anyone can ask for and receive help”
  • “The fact is, it’s all about quality – and if it’s not, we question whether it’s really an ‘agile’ team.”

Wanna Read along? Get your copy of the book at

https://www.flipkart.com/agile-testing/p/itmdytt85fzashud?pid=9788131730683

OR find a paperback or ebook version!

Read Along- ‘Agile Testing’ by Lisa Crispin & Janet Gregory

Book Read Blogs Series

I used to love books, reading was a fun and satisfying hobby for the introverted teen I was. But lately I may have gotten away from it for known and unknown reasons. I want to pursue the passion again and hold myself accountable too. So, this year I am starting a ‘Read Along’ series on my blog.

“Agile Testing” by Lisa Crispin & Janet Gregory

I will begin by reading the book I had bought last year. “Agile Testing” by Lisa & Janet is a coveted read for all agile enthusiasts & testers and is also featured in the best books for testers at https://continuoustesting.blog/2020/01/17/most-recommended-software-testing-books-to-read-in-2020-and-beyond/

I have learnt agile testing by doing it, learning it hands-on, training & running courses on agile testing for professionals. I wanted to enhance my knowledge by reading the professional work by these awesome ladies.

So, I will be reading the book and will post about learnings, things to remember & quotable quotes from each chapter as I progress. This is to hold myself accountable, as well as to help people looking for good reads or learnings. Hope this helps you. Have you read this book? Do share your thoughts & learnings too!

Here are links to the posts for this book-

Chapter-1

The Art of Bug Advocacy

Testers find defects and raise awareness about quality. What happens after the bugs are found can be any tester’s guess, though. Bugs may get delayed, postponed, go unnoticed or linger on due to lack of information.

In my article for Ranorex blog, I talk about how Testers need to champion the cause of their bugs in order to avoid unneeded delays in fixing defects that are important. At the same time, testers should maintain a distance to make it an impersonal and impartial experience. Testers need to master the art of bug advocacy!

Why is advocacy important?

Advocacy is basically pleading the case for a bug to be fixed. The testers who find the bugs are the ones who need to advocate for their bugs. It is important that they take a stand and voice their opinions.

Some bugs may not be deemed important from a business perspective, as they seem too small. But in reality, they may be blocking an important feature for a particular user group. On the other hand, some bugs may seem more critical than they truly are, and while fixing them may be important, it may not be the highest of priority.

Whatever the case, testers must aim to present the facts and data in such a way that decision-makers are able to make well-informed resolutions about the issue.

Communication is key

Advocating for anything is not a one-way street. It takes discussion, debate and reaching a consensus on key points to make a collective decision. This is where testers’ communication skill plays a key role. Testers need to have good communication, both verbal and written.

Read More »