Exploring Test Estimation, TestOps, & Test Agility
QA industry is progressing at a very fast pace and therefore it has become extremely necessary for testers to align with changing industry trends. More than techniques, if it is something that has changed the QA industry, it is the varying approach and perspectives.
And when it comes to building the technology of the future, it becomes necessary to understand every perspective that hits the tech world. At BugRaptors, we constantly aim at nurturing our relationships with clients as well as fellow QA communities with the objective to yield high-performing and consistent solutions.
With this thought of uniting the QA community, our experts at BugRaptors constantly keeps on approaching testers and QA experts from around the world. This time, our in-house expert, Kanika Vatsyayan, VP, Delivery & Operations, had a conversation with JeanAnn Harrison.
JeanAnn is presently working as a principal test engineer at Progenity, Inc. With a highly dynamic and rich experience of more than 25 years, JeanAnn has shared her significant efforts in the testing and QA field. During her entire career, she has worked on diverse QA initiatives for varying industry verticals.
During the interview, our expert, Kanika asked several questions to JeanAnn related to her industry experience. Right from the moment, she started her journey into the Quality Assurance services to all the information related to test estimation and executing test cases, let us jump on to explore her opinion.
Kanika: Who influenced you to get into the software testing field?
Jean: My mentor who was originally my manager while working as a Tech Support person. I was providing Tech Support for an automated test tool that worked on the OS/2 operating system but had Windows, Mac and mainframe clients which allowed testers to create their automated tests using the software I was supporting. My manager at the time was a director of engineering as a whole and he would take time to explain to me more about testing techniques which I drank in his teachings. I was very lucky to have him as a mentor.
Kanika: What are some of the challenges you faced when you first started out?
Jean: Learning new technologies, where those technologies were new to me. The challenges included learning Perl, Unix command line commands, working with business analysts who wrote the requirements that I was to test on a multi-tiered system and understanding how each portion I was required to test affected another piece affecting the company’s usage.
Kanika: How to get started in testing when you do not have any previous experience?
Jean: Read blogs, read what testers write on Twitter, on LinkedIn and other social media applications. To find these types of things, I suggest getting on Twitter and searching for “testers” to see what they write/post. The testing community is very active on Twitter, follow testers and their followers too. You will find loads of suggestions on Twitter. Post questions on Twitter, LinkedIn and other social media applications. Ask directly, ask in general but utilize the hashtag (#) to gain a wider audience. Engage in conversations with testers to learn terminology, to learn about new ideas and allow their responses to inspire you with ideas. Understand that testing is not a profession, it’s a craft and one which requires practice and creativity.
Kanika: What are those kinds of challenges that you think people should be thinking about when it comes to agility?
Jean: Be open to suggestions. This means to intelligently listen to other points of view, pay attention to other ideas. What I like to say to new testers, to practice the question, “What if I did this, what would happen?” This question should then be applied everywhere in your life. The more you practice asking this question, the better you’ll become better at the most necessary skill for creating/designing tests. The key for a tester should do is to understand the concepts of the application and really the entire system under test, then come up with theories of what is needed to be tested, talk to developers and especially to other stakeholders of the expectations of a tested product. Do not focus only on testing the GUI of the application, learn the different types of tests, i.e., performance testing, decision tables, foundry testing, exploratory testing, error recovery testing and more. Once you understand the concepts, you will have a stronger arsenal to create tests. Finally, do not hesitate to ask questions about not only how the application under test is supposed to work but also asking questions about what is the intent of the design.
Kanika: Have you been involved in test estimation and how do you do it?
Jean: Yes, I have been involved in providing estimates of when I believe the testing activities would be complete. Testing activities include assessing if requirements/user/stories and acceptance criteria are testable, documenting the planned testing activities, creating tests to be done prior to actually implementing those tests; documenting those tests, documenting test results with perhaps writing up a test summary report to stakeholders to show what was tested. Also, a tester is required to spend time writing up anomalies (bugs/problems/issues) of their findings which affects the overall testing activities.
The only way a person can really become accurate in their estimation is to practice testing the system while thoroughly understanding design before development begins. Estimation is one of the most difficult testing skills to learn. The best advice I can give is to practice. Learn and work closely with the developers.
Kanika: How fast should one execute test cases?
There is no specific value that can answer this question. Some tests require an effort of a setup of conditions to execute that test. Some setups require different conditions which also require time and the execution of these tests can vary with regard to a time value. When a tester provides estimates, they need to include set up a time with each test. Finally, as a tester, Testers need and must communicate with their stakeholders the time the tester will require to test. With that said, some stakeholders will not like the tester’s answer of estimation. This is where the discussion of risks, what risks are acceptable and which are not, priorities are then defined for the tests of execution to meet stakeholders’ expectations. Testers should never make the decisions regarding how fast to execute a series of tests but rather work with the stakeholders to understand their expectations and their priorities. This will help the tester to come up with a plan to meet those expectations.
Kanika: How do you prioritize when you have so many tasks?
Jean: As stated in the previous answer, I focus on working with the stakeholders, I want to know what their priorities are for the particular project. Once priorities are communicated from the stakeholders to the testers, the testers then are tasked to come up with an achievable test plan, test strategy to meet the stakeholders' priorities. Testers must establish what risks are recognized, provide mitigation plans and communicate to the stakeholders to allow a team effort decision on tests to implement.
Kanika: How can organizations leverage TestOps for better release?
Jean: In my opinion, it is to take a Risk-based Test Approach and assess the impact of risks to be realized. Risks and mitigations of those risks are determined, it is a team effort to direct testers to what will be achieved within the time allotment.
We hope the session has helped you explore the TestOps concept in detail with much more interesting insights on the challenges and pain points so involved.
In case you still have any queries related to advanced software testing or automation techniques, you can reach JeanAnn Harrison at LinkedIn Profile
or, just in case, you need some expert hand to help you with your software testing services, feel free to reach our team through email@example.com
Stay tuned for more interesting updates.