My experience speaking at World Test Engineering Summit (in-person, Bangalore)

It has been a while since I have made it to an in-person event. So, this one was extra special.

Though, a very busy week (or perhaps month 😛 ) left little time to prepare for my talk, I was excited for the day and to present in person, network and meet people at the conference. And the day matched my expectations!

It was really fun presenting to such an engaged crowd and I was amazed at the response and feedback I received during and after the session! There were some great discussions, very keen participants sharing their own stories & experiences and many fantastic comments by the delegates.

My Topic was – “Keep the Wheels of Continuous Testing in Motion”

Here are the details of the event and my session

The event was also a great platform to meet people and teams from esteemed organisations. I spent time chatting with very talented people and made some great connections.

I also took this opportunity to dust off my Sketch notes pad 🙂 I made sketchnotes for some interesting sessions of the day.

I thank 1point21GWS team for having me as a part of this esteemed speaker panel.

I am always grateful for opportunities like this and always look forward to more such days!

Happy Testing!

Nishi

Why Customer Experience Directs the Software Testing Strategy?

<This is a guest post by Nishil Patel>

Digital development and customer experience run parallel with each other. Thus, businesses
across the world majorly focus on customer satisfaction as it is the only key to success. The
way businesses are operating has changed drastically in the past few years. However, it is
the one thing that will not change is the customer impact.
It means if your product or service doesn’t appeal to your audience, then you must focus on
improving them. There is no doubt that marketing will help you to some extent, but you will
not go too far. Significantly when it comes to software testing, customer experience is still a
priority. It is the base of the testing strategy that guides the testers and developers to
make it the best.

Customer-Centric Testing Approach

The customer-centric testing approach revolves around prioritizing the user experience over
rigid specifications and aims to automate exploratory testing to enhance speed and
scalability. In this approach, the main focus is on understanding and meeting the needs and
expectations of the customers.

This customer-centric testing approach goes beyond traditional testing methods that solely
rely on predefined test cases and requirements. Instead, it embraces a more adaptive and
dynamic approach that allows for continuous feedback and improvement.

By continuously monitoring and analyzing the user experience, testing teams can proactively identify areas of improvement and make data-driven decisions to enhance the overall user satisfaction.
By leveraging machine learning and AI, organizations can scale their testing efforts while
ensuring a high degree of accuracy and efficiency. The intelligent algorithms can process
vast amounts of data and provide actionable insights, enabling testing teams to optimize
their testing strategies and prioritize their efforts based on the most critical areas affecting
the user experience.

Key Aspects of Customer Experience

Customer experience plays a vital role in strategizing software testing. To understand how,
let’s have a look at the following points.

1- Trends in social media

Businesses nowadays should be transparent for an effective communication flow with the
customers. A wide range of social media such as Twitter, Facebook, etc. provides you with
direct feedback. Furthermore, you can easily expand your target audience and improve
customer loyalty.

2- Human approach

Every growing business focuses on improving customer behavior. It also helps in
understanding the current and upcoming demands. Gathering information such as
requirements, customer behavior, cultural behavior, etc. prompts innovation to bring new
ideas.

3- Regular improvements

Just gathering feedback from the customers will do nothing. As an organization, you must
respond to them. The task of creating a positive impact becomes easy when you start
solving the doubts and problems. This feedback will lead the testing and development team
to know where they lack and rectify the issues smoothly.

Read More »

I am speaking at ‘The World Test Engineering Summit’, Bangalore

I am glad to announce that I will be speaking at the 7th World Test Engineering Summit happening in Bangalore this month! And, this will be my first in-person conference since 2020, so I am even more excited for it!

The event will deliver in-depth content targeted at architects, developers, testers, integrators and managers by offering lectures and technical session to share expertise on the latest technologies, trends, tips and techniques. It is a great opportunity to present, learn, and challenge modern testing technologies and strategies!

This conference is split into two days with the first day being focused on Quality Assurance, Microservices and Serverless while Day 2 will focus on Agile Testing, Test Automation and Technology.

Here are the details of the conference and the schedule.

Check out the topic of my talk and the details on 23rd June.

