Test data management framework

Source: Internet
Author: User

?

Sven borghers and WIM demey both last 30 years.TestExperience. Recently, they have all worked as test consultants at CTG in Belgium to help customers solve their testing challenges. They recently developed a test data management framework in the CTG lab.

Sven borghers is a testing consultant with extensive experience in all aspects of testing. He has performed different tests for multiple times, including test analysis, defect management, and test coordination. Test data management, test process improvement, and implementation of test methods have contributed. In addition to his consultant work, he is also a very respected trainer and mentor because of his experience and real life examples. Sven is also the promoter of stbox (experience-based software testing)-CTG's proven testing method.
Wim demey is a versatile testing consultant who has held various roles with the ambition to learn new things. This allows Wim to perform operations globally, just as it explores (technical) details at the lowest level with the customer and project team. He has been a spokesman for domestic and international conferences/seminars over the years, and has also written articles in international test magazines. He also created a blog: infrastructuretesting.wordpress.com.

?

If all testers share a common problem, it is probably to manage their test data. No matter what role you play in the test or what type of tester you are, it is quite difficult to make your test data correct. I have already done many projects in different fields. We conclude that there is no separate project.SolutionYou can manage test data. In fact, there is not even such a separate test data management problem. The reason is simple: test data should meet your (based on factors such as your business, rules, structure, and availability environment) specific test requirements. Therefore, from the perspective of test data management, none of the two situations are the same.

  How do you manage test data?
Tests are performed under pressure because iterative development models are used more frequently and the change time is decreasing. As a result, the appropriate time available for your test data is under pressure, and the demand for proper test data management is constantly increasing. On the other hand, we noticed that in our daily work, more and more companies are looking for ways to solve their test data management problems. However, on the other hand, we have to realize that when we accept this challenge, we have nothing to do. We cannot turn to a file program that covers all aspects of test data management. Nor can we use a test data management tool to deal with all aspects of test data management. This is not possible because this process or tool does not exist. At most existing processes and tools only cover some test data management problems. Then, the next question is: "How to narrow this gap ?" Can we create an instrument to manage test data as a whole, regardless of accuracy? Or, in other words, can we create a tool that is specific enough to actually help us solve the test data management problem and is applied to any (TEST) project at the same time?
We have determined that finding a general solution is not desirable. So we thought that we should not find a solution at the beginning, but should try to focus on how to better understand the test data management problems at hand. Ideally, you can come up with a step-by-step solution to design and implement the established test data management problems.
The idea of creating a test data management framework was born. Because the framework is not clearly limited to any specific test data management solution, it should apply to any given situation.

  Detailed description of the test data management framework
The test data management framework must contain two parts. One part records the requirements of a development organization for testing data management, and the other part creates a roadmap for testing data management practices that meet those requirements. Figure 1 lists the elements of the test data management framework.

Figure 1. Detailed description of the test data management framework

The first part of the test data management framework is the requirement framework. It consists of a series of requirements for test data management, and allows you to prove and introduce the needs of an organization for managing test data accurately. The second part of the test data management framework is called the promotion cycle. It consists of a periodic, step-by-step method for designing and implementing test data management improvements. The two parts of the framework work closely together. The demand framework allows you to determine the current test data management practices and preferences. The upgrade cycle allows you to design and implement test data management improvements that can lead to the expected situation. Or, vice versa. When a test data management improvement is introduced, the requirement framework can evaluate the improvement result.
More specifically, the test data management framework includes three sub-frameworks.
? The requirement framework clearly distinguishes the actual needs of the test data and the actual requirements for managing the test data. This generates two sub-frameworks.
? The sub-framework of test data requirements focuses on the characteristics of test data. It is represented by a general method of testing data. Relatively, the sub-framework of the test data management requirements once again focuses on how to manage the test data in a common way.
? Finally, the sub-framework of the test data management promotion cycle depends on how an organization determines its current test data management practices. It looks forward to (in the future) test data management practices and a line chart. Next, let's talk about each sub-framework in detail.

  Borrow "sales channel" Description
