Test Management Training 1Table of ContentsOpening RemarksIntroduction to Test ManagementTest Management in Agile versus SDLCTest Management ObjectivesUnderstanding the Process of Test ManagementBenefitsChallengesTest Management ToolsRisk AssessmentTest Management Tool CategoriesJIRA Test ManagementALM Test ManagementSelecting Testing ToolsEvaluationModule Video Resources
Section 1Opening RemarksThe objective of this training module is to train you in the art of managing testing resources. In test management, usually a test manager or team lead can closely organize, oversee, analyze, and track the testing activities. But the tool is made available to all project members. So, it is necessary that you understand how test management works. If you’re not yet familiar with the role test management plays on a test project, this training is here to help. By the end of this training, every student should have a much better understanding of the automated and manual test management process. It is my expectation that you are familiarized with the processes to contribute on a test project with some level of skill. The primary benefit of this training is for test analysts who need to know how to handle test activities on a software test project. This module includes lectures, a lab session, and a homework assignment. It is expected you will find benefit from all methods that we use to disseminate training information. I feel the need to remind you how we will provide you with information on the front-end. But we won’t stop at that. At the back end when you have completed this training, you will be provided with access to training videos that will continue to support you with ever-green knowledge about the topics of this course. Introduction to Test ManagementTest Management is an oversight process that involves the coordination of all testing activities, including test planning, design, execution, bug tracking, test case development, status reporting, and closure. Effective test management helps to ensure that testing is monitored and completed efficiently and effectively, and that the final product meets the quality standards expected by stakeholders. Test management can be implemented manually or with an automation tool. When a development project is small and testing requirements are simple, doing this process manually is adequate. But if there is complexity, such as resources in multiple locations and test requirements not simple, test management should employ the use of an automation tool. The manual approach to test management can usually be handled with some manual tools like MS Word, Excel, and PowerPoint. The test plan can easily be written using Word. The test case development and bug management can easily be managed with Excel. And then any reporting can be shared using a tool like PowerPoint slide presentation. But test management software has come to the forefront. Two popular tools that is widely used in the market are JIRA and ALM. Large companies gravitate to ALM while smaller companies engage JIRA. Both tools have their version of test management features and functionality. A test plan can be entered and kept evergreen. Test cases can be entered and scheduled for execution processing. As test cases are executed it provides support for capturing status data to pass or fail test steps. If defects are encountered, it allows defect entry and follow-up tracking until the defect is closed or deferred. The test management functions allow for reporting support. Of course, it keeps a history of what happened, and some data can be reused for another round of testing. Test Management in Agile versus SDLCTest Management should be considered the same in all SDLC models. However, what is different is scope and duration. Normally with SDLC the test phase is end-to-end. Once testing begins it is continued until all test events are completed. However, with Agile the scope and duration changes from iteration to the next. The iteration is a 2-to-4-week span to cover a function or component of an application. So, the scope is much smaller. Therefore, the scope of test cases is much reduced and thus the time it takes to complete is shorter. With Agile it is very likely a test scenario is the scope of the testing. So, the number of test cases is low. The amount of time it takes to complete is low. Reporting and bug tracking should be significantly lower in comparison to SDLC. Test management can be approached differently in Agile and other SDLC methodologies. In Agile, testing is an integral part of the development process and occurs continuously throughout the development lifecycle. In SDLC, testing is typically performed after the development phase is complete and before the product is released to the market. In both Agile and SDLC, test management involves the coordination of all testing activities, including test planning, design, execution, and closure. The key difference between the two approaches is the focus and timing of testing activities. With SDLC there may be four iterative phases of testing back-to-back. Integration, system, regression, and acceptance testing phases are likely. Meanwhile Agile reduces the testing to regression testing as part of a CI/CD automated process unless manual testing is requested. Test Management ObjectivesTest management is the process of planning, coordinating, and controlling testing activities. Test management involves the use of various tools to ensure that testing is conducted efficiently and effectively. In this training module, we will explore the key concepts of test management and the tools used in the process. The Learning Objectives are:
Understanding the Process of Test ManagementTest management involves defining the testing objectives, identifying the scope of testing, defining test plans and strategies, selecting appropriate testing tools, managing the testing resources, tracking, and reporting testing progress, and ensuring that defects are identified and resolved. Manual application – Test Management often is the oversight of test plan entry, test scheduling, bug reporting, the logging of test results, test tracking, incident management and test status reporting. It typically includes the process of drafting test plan components, and development of test cases. Automation application – automated test management is accomplished using a software tool for all the processes mentioned for the manual application. The great benefit of using a tool is intranet or internet access to all test management data. Popular tools in this space are ALM and JIRA. But there are many others, both open source and commercially licensed. The general goal of test management is to allow teams to plan, develop, execute, and assess all testing activities within the overall application development effort. BenefitsFollowing Test Management practices is very beneficial to the development project and the test project. Effective test management can provide several benefits to the testing process, which include:
Risk assessment or evaluation is the process of three actions: risk identification, risk analysis, and risk mitigation. When a test team is doing planning, this is one element that should be included in the test plan. Ask the question, “What are potential risks to successful testing?”. Testing can pose risks to the development project, the test project, and test resources. Consider the following grouping of possible risks, and then think about questions to ask to identify potential risks:
ChallengesTest management involves several challenges that can impact the quality and effectiveness of testing. Some of the key challenges in test management include:
Test Management ToolsTest management tools are not the same as test case management tools. The latter is focused on automating the process of developing test cases with steps and executing them. While that is good, it is not the scope of test management. Test management tools have a broader scope which is to support all the test plan components including entry, update, coverage analysis, and reporting. One manual test management process that is still not supported well in a tool is risk assessment. Before I jump into talking about risk assessment, I want to mention this. There are three types of risks to assess from a test project perspective:
Risk AssessmentRisk assessments are done on many projects. It is a valuable tool to have as a project is in its inception. This is no exception for a test project. You have several tools that can be critical to the success of the test project. Let me list a few: your test data, the database itself, the test environment, your test documents (plan, test scenarios, test cases, etc.), the team’s health and availability. It is imperative to do a risk assessment to have the team understand the potential risks your team faces with the project. The risk assessment document is not only intended to identify the potential risks, but to communicate what is in place or will be in place to mitigate or reduce the impact if the risk happens. The objective of mitigation is to lessen the impact or remove the impact. Looking at the column headings, let’s discuss meanings to ensure you understand what information is appropriate for each column. The risk ID can be a number or formatted alphanumeric identification. Of course, the risk description should clearly indicate the potential risk. Date of entry is the date this item was added to the document. Priority and Severity should have values Low, Medium, or High. For the priority column this indicates how important the risk is to address. The severity column indicates how much damage the risk can cause if not handled properly. Once the risk is analyzed taking the priority and severity into account, a proper mitigation can be specified. This can be a reference to some process already in place to minimize or eliminate the risk. Otherwise, this cell can be used to specify steps to take for mitigation. The status cell should be used to identify if follow-up is required. Enter “Good” if no follow-up is needed. Enter the assigned person’s name that will be assigned to resolve.
Test Management Tool CategoriesIt is necessary to divide the test management tools into three categories. If you are new to the automated test software, it can be confusing to hear about bug trackers, test management, and test case management tools. Be aware that there is often a connection between these tools. But it is helpful to understand the space they fit in, and which ones do integrate with each other.
Jira is the tool that integrates with so many other test management, case management, or bug tracking tools. This is what makes it in high demand. Whereas ALM is a powerful test management tool, it has not reached as many project sites as Jira. And ALM and Jira can integrate. I have listed here some tools that fit into the three categories. As you work on various test projects it is very likely that you will encounter these tools. You may even be asked to participate in tool evaluation activities to decide on tool selection. The course will expose you to ALM, Jira, QA Touch, and Zoho Bug Tracker. Having that knowledge will provide you with familiarity enough to be helpful on such a task. In the future when you hear about test management tools know that Test case management tools are that which help to manage and organize the test components like test cases, test plans, and test execution. Test case management tools help software testers to manage test cases and reduce the manual efforts to ensure thorough test coverage. On some projects there is only a need to manage defects. That is where investment in a bug tracking tool is sufficient. JIRA Test ManagementJIRA provides support for agile development methodologies such as Scrum and Kanban, which are commonly used in software testing. This enables teams to work more efficiently and effectively, by providing a flexible and adaptable framework for managing the testing process. JIRA is also a popular issue tracking and project management tool developed by Atlassian. While JIRA is primarily designed for managing software development projects, it also offers features and functions to support test management. Some of the key features and functions in JIRA that support test management are:
I have only had experience using JIRA for defect management. I used its capability for about a year only on one test project. It did not take long to grasp its features. ALM Test ManagementALM provides various features and functions to support test management, including test planning, test execution, defect management, traceability, reporting, metrics, and integration. This software is developed by Mercury Interactive but marketed now by OpenText who recently bought Micro Focus. Application Lifecycle Management (ALM) is a comprehensive set of processes, tools, and methods for managing the entire lifecycle of a software application, from requirements gathering to development, testing, deployment, and maintenance. Test management is an essential component of ALM, and ALM tools provide various features and functions to support test management. Some of these features and functions are:
ALM is a tool that has dominated the test market for years. It can be an expensive investment, but a tool that meets the challenge from project to project. I have worked with this tool on many projects since year 2000. I have been called upon several times to upgrade companies to new versions of the product. Some have waited until the upgrade was outside an easy migration path due to old technology issues. But I was able to upgrade the installation successfully but sometimes it took multiple days and nights to overcome the obstacles. The key is to never give up. Selecting Testing ToolsEvaluationSoftware evaluation is another form of testing. Try not to shy away from this kind of opportunity. It is the process of measuring the performance and utility of software. The purpose of software evaluation is to understand the value of the software being tested. Without going into a full lesson on the subject let me expound. Let me give you some measurements to use in evaluating software. But first you need to identify what you are looking for. What are some requirements you need fulfilled? Then here are the features to measure:
Now take those measures and assign a value of 1-10 for the software under test (SUT). Then decide what percentage is acceptable for you if you are just measuring one tool. If you are measuring multiple tools decide on what percentage is acceptable to designate a passing score. Be difficult. Don’t be too difficult. Maybe you should set the mark at 90% instead of 70%. Software evaluation testing does not have to be too hard and too long. But if the cost is significant, then you want to get some formal training with more in-depth measuring tools. This is not the end of this training module. Please click here to access section 2 of this module. |