Topic : Keep the Wheels of Continuous Testing in Motion

Description : Continuous testing is the way toward continuous delivery. Software teams must strive for continuous improvement of their continuous testing strategy. The key there is to embrace the continuity.The constant pressure of ‘speed to market’ needs testing to evolve and adapt. The factors that can help to keep the wheel of continuous testing in motion are both external and internal. Testers look outwards for priorities, collaboration and transparency; while they look inwards to reimagine processes, templatize lightweight documentation and recreate their own way of life in the testing world! Let us discuss ways we can plan, strategise and conduct software testing that befits continuous software delivery.

How to Start a Career in Software Testing

<This is a guest post by Kuldeep Rana>

Starting a career in software testing can be rewarding for individuals interested in technology and quality assurance. There are opportunities for growth, including specializing in a particular area, such as automation testing or performance testing, or moving into management positions.

If you are interested in technology and enjoy problem-solving, a career in software testing may
be the right fit for you. Certainly! Here is some advice on how to start a career in software testing:

Introduction to Software Testing

Software testing is a critical part of software development, ensuring that software applications work as intended and meet user requirements. Software testing is a process of evaluating and verifying a software application or system to check whether it meets the specified requirements and performs as expected. The main goal of software testing is to identify defects or bugs in the software and ensure that the software is functional, reliable, and meets user expectations.
There are different types of software testing, and the approach used depends on the specific requirements and goals of the project.

Different Roles of a Software Tester

a. Functional Testing: Functional testing is a type of software testing that verifies whether the software application’s functionality works as intended and meets the specified requirements. It checks the software’s functionality against the requirements and specifications. It verifies that the software performs as expected in different scenarios.

Testing software functionality includes focusing on testing techniques, exploratory and adhoc testing and requires testers to also acquire domain knowledge for their sofwtare.

b. Non-Functional Testing: Non-functional testing is a type of software testing that evaluates the software application’s non-functional aspects, such as performance, reliability, scalability, usability, security, and compatibility. Non-functional testing evaluates how well the software meets non-functional requirements, such as speed, responsiveness, and user experience.

c. Test Automation: This includes focusing on automating aspects of test execution, test data creation and reporting that can help in saving time and improves efficiency by automating repetitive tasks. A test automation expert has knowledge of automation concepts, specialises in tools and CI/CD aspects of testing phases and resources.

Tips to help you start a career in software testing

Gain a powerful foundation in software testing concepts

To become a successful software tester, you need a solid understanding of software testing concepts, such as testing types, methods, and tools. You can begin by reading books on software testing or taking online courses to build your knowledge. Some popular books on software testing include “Software Testing: A Craftsman’s Approach” by Paul C. Jorgensen, “How to Break Software: A Practical Guide to Testing” by James A. Whittaker, “Software Testing Techniques” by Boris Beizer, “The Art of Software Testing” by Glenford J. Myers, and “Testing Computer Software” by Cem Kaner, Jack Falk, and Hung Q. Nguyen.

Obtain a relevant degree

While a degree is not a requirement for becoming a software tester, having a degree in computer science, engineering, or a related field can be advantageous in landing a job in software testing. A degree can demonstrate your understanding of software development and computer programming, which can be useful in testing software applications.

Build practical experience

Practical experience is critical in software testing. You can gain experience by participating in open-source projects, contributing to software development efforts, or testing applications in a volunteer or part-time capacity. This experience can also help you develop your testing skills and build a portfolio to showcase your work.

Learn automation testing tools

Automation testing tools have become an essential part of software testing, and learning them can be beneficial in your career. Popular automation testing tools include Selenium, JMeter, and Appium. Familiarizing yourself with these tools can help you become more efficient in testing software applications and make you a more valuable candidate in the job market.

Seek certification

Consider obtaining a certification such as ISTQB (International Software Testing Qualifications Board) or CSTE (Certified Software Tester). Certification can help validate your skills and experience to potential employers and demonstrate your commitment to the profession. Certification can also provide you with a competitive advantage when applying for software testing jobs.

Network with other software testers