We will use a hypothetical "sales channel" application to describe the test data management framework and consider the following assumptions:
? The customer resides in a sql2008r2 database, and the opportunity and employee reside in an oracle11g database.

Figure 2. Data Model of "sales channel application"

? Number of current records in the production table
? Customer: 1000
? Opportunity: 6700
? Employee: 60
? In the past, the "sales channel" test may cause a major issue of customer data privacy, management determines that all customer data must be hidden when it is selected from the production environment and added to any development or test environment.

  Test data requirements
The sub-framework of test data requirements focuses on the characteristics of test data. It includes four sub-frameworks that explain the requirements that appropriate test data should follow. The requirement framework briefly lists some basic usage (testing) the project is also the key universal test data requirement of the testing data requirement sub-framework. General test data requirements provide guidance for evaluating the testing data requirements of an organization. Some requirements may not apply to certain situations. If so, they are easily ignored. If not, they should be implemented by the test data management solution to be designed. Define frameworks, quality frameworks, and rules frameworks to provide more in-depth information on the quality and rules and standards that should be followed by different types of existing test data and test data. They provide the background information required to interpret the general test data requirements in the requirement framework.

Figure 3. Sub-framework of test data requirements

Test data management is a complex task and many different test data policies can be developed to meet the test data requirements. It takes too much time to develop a separate test data policy for each (TEST) data requirement associated with the (TEST) project at hand. Therefore, we hope to select a test data policy for a larger (TEST) Data Group. In this way, we need a mechanism to define (TEST) data groups that can be treated in the same way. The definition framework or test data classification system provides this mechanism and is based on the following three aspects:
? Test data features (such as test data type, production similarity, consistency, uniformity, and quantity)
? Testing objectives (Component testing, system testing, and Acceptance Testing)
? Test Environment (DTaP Mode)

  Borrow "sales channel" Description
For a unit test, developers only need some records from each table (for example, 10 employees, 100 opportunities, and 100 customers) to fully overwrite the code. But for testingPerformanceThe environment must be similar to production, which means copying all tables in a special environment. Acceptance Test business, test data (for example, foreign customers, opportunities in different States (opened/closed), employees in different countries) it is also important to include all different types of information. Regardless of the test environment, consistent test data means that you cannot select only one table to obtain data. In our example, customers and employees are associated with opportunities, so all the records in these tables will be selected. Finally, creating test data in each (TEST) project is an important activity. A separate test case cannot be executed without proper test data.
But then there is a problem. What is appropriate test data? When is the quality of testing data sufficient? Quality Framework. In the Framework, when the test data meets the following requirements, we feel that the test data is suitable for testing purposes (and is of high quality ):
? Test data meets the general data quality attributes (such as accuracy, integrity, accessibility, etc.) that apply to your company)
? Test data coverage test requirements
? Test data reflects real-life data
Every company needs to process the data they process securely. According to the law, personal data must be protected and not unintentionally used. Non-personal data considered confidential should not be leaked. No matter what the initial purpose of this responsibility is (international legislation or simply for the benefit of itself), the company suffers a considerable amount of harm from exposed sensitive data. The Rules Framework answers how to manage test data (and test environment) to meet the security requirements of related test data. Ideally, this policy can be part of the company's security policy, test policy, or quality policy.

  Borrow "sales channel" Description
You can use three methods to hide customer data as required:
? Messing up pattern-based company names (for example, replacing features with X or Y)
? Replace sensitive data with non-chaotic but fictitious data (such as John tester, teststreet 10 in 1000 testland)
? Add any number of places like East Street
? Replace the existing quantity with your own data based on the computing program

  Test data management requirements
The sub-framework of test data management needs to explain how to manage test data. Its structure is similar to the sub-framework of test data requirements. It also contains four sub-frameworks. The requirement framework similarly lists some general test data management requirements. The process framework, organizational framework, and infrastructure framework each provide more in-depth information on typical management aspects (processes, people, and technologies) specifically used to test the data management background. They provide the background information needed to interpret the requirements framework to communicate with test data management needs.

Figure 4. Sub-framework of test data management requirements

