Application Configuration Testing

Last updated by Mike Baukes on August 2, 2016

Application Configuration Acceptance Testing - Huh?

Business enterprise systems are not what they used to be. Today's network has many different applications, integrated hardware, and devices that access the Configuration Management Database (CMDB), each with its own Application Life-cycle Management (ALM) requirements. Additionally, most networks have a variety of hardware and devices, across which all Software Development Life-Cycle (SDLC) processes need to be tested. But the manual testing of this type of enterprise environment becomes extremely complicated, time consuming, very costly, and can easily cause configuration drift. There are just too many aspects involved in the network environment for manual script testing to be effective.

What Is the Solution Then?

Because hardware, device, and software compatibility issues are involved when implementing a new configuration, it may be virtually impossible to run a full manual script testing process. When this happens, some type of automated configuration acceptance testing should be implemented before releasing the new configuration into the network system.

The Current Status

Server performance has certainly improved over the years, but the basic infrastructure is still the same; there is one server managing several applications and a variety of different devices. These configuration factors may be controllable with one server, but when the network involves several servers, applications, workstations, and devices, this management system causes several issues for network admins, especially for those still performing manual testing, or worse yet, no configuration testing at all.

The following are among the most proliferate of issues faced by network admins:

- Separate management centers - implementing CMDB across different centers is challenging and time consuming; even more so when the only testing available is manual configuration testing.

- Enterprise continuity issues - admins need to keep servers up all the time, so any configuration mishap could have serious consequences.

- System inefficiencies - slowdowns can occur as a result of inconsistent server management and poor application management processes.

The Solution

To solve the issues associated with new configuration implementation, the CMDB center infrastructure must be redefined; it must be developed to offer improved time management and better organization of all the resources. An IT manager obtains this by better organizing the IT department and by implementing automated system configuration testing software such as Puppet, Chef or UpGuard; in doing so, an IT manager can offer enterprise solutions that save substantially on time and operational costs.

To improve the enterprise network and ultimately the configuration implementation process, an IT admin manager needs to understand the system fully and each member of the IT team must have a defined role. This way, the management of the network is organized and successful.

The Importance of Automated Testing

New device and software technology in enterprise systems requires the integration of different applications, with various support systems from different devices, which can produce interoperability issues. The consequences of implementing even a simple upgrade without proper testing procedures can cause configuration management issues, system lags, and inefficiencies. Each step of any configuration process needs to be validated and pass configuration acceptance to ensure it functions correctly across all platforms and with all implemented network Software Development Life Cycle (SDLC) management processes.

Automatic testing procedures are crucial to any additions, configurations, hardware implementations, or changes made to the network. These prevent down times, slowdowns, and errors from occurring within the server network. Even with automatic testing applications like Chef, Puppet or UpGuard in place, new configuration implementations need to be planned and phased in carefully.

When each member of the IT team is given certain responsibilities, put in charge of certain tasks of the phased implementation process, these new configuration additions are added more efficiently. They save time and keep the network running optimally, thereby reducing network issues, downtime, and risks.

The Importance of Phasing in the Configuration

A phased-in configuration reduces risk and offers safer testing options, especially now that computer technology evolves at such a fast rate, and when integration standards differ from one day to the next. This automated testing process informs you of potential dangers, software incompatibilities, and newer hardware components your network may need. These are factors you may not know about when you only do basic manual testing of new configurations. Therefore new network configuration acceptance protocol recommends the following phase testing before fully implementing a new configuration.

Test-Phase Process

- Assign key functions to specific staff members: Network admins know better than anyone that specific technical skills are needed to run a network efficiently. Consequently, you should assign specific tasks to key IT staff members. These include planning, data management, analysis, operations, and system administration tasks.

- Careful planning: Every new configuration addition needs to be thought out and organized. A system design team should be assigned to review the SDLC of the new configuration and make a decision as to its efficacy based on the overall enterprise workflow requirements.

Initial testing phase: Once approved, critical hardware and unit testing for infrastructure must be applied. When all systems pass this critical testing phase then a final system implementation can be planned. At this point, the admin can make qualified new hardware or software solution suggestions to support the new configuration addition.

Production phase: When the pilot phase is accepted and new hardware and software adjustments are made, the initial production phase can be deployed. Again, if issues arise from the automated testing procedure, then the technical solutions that had been arrived at during the pilot test phase can be immediately offered, therefore preventing any future configuration drift. the technical solutions that had been arrived at during the pilot test phase can be immediately offered.

The Bottom Line

It is the IT manager's job to develop the network infrastructure at the same rate as newer technology and devices are being integrated into the ITIL. These new practices should then be directed towards the workflow of specific needs. It is undesirable to avoid performing product upgrades and important configuration implementation processes either. This is not the answer! Instead, one should adopt the use of automated testing applications to test configurations thoroughly. This keeps the network working efficiently across the entire infrastructure.

Follow UpGuard on Twitter