Networking is essential in any profession, including software testing. Attend software testing conferences, join online communities, or participate in forums to connect with other software testers. Networking can help you learn about job opportunities, share knowledge, and gain insights from industry experts.

Apply for entry-level jobs

Look for entry-level software testing jobs such as software tester, quality assurance analyst, or test engineer. These roles can provide you with on-the-job training and help you gain experience in real-world testing scenarios. Entry-level jobs can also help you build your skills, gain exposure to various testing tools and methodologies, and advance your career. Refer to manual testing interview questions for ideas and prepare for entry-level jobs.

Conclusion

In conclusion, starting a career in software testing requires persistence, continuous learning, and a strong desire to learn and grow. The software testing career path can be rewarding and challenging. As technology evolves, so too does the role of software testing. By building your skills and experience, obtaining certifications, and networking with other software testers, you can position yourself for a successful career in software testing.

It is important to continually learn and stay up-to-date with new testing methodologies, tools, and technologies. Additionally, developing strong communication and collaboration skills will help you work effectively with developers, project managers, and other stakeholders.

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

<Image Credits- unsplash.com>

<This is a guest post by Kuldeep Rana who is the founder and lead author of ArtOfTesting. He is skilled in test automation, performance testing, big data, and CI-CD. He brings his decade of experience to his current role where he is dedicated to educating the QA professionals.>


I am speaking at WomenTech Global Conference 2023

I am super excited to announce that I will be speaking at my Second WomenTech NetworkGlobal Conference – The last one was in 2021 and now in May this year!
I am grateful for this amazing opportunity and looking forward to the grand event!

Here are the details of my session:

Session: Testing for Speed to Market

The software world is constantly under pressure of ‘speed to market’, which impacts each stage of software development. Software testing is not left untouched by this constant hustle and hence has every reason to evolve and adapt! Testers look outwards for priorities, collaboration and transparency; while they look inwards to reimagine processes, templatise lightweight documentation and recreate their own way of life in the testing world! Let us discuss ways we can plan, strategise and conduct software testing that befits this fast pace of software delivery and upholds the quality standards the market demands.

Key Takeaways

  • Testing under pressure of ‘speed to market’
  • Adapting software test planning and strategy to the fast pace of software delivery
  • Relooking at test prioritization
  • Optimizing test processes and creating lightweight documentation
  • The role of cross-functional communication & collaboration in agile software delivery

Register for the event here

See you there,

Cheers!

My experience as a Panel speaker @LeadDev webinar

I was invited by @LeadDev organisation to be a part of a webinar where we had a panel discussion on “Building a better testing culture“. I was elated to be a part of this great group pf panelists alongside Thayse Onofrio from Thoughtworks and Marcus Merrell from Saucelabs. We had a spirited and interesting discussion and shared some meaningful ideas on the topic. I would also like to thank our host Amanda Sopkin for her really on-the-nail questions and for directing the conversation, and our organiser Olivia Christian for inviting me and for her support throughout the event!

The webinar panel was live, lasted for 45 minutes and then we had some time for Q&A. There were some great questions and discussions over the LeadDev slack channel as well.

Here is a bit more insight into the event-

The world of software testing is changing under the pressure of ‘speed to market’. The pressure to quickly get products to market means we are starting to see a significant shift towards automated tests during development. This will likely cause socio-technical complexities for orgs and teams currently involved in testing.

In order to be successful through these changes, orgs will need to have a clear strategy and processes in place that will ensure testing is a vital part of the delivery process. In this new age of testing, how can engineering leaders prevent pitfalls such as friction between teams, a culture of blame, and outdated processes?

In this panel, we examined how shift affects traditional testing set-ups, covering what a healthy testing culture looks like and how to avoid the anti-patterns that lead to uncommunicative teams and project bottlenecks. We explored how engineering teams can best work together and how to encourage a shared vision of quality and the importance of efficient and effective tests.

Key takeaways

  • Define clear roles and responsibilities for quality and testing in your org 
  • Encourage QA to be seen as necessary, rather than inhibiting release times 
  • Understand which tests to automate, and which to not

About LeadDev

