The Pitfalls of Changing the System Clock, Software Virtual Clocks Have Come to the Rescue

SANTA CLARA, CA Tuesday, August 13, 2021 at 12:00 PM EDT

Topic:

Many applications have date and time sensitive logic, such as month-end, quarter-end, year-end processing, billing cycles, change date regulations, deadlines, and expiration dates. To test them, applications and databases need to time travel to target dates to confirm if the logic of the application are performed correctly.

Challenge:

The traditional way is changing the system clocks on applications and database servers to the target date. This is a time consuming operation where testers may need to wait for hours or days per date change for administrators to shut down and restart databases and applications, then change the system clocks (as most testers don't have administrative privileges to do so). Since changing the system clock is a manual operation, it also breaks test automation whenever time travel needs to be performed.

The system clock affects all programs and users on the system and they time travel together to the same date. On a powerful system, like Exadata, hundreds of applications can be running at the same time. Changing the system clock means many other users/testers cannot perform their work and need to be idle if one application needs to time travel to a different date. Since there is only one system clock per system, no concurrent testing of different dates is possible. Testing different dates on different applications may mean multiple costly standalone environments need to be built.

Also, changing the system clock is not allowed in a secure environment, such as Active Directory or Kerberos. If the system clock is adjusted by even just five minutes away from the domain server's system clock, a security token cannot be generated and the authentication would fail. No testing is possible if users can't log in to the domain due to the changing of system clocks.

Lastly, SSL certificates have a valid date range built in and the authentication would fail if the systems checking the certificate are outside of the valid date range due to the changing of the system clock. The remedy is for the IT security team to re-generate those SSL certificates for the testing systems. This can be a frequent and tedious event to keep up with the testing schedule as an out-of-bound SSL certificate would invalidate the whole test run. Additionally, it is a challenge to generate the right SSL certificate if users need to time travel multiple years to the past or the future. Some enterprises also have extremely strict security policies where generating different SSL certificates other than the production systems SSL certificates are not allowed.

Solution:

Software virtual clocks came to the rescue. Software virtual clock can target different groups, users, and processes with multiple virtual times. Software virtual clocks enable developers and testers to "self-serve" time travel by themselves instantaneously, without the need to wait for an infrastructure team to shut down/restart and change the system clocks. Databases and applications would see the virtual clock immediately and then shut down and restart as needed. This would make developers and testers much more productive and save them hours or days per time change. It also relieves the infrastructure team of working overtime hours and gives them more time to work on other tasks.

When incorporating software virtual clocks into a test script, 100% test automation can be accomplished. The regression test can run through thousands of test cases via multiple virtual clocks by itself without human intervention.

Software virtual clocks also enable parallel testing of different target dates on the same test environment. Different testers can test different virtual clocks against the same or different applications independently. Just like one physical server can serve multiple virtual servers, one test environment can become multiple test environments running different virtual clocks. Significant hardware and software costs can be saved and productivity can be boosted this way.

Software virtual clocks also thrive in secure environments, such as Active Directory and Kerberos. It allows Security Systems to continue to see the system time, so it can authenticate normally and successfully while allowing databases and applications to see the virtual time.

Similarly to let the Secure System see the system time, a software virtual clock can also let the SSL certificate library see the system time. As a result, databases and applications can time travel with a virtual clock; while SSL certificate checking would be successful.

Software virtual clocks also have a unique capability that is not possible with a system clock. Clock speed is one such unique capability because a virtual clock can also run faster or slower. It opens up special usage cases that were not possible before. For example, a five-physical day simulation or reliability test can be done it one virtual day with a virtual clock that is 5 times faster. On the other hand, testers can stay on the same virtual day for multiple physical days with a slower virtual clock.

We continue to enhance our Time Machine® suite of products. The SSL certificate exclusion is our latest enhancement, which our customers strongly requested.

CLICK HERE FOR A FREE TRIAL

About Time Machine:

Software Virtual Clocks for Time Travel Testing. Simulate past and future dates effortlessly with Time Machine®, enabling comprehensive testing of your date- and time-sensitive applications. Ideal for validating critical business processes like quarter-end and year-end processing, billing cycles, regulatory compliance (including Year 2038), and policy lifecycles during integration, upgrades, virtualization, cloud migration, and containerization. Eliminate the risks and downtime associated with system clock resets in complex environments like Active Directory and Kerberos.

About Solution-Soft:

The Leader in Virtual Clock and Time Travel Testing Solutions

Since 1997, Solution-Soft has been at the forefront of virtual clock software and time travel testing solutions, empowering organizations in the ever-evolving digital world. Our flagship product, Time Machine, has revolutionized application testing, enabling thousands of companies, including 47 of the Fortune 100 US companies, to reduce costs and accelerate project delivery by an average of 3 – 10 times across traditional systems and containerized applications.

The Time Machine Product Suite extends these capabilities, optimizing cloud migration, test automation, Agile/DevOps, and containerization testing. Our latest innovation, Time Machine for Containers, supports standalone Docker containers and large-scale Kubernetes and OpenShift clusters (including a 16,000+ CPU core, 1,300+ namespace deployments).

Trusted by over 2,000 customers worldwide across diverse industries (including 3M, AMEX, BBC, Boeing, and more) and partnered with industry leaders like Accenture, IBM, Microsoft, Oracle, and Red Hat, Solution-Soft, founded in 1993 and headquartered in Santa Clara, CA, provides cutting-edge solutions for your time-sensitive testing needs. Learn more at www.solution-soft.com or call +1.408.346.1400.

© Copyright 1993-2025 Solution-Soft and Time Machine are registered trademarks of SolutionSoft Systems, Inc. All product names, logos, and brands are property of their respective owners.