Managing Your test data must be included in your entire test process. Therefore, the process framework simplifies the entire process and test data lifecycles (definition, establishment, use, and purification) of different test activities executed in it ). From a management perspective, this ensures that the test data management activities are executed at the appropriate time. Containing test data also makes it easier to define the appropriate responsibilities for test data management activities. The organizational framework enlarges these responsibilities. Different methods for organizing test data management responsibilities are developed within the framework. There are different types of organizations, ranging from each tester responsible for their own test data to a central test data unit that provides the test data service. The infrastructure framework focuses on the technical aspects of your test data management activities. It provides an overview of test data management tools and how they support you. Within the infrastructure framework, the definition of a test data management tool is widely used. Not only dedicated test data management tools, but alsoAutomated testing toolsOther useful tools can be considered here.

  Borrow "sales channel" Description
To prepare the test environment at the appropriate time, a section is added to the test policy containing a template. The test Manager has to use his specific test data requirements to complete this module. The DBA team is solely responsible for creating Subsets and transferring their operations to the environment shown in the module. In addition, the DBA checks whether the requirement conflicts with the data that has been presented in the environment and/or other test data requirements. This step is added to make test data preparation more efficient.

  Test data management upgrade cycle
The sub-framework of the test data management promotion cycle evaluates the current test data management practices to design future practices based on the line chart. The sub-Framework defines an important cycle that contains six consecutive steps. Each promotion cycle goes through these six steps and the first step is "generate consciousness ". This is a general method for improving data management. For example, it only describes the steps used but does not actually tell you what to improve.

Figure 5. Sub-framework of test data management promotion cycle

1. Generate awareness
This step is to identify and define opportunities for improving test data management. Increasing the demand for testing data management practices should make all stakeholders clear at a glance. Stakeholders should also agree to test the data management framework as a reference model for use.

2. Evaluate the current test data management practices
Use the test data management framework as a reference model to analyze current test data management practices. This determines the advantages and disadvantages of the current practice. The reason for the determination is that it has been studied and associated with the opportunities identified in the test process improvement.

3. define future test data management improvements
This step mainly determines the desired state of the test data management practice in the future. The promotion goal is set and the solution for achieving the promotion goal is also set.

4. Define the route for upgrading
A strategy has been designed to achieve these goals and implement the solution identified in the previous step. The resources are set up, and the action plan is also set up.

5. Implementation
Now the upgraded route map has been executed. The identified improvements and solutions have been implemented. The test personnel have been trained and the pilot project has officially started. In short, the new test data management practices have been put into use and fixed in the company's enterprise.

6. Evaluation
Last but not least, an improvement has been evaluated. Whether the goal is achieved or whether the implemented solution is well performed is proved. If the stakeholders are satisfied with the results, the improvement of test data management can be stopped here. Otherwise, a new approach can be developed in the test data management escalation cycle. The results of the evaluation steps are used to generate new ideas.

  Borrow "sales channel" Description
When multiple testers test each other in the same environment, there is a risk of using each other's test data. That is to say, additional test data must be created that affects/delays test execution. This can be avoided and improved by using some rules.
? Add the tester's initial letter as the prefix of the test data (for example, employee) so that anyone who can use the test data can see it clearly.
? Separate test data available to different testers (for example, all UK customer data is used by tester A and all Dutch customer data is used by tester B)
? Select and extract the additional share of all required test data (for example, 10%) to save.

  Summary
The test data management framework helps any testing expert or project manager who is willing to handle test data management problems. Do not stare at a common test data management solution (which we don't think can be found, the test data management framework provides a method to understand an organization's test data management needs and to design and implement the correct solutions for these needs. Since the framework does not aim to find a common solution, it can be widely used to help anyone involved in testing data management.

  Notes
[1] This data mode is based on the sample template in MS Access 2010.
[2] Test Data Policy: You manage (add test data to the test environment, integrate test data for next use, remove test data from the test environment, and maintain test data) test data to meet the requirements of the test data.

Copyright: This article from spasvo zezhong Software Testing Network: http://www.spasvo.com/news/html/2014815102720.html

For original works, you must use hyperlinks to indicate the original source, author information, and statement of this Article. Otherwise, you will be held legally liable.

 

?

Test data management framework

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.