LeadDev is a community of software engineering leaders that come together to learn and get inspired on all things team, tech, process, and personal development. 

LeadDev has become an essential destination for anyone in tech and engineering who wants to scale themselves and create impact. They provide a range of content that includes articles, thematic content series, video talks and panel discussions, written and delivered by the best voices in engineering.You can register a free LeadDev.com account to gain access to our free engineering leadership content, free online events and our weekly email newsletter. 

I am Speaking @ LeadDev Webinar Panel – Dec 14th

I am super glad to announce that I have been invited by the LeadDev team as a Panel speaker in the upcoming Webinar on “Building a better Testing culture”

The webinar will be held on 14th December at 10.15 PM IST. Details for registration can be found here https://leaddev.com/events/building-better-testing-culture

I am thrilled to be a part of this amazing group of panelists and chat about building amazing teams and a great team culture in this new age of testing. We will be covering what a healthy testing culture looks like and how to avoid the anti-patterns that lead to uncommunicative teams and project bottlenecks!

To top it all, this is a free event!! So, you can register a free LeadDev.com account to secure your place. Not only this, your account will give you access to our free engineering leadership content, free online events and our weekly email newsletter. 

Register here now to attend this awesome event and become a part of this amazing LeadDev Community!

See you there!

How to create a document outlining your Test Strategy?

With the software revolution, all excellent project managers know that if you hasten into the testing process, that particular project is considered to face a lot of issues. 

Working with the best test management software and its particular strategy planned before testing starts is essential because software becomes more complicated with more sequences of code to evaluate. 

Without a definite outline to develop, the QA team might not be sure what their duties are, what type of testing should be performed first and how the project’s progress is being determined.

The initial action to developing a test plan is to understand what you are attempting to perform with the testing strategy document as it will change software testing strategies. 

According to this post created by TatvaSoft experts, the purpose of a test plan is to describe the complete scope of the QA method from both a comprehensive and granular standard. 

Let’s take a look at one of their sections and understand why they consider that having a Test Plan for every business is beneficial— 

A Test Plan is a thorough document that outlines the test strategy, objectives, timeline, estimation, deliverables, and resources needed to execute software testing. The Test Plan assists us in determining the amount of work required to confirm the quality of the application being tested. The test plan is a blueprint for conducting software testing operations as a well-defined procedure that is meticulously documented. Read More 

The software testing approach helps to create a test plan as it is one of the most essential aspects of the complete testing process, as it describes accurately what the testing team requires to succeed and how to proceed to achieve those aims. Test Strategy is a crucial part of the Test Plan.

The task of writing a whole document test strategy from start may seem daunting, especially for bigger projects. If QA managers need a systematic approach to this responsibility, however, they’ll discover that planning and compiling an efficient and comprehensive test strategy isn’t so hard.

Here are a few tips for your team’s benefit-

Steps To Create A Test Plan Using Best Test Strategies!

Understand the product or feature you’re testing

We will begin with one of the essential aspects of software testing strategy, which is having a broad knowledge of the product or feature before you begin developing a test plan for it. 

For instance, let’s assume you’ve just worked over a website redesign and need to test it before you launch it in the market. For that, you will require to know these below-mentioned factors: 

  • Discuss with the designer and developer to know the extent, goals, and functionality of the website.
  • Review the project documentation which is developed by the project manager that includes SOW, project plan, and the responsibilities in the project management tool.
  • Conduct a product examination to know the functionality, user movement, and defects.

This action provides you with the setting to write a good test strategy document, purposes and begin to plan out the sources you’ll require to create it.

Define the test objectives and their criteria

As you describe every other test you’re continuing to work on, you are required to apprehend when your test is “finished.” 

This implies establishing the pass and fail standards for each particular test, and some of the information we can discuss, such as departure and delay criteria.

To perform this, you’ll need to recognise different system metrics that you’re monitoring and select what progress means for them. 

For instance, if you were working on a performance test you need these measures to succeed:

  • Response time: Complete time to forward a request and receive a response.
  • Average load time: Average time it needs to address all requests.
  • Peak response time: The most extended time it needs to complete a request.
  • Wait time: It is the duration it needs to get the first byte after a demand is sent.
  • Requests per second: The number of requests it can manage during that one second.
  • Events passed/failed: The whole number of passed or failed requests.

