Pre-Production as the basis for test data procurement

Best-Practice: Test data procurement
in the context of continuous software development (PART 1/3)

Due to the massive increase in data-driven business models (from data-enhanced to pure data-driven business models), IT, and, in particular, software development play a central role in the provisioning of products and thus in business success. The relevant software must be regularly adapted to the changing requirements of the market and kept up to date with the latest technology. Therefore, continuous development has become a permanent task.

If a lot of software is developed, a lot must be tested, because no software should be used without being tested first. UBS Hainer is focused on this area of software testing, specializing in tools for the procurement of test data. The following is an overview of best practice with regard to obtaining optimized test data for software testing.

 

PART 1 – Pre-Production as the basis for test data procurement

Baseline: Release management determines the schedule and guidelines by which productive applications are further developed, improved or adapted to new requirements. Today, this is a continuous development process. 

Of course, every change to an application must be tested. And this is not done in the live production, but in a test environment instead. Developers need suitable test data for these tests. In practice, when several developers share a test environment and use the same test data, this can quickly lead to problems.

The mutual influence of tests and the corruption and falsification of test data can lead to ineffective and unsuccessful testing. This scenario still exists today in an astonishing number of companies. 

Requirements: The integrity of the test data should not be damaged by parallel use. Otherwise, the quality of the tests suffers. Software testing also needs to ensure that newly added or modified functions do not interfere with or even eliminate existing features.

Therefore, quality assurance requires:

  • Realistic data that is as close as possible to production.
  • Specific test case data that is suitable for testing the new functions.

 

How can this challenge be met? Which approach is best practice today?

Pre-production as the basis: The landscape of a production system usually consists of various applications and databases that are often distributed across different platforms and architectures. To ensure that the new release is subsequently able to handle the production data, it is recommended to use a consistent copy of the production system as the basis for the data.

This copy of the real production is usually called pre-production. The critical process of producing a time consistent and technical consistent database can be accomplished by using this pre-production. Pre-production can also represent the separation between anonymized and non-anonymized data in the test data provisioning process. Centralized and consistent masking can be performed at this point before using the data in the test process. 

 

Fig – The production system (PROD) is copied 1:1. The resulting pre-production (PRE-PROD) provides a realistic data basis for the development environment (DEV) and the tests (TEST).

However, a precondition for realistic data is that this database is replaced frequently with current production data. For example, if it is automatically updated weekly, daily or nightly, it can serve as a data source for all testing and development tasks. All processes associated with this regular updating can be configured and automated.

Conclusion: 

The realistic test data required for continuous testing is obtained by copying the current production and making it available as a database. If this so-called pre-production is regularly updated, applications can be realistically tested at any time without affecting live operation.

CURRENT POSTS

TDM Solution – Make or Buy?

The TOP5 ARGUMENTS why developing your own test data management solution is no longer profitable today. TDM has become a complex issue. For this reason, there are experts today who offer mature TDM solutions to the market

Read more »

Test data procurement – Three basic options

In the process of software development, tests need to be performed repeatedly. Depending on the stage of development, various test data, from individual test case data to bulk data, is required. There are three basic options for obtaining this test data: The manual creation of test data, the creation of synthetic test data and the conversion of productive data into test data

Read more »

Bulk data for system and release tests

Best-Practice: Test data procurement in the context of continuous software development (PART 3/3). Before the new or modified applications go live, system, release, load or performance tests are applied. For this purpose, no fine-grained customized test case data is needed, but production-related data in larger quantities is required. These tests are

Read more »

Customized test case data for functional, component and regression testing

Best-Practice: Test data procurement in the context of continuous software development (PART 2/3). The further development of an application usually means that different features or even bug fixes need to be implemented. Ideally, each feature gets its own environment. This environment contains only the relevant data for that particular case.

Read more »

Green light for automated
Test Data Management

Take advantage of our free initial consultation to quickly and easily determine your optimal and individual options!

Green traffic light