How the New Features in Harness Continuous Integration Fit in Your Environment
Let’s take a closer look at how the new Harness Continuous Integration Cache Intelligence, Testing Intelligence, and Hosted Builds features work and how they can fit into your environment.
Harness recently added new features to the Harness Continuous Integration (CI) module that are designed to deliver the fastest CI builds available in the market. Two of these features are Cache Intelligence and new enhanced Test Intelligence™, which now has Test Parallelism and Automatic Splitting of tests based on test timing data. Let’s take a closer look at how these features work and how they can fit into your environment.
Improve Performance and Accelerate the Build Process
With some CI tools, users have to download and cache common objects before every build is kicked off. This process is a performance killer and it must be performed manually for every repo. So if you have 50 repos that require 50 manual downloads, that’s a strain on developers and it slows down the build process dramatically.
With Harness CI, the app automatically scans languages and code and caches all common objects before the build happens. This automation removes the need to download or manually interact with each repo. If you’ve got multiple repositories, multiply the time savings by the number of repos you’ve got. Harness CI uses automation to speed up builds, without taxing developers.
Accelerate Unit Test Cycles
We’ve had a few questions recently along the lines of: Will the enhanced Harness CI Test Intelligence help speed up unit testing in my build architecture? The short answer is yes.
To give a brief overview, Test Intelligence — which now includes Test Parallelism and Automatic Splitting of tests based on test timing data — analyzes the code and recommends only the necessary unit tests that provide coverage for the changes in the code. No matter what your build architecture looks like, Harness’ new, enhanced Test Intelligence can help you speed up unit test cycles.
If your build environment has:
- A central source control management (SCM) solution and a pull request or code check-in kicks off parallel builds and pipelines then you can run Test Intelligence:
- During the initial code check-in at the central SCM
- Against changes in subsequent build or pipeline environments. Test Intelligence will run new tests in this case.
- Multiple SCM solutions or code repos that consolidate into a single build pipeline, then you can run Test Intelligence:
- Against each SCM before artifacts reach the build pipeline. Test Intelligence will use ML to determine which tests are required. In this type of build architecture, performance is critical because builds are queueing at a single pipeline. See below for how Harness Hosted Builds can help optimize performance.
- Multiple SCMs leading to multiple build pipelines, then you can run Test Intelligence:
- As a step against each repo. Code analysis capabilities helps reduce the number of test to run. Test Splitting provides the ability to run tests in parallel, which speeds up the execution even more.
So in short, the Test Intelligence feature is run as a step within the software build - anywhere, regardless of what your build environment looks like. So you can run Test Intelligence on each code repository if you have multiple repositories, during initial code check-in at the source control management (SCM) solutionand on each SCM before artifacts reach the pipeline.
In all cases, Harness CI’s exclusive, ML-powered Test Intelligence feature delivers even more time savings now with the addition of test concurrency, which splits the necessary tests so that they can be run simultaneously. Test Intelligence determines which subset of tests are necessary and provides visibility into which tests were selected and why. After the required tests are identified, these tests are run concurrently to further accelerate build time without compromising quality. Test Intelligence reduces build cycles by up to 90%, so developers are no longer wasting valuable time waiting around for builds to finish.
Optimizing Performance with Hosted Builds
One way to optimize performance even more is by taking advantage of Harness CI hosted builds. Available as a fully managed cloud service offering, Harness CI hosted builds provide high availability plus built-in backup and recovery to ensure business continuity.
Using Hosted Builds, you can achieve four times the speed of the nearest competitive hosted build offerings. Plus, Harness manages the testing queue for you, resulting in optimized performance and less toil for developers. Finally, Hosted Builds support parallelism with the tests identified by Test Intelligence, providing optimization before artifacts get to a single pipeline queue.
Try Harness CI Now
The Harness CI Cache Intelligence and enhanced Test Intelligence features, along with Hosted Builds, are industry-leading innovations in a market that hasn’t seen a ton of technical improvements in a while. We’re excited to show you how these features will speed up the build process, simplify release cycles and reduce the burden on developers.
See for yourself just how fast Harness CI can be. Get started with a free trial today.