Don’t worry you can proceed with testing and repeating forever. So you are required to determine what’s best for your software out and in the palms of users.

Plan the test environment

The outcomes of your test plan always depend on the point you’re testing as well as the environment you’re testing it in. 

As a component of the test strategy document scope, you are required to decide what hardware, software, operating system, and tool compounds you’re running to test.

This is a condition where it pays to be particular. For instance, if you’re going to define an operating system to be utilised throughout the test plan, specify the OS edition/version rather than just mentioning the name.

Define Test Objective

Test Objective is the complete purpose and performance of the test execution. The purpose of the testing is to discover as many software errors as possible; guarantee that the software during the test is bug-free before release.

To determine the test purposes, you need to perform these 2 steps:

  • Record all the software features such as functionality, appearance, and GUI that may require testing.
  • Determine the purpose or the object of the test according to features

Use these steps to get the test goal of your testing project

Also, you can use the ‘TOP-DOWN’ approach to discover the website’s features that may require testing. In this process, you break down the app following the test to component and sub-component.

Conclusion

The test strategy document provides a definite concept of what the test team will perform for the entire project. It is a latent document that means it won’t fluctuate during the project life cycle. 

The one who prepares this document must have enough expertise in the product field, as this is the record that is running to manage the complete team, and it won’t fluctuate during the project. 

Test strategy documents need to be distributed to the complete testing team before the testing ventures start.

<This is a guest post by Matthew Jones – who is a tech enthusiast. and he likes to share his bylines.>

How to Decide if You Should Automate a Test Case

Test automation is imperative for the fast-paced agile projects of today. Testers need to continuously plan, design and execute automated tests to ensure the quality of the software. But the most important task is to decide what to automate first.

In my article published on the TestRail Quality Hub, I have compiled & shared a list of questions to help you prioritise what you should automate next and guide your test automation strategy.

Here is a checklist of questions to ask yourself as you decide on automating a Test Case–

*******

Is the test going to be repeated?

Is it a high-priority feature? 

Do you need to run the test with multiple datasets or paths? 

Is it a Regression or Smoke Test?

Does this automation lie within the feasibility of your chosen test automation tool?

Is the area of your app that this is testing prone to change?

Is it a Random Negative Test?

Can these tests be executed in parallel, or only in sequential order?

Are you doing it only for the reports?

********

For the detailed explanation of each of these points, read the complete article here –>

Are your Test cases really effective?

Test teams are forever designing and adding new tests, running them, and reporting results. But is your test team creating tests that are effective at finding real problems?

How do you know if your tests are actually working, and not just adding to the ever-increasing test count?

In my article published on the Testrail blog site, I discuss some ways you can gauge the effectiveness of your tests — and improve them.

Defects Found

The top and most obvious indicator of the effectiveness of your test cases is the defects you find when executing them. As you and your team execute the designed test cases, constantly ask yourself these questions:

  • Are these tests guiding me toward defects?
  • Am I finding problems with the predefined test cases? Or do I have to do more exploration before even getting close to a problem?
  • Are these tests exercising unique flows or use paths?

Metrics

You can also look at your defect lists and find related test cases for the defect logged (if you have that ability in your defect management system). This interlinking helps the team understand what test cases led to the issues found.

You can then further analyze whether that test case was created during test design or later added to the list when the issue was found.

Exploration

If your test cases are not effective, you will not find any useful bugs in test execution. That will mean most of your time is spent in unplanned exploration or ad hoc testing. So, by looking at the time spent in actual test execution versus the time spent on ad hoc testing, you can figure out the effectiveness of the test cases you designed.

If your test cases are effective, you will find issues, explore more use paths, navigate through different integrations with other features, and test different aspects of the same functionality.

If at the end of your test execution, you feel that you have not done all of that, you can infer that is because your test cases might be too simplistic or obvious, and therefore not effective enough to find any useful bugs.

History

Continue Reading here–>