This page explains how to set up Clover's Test Optimization feature in the IDEA development environment.

このページの内容

開始する前に

Before using Test Optimization with Clover-for-IDEA, be aware of the following.

Launching Test Optimization

To establish Test Optimization in Clover-for-IDEA, carry out one of the following actions:

Screen shot: launching a build with test optimization from the context menu


 

Screenshot: Launching a Build with Test Optimization from the Drop-Down Menu

Measuring Test Optimization Results

When optimized tests are being run, Clover displays additional information about it.

After Optimized tests run, Clover saves a snapshot file with coverage information that is used to optimize the following test runs. This file may be deleted using the Delete Snapshot icon in the Clover tool bar. The Delete Snapshot icon is invisible when the project does not have the snapshot file. Test Optimization would run all tests (no optimization) when the snapshot file is deleted or absent.

Test Optimization Settings

The list below shows the settings available for Test Optimization.

Setting Global Preferences

Screenshot: Setting Global Preferences

These are global (IDE-scope) preferences of Test Optimization where it is defined how Clover notifies about empty test runs, i.e. ones that have all tests optimized out.

Setting Per-launcher Preferences

Screenshot: Running Optimized Configurations

Test Optimization specific configuration options for specific JUnit configurations.
The defaults copied to new configurations may be set using Edit Defaults button.

Configurations Unsuitable For Test Optimization

Some configurations are not suitable for Test Optimization. Please see the following points for specific details.

Limitations with Test Suites

Clover does not recognise test suites as entities that should be optimized away. As the result test suites are always run (never optimized).
If your test launch configuration includes both test suite and the test case (which is probably an incorrect configuration), then the test case would be run twice (normal behavior) or once (via test suite) when the test case is optimized away.

Resolution: Do not include test suites in launch configuration, add test cases directly.

For more information, see this JIRA issue: CIJ-249.

 

Limitation with test methods

Due to bug CLOV-1084, in case when you execute optimized run and next add new test method to a class, such class will be always executed in next optimized runs. In order to fix it, you have to delete optimization snapshot (see button in tool bar menu).

トラブルシューティング

To troubleshoot Test Optimization in Clover-for-IDEA, check through the following solutions:

  1. If Clover is disabled for the project or generally Clover does not work for the project;
  2. If Clover has the test source settings wrong;
  3. If your test case is run twice, or not optimized at all;

 


Next chapter: 9. IDEA Advanced topics.