anchor.diff:  
   The simplest way to add integration tests to your build is by taking these steps:
   
  - 1. Create a new source set for them
  + 1. Create a new <<sec:java_source_sets,source set>> for them
    2. Add the dependencies you need to the appropriate configurations for that source set
    3. Configure the compilation and runtime classpaths for that source set
    4. Create a task to run the integration tests
   
   You may also need to perform some additional configuration depending on what form the integration tests take. We will discuss those as we go.
   
  -Let's start with a practical example that implements the first three steps in a build script, centred around a new source set `intTest`:
  +Let's start with a practical example that implements the first three steps in a build script, centered around a new source set `intTest`:
   
   ++++
   <sample id="practicalIntegTest" dir="userguide/java/basic" title="Setting up working integration tests">
  
positive.code:  * Makes the `intTestImplementation` configuration extend from `implementation`, which means that all the declared dependencies of the production code also become dependencies of the integration tests
   * Does the same for the `intTestRuntimeOnly` configuration
  
  In most cases, you want your integration tests to have access to the classes under test, which is why we ensure that those are included on the compilation and runtime classpaths. But certain types of test interact with an application as an executable or via HTTP for web applications. There is no need in those cases to add the production classes to the tests' classpaths.
  
  Another common step is to attach all the unit test dependencies to the integration tests as well — via `intTestImplementation.extendsFrom testImplementation` — but that only makes sense if the integration tests require _all_ or nearly all the same dependencies that the unit tests have.
  
  
negative.code: 
  This excludes the `test` task and any other task that it _exclusively_ depends on, i.e. no other task depends on the same task. Those tasks will not be marked "SKIPPED" by Gradle, but will simply not appear in the list of tasks executed.
  
  Skipping a test via the build script can be done a few ways. One common approach is to make test execution conditional via the api:org.gradle.api.Task#onlyIf(org.gradle.api.specs.Spec)[] method. The following sample skips the `test` task if the project has a property called `mySkipTests`:
  
  ++++
  <sample id="skipTestsInBuildScript" dir="userguide/java/basic" title="Skipping the unit tests based on a project property">
  