Index: /trunk/test/functional/org/openstreetmap/josm/data/BoundariesTestIT.java
===================================================================
--- /trunk/test/functional/org/openstreetmap/josm/data/BoundariesTestIT.java	(revision 19222)
+++ /trunk/test/functional/org/openstreetmap/josm/data/BoundariesTestIT.java	(revision 19223)
@@ -17,4 +17,6 @@
 import org.openstreetmap.josm.io.OsmReader;
 import org.openstreetmap.josm.testutils.annotations.BasicPreferences;
+import org.openstreetmap.josm.testutils.annotations.FunctionalTest;
+import org.openstreetmap.josm.testutils.annotations.IntegrationTest;
 
 /**
@@ -22,4 +24,6 @@
  */
 @BasicPreferences
+@FunctionalTest
+@IntegrationTest
 class BoundariesTestIT {
 
Index: /trunk/test/functional/org/openstreetmap/josm/data/imagery/ImageryCompareTestIT.java
===================================================================
--- /trunk/test/functional/org/openstreetmap/josm/data/imagery/ImageryCompareTestIT.java	(revision 19222)
+++ /trunk/test/functional/org/openstreetmap/josm/data/imagery/ImageryCompareTestIT.java	(revision 19223)
@@ -10,4 +10,6 @@
 import org.openstreetmap.josm.spi.preferences.Config;
 import org.openstreetmap.josm.testutils.annotations.BasicPreferences;
+import org.openstreetmap.josm.testutils.annotations.FunctionalTest;
+import org.openstreetmap.josm.testutils.annotations.IntegrationTest;
 import org.openstreetmap.josm.tools.HttpClient;
 
@@ -17,4 +19,6 @@
  */
 @BasicPreferences
+@FunctionalTest
+@IntegrationTest
 @Timeout(60)
 class ImageryCompareTestIT {
Index: /trunk/test/functional/org/openstreetmap/josm/data/osm/TaginfoTestIT.java
===================================================================
--- /trunk/test/functional/org/openstreetmap/josm/data/osm/TaginfoTestIT.java	(revision 19222)
+++ /trunk/test/functional/org/openstreetmap/josm/data/osm/TaginfoTestIT.java	(revision 19223)
@@ -18,4 +18,5 @@
 import org.openstreetmap.josm.gui.tagging.presets.TaggingPresets;
 import org.openstreetmap.josm.testutils.annotations.BasicPreferences;
+import org.openstreetmap.josm.testutils.annotations.FunctionalTest;
 import org.openstreetmap.josm.testutils.annotations.Territories;
 import org.openstreetmap.josm.tools.HttpClient;
@@ -30,4 +31,5 @@
  */
 @BasicPreferences
+@FunctionalTest
 @Timeout(20)
 @Territories
Index: /trunk/test/functional/org/openstreetmap/josm/gui/GettingStartedTest.java
===================================================================
--- /trunk/test/functional/org/openstreetmap/josm/gui/GettingStartedTest.java	(revision 19222)
+++ /trunk/test/functional/org/openstreetmap/josm/gui/GettingStartedTest.java	(revision 19223)
@@ -8,8 +8,10 @@
 import org.junit.jupiter.api.Disabled;
 import org.junit.jupiter.api.Test;
+import org.openstreetmap.josm.testutils.annotations.FunctionalTest;
 
 /**
  * Tests the {@link GettingStarted} class.
  */
+@FunctionalTest
 class GettingStartedTest {
     /**
Index: /trunk/test/functional/org/openstreetmap/josm/gui/mappaint/MapCSSRendererTest.java
===================================================================
--- /trunk/test/functional/org/openstreetmap/josm/gui/mappaint/MapCSSRendererTest.java	(revision 19222)
+++ /trunk/test/functional/org/openstreetmap/josm/gui/mappaint/MapCSSRendererTest.java	(revision 19223)
@@ -34,4 +34,5 @@
 import org.openstreetmap.josm.io.OsmReader;
 import org.openstreetmap.josm.testutils.annotations.BasicPreferences;
+import org.openstreetmap.josm.testutils.annotations.FunctionalTest;
 import org.openstreetmap.josm.testutils.annotations.Projection;
 import org.openstreetmap.josm.tools.Utils;
@@ -44,4 +45,5 @@
  */
 @BasicPreferences
+@FunctionalTest
 @Projection
 public class MapCSSRendererTest {
Index: /trunk/test/functional/org/openstreetmap/josm/gui/mappaint/StyleCacheTest.java
===================================================================
--- /trunk/test/functional/org/openstreetmap/josm/gui/mappaint/StyleCacheTest.java	(revision 19222)
+++ /trunk/test/functional/org/openstreetmap/josm/gui/mappaint/StyleCacheTest.java	(revision 19223)
@@ -32,4 +32,5 @@
 import org.openstreetmap.josm.io.OsmReader;
 import org.openstreetmap.josm.testutils.annotations.BasicPreferences;
+import org.openstreetmap.josm.testutils.annotations.FunctionalTest;
 import org.openstreetmap.josm.testutils.annotations.Main;
 import org.openstreetmap.josm.testutils.annotations.Projection;
@@ -40,4 +41,5 @@
  */
 @BasicPreferences
+@FunctionalTest
 @Main
 @org.openstreetmap.josm.testutils.annotations.MapPaintStyles
Index: /trunk/test/functional/org/openstreetmap/josm/io/MultiFetchServerObjectReaderTest.java
===================================================================
--- /trunk/test/functional/org/openstreetmap/josm/io/MultiFetchServerObjectReaderTest.java	(revision 19222)
+++ /trunk/test/functional/org/openstreetmap/josm/io/MultiFetchServerObjectReaderTest.java	(revision 19223)
@@ -49,4 +49,5 @@
 import org.openstreetmap.josm.gui.progress.NullProgressMonitor;
 import org.openstreetmap.josm.gui.util.GuiHelper;
+import org.openstreetmap.josm.testutils.annotations.FunctionalTest;
 import org.openstreetmap.josm.testutils.annotations.TestUser;
 import org.openstreetmap.josm.tools.Logging;
@@ -57,4 +58,5 @@
  * Unit tests of {@link MultiFetchServerObjectReader}.
  */
+@FunctionalTest
 @SuppressFBWarnings(value = "CRLF_INJECTION_LOGS")
 @Timeout(value = 1, unit = TimeUnit.MINUTES)
Index: /trunk/test/functional/org/openstreetmap/josm/io/OsmServerBackreferenceReaderTest.java
===================================================================
--- /trunk/test/functional/org/openstreetmap/josm/io/OsmServerBackreferenceReaderTest.java	(revision 19222)
+++ /trunk/test/functional/org/openstreetmap/josm/io/OsmServerBackreferenceReaderTest.java	(revision 19223)
@@ -42,4 +42,5 @@
 import org.openstreetmap.josm.gui.progress.NullProgressMonitor;
 import org.openstreetmap.josm.spi.preferences.Config;
+import org.openstreetmap.josm.testutils.annotations.FunctionalTest;
 import org.openstreetmap.josm.testutils.annotations.TestUser;
 import org.openstreetmap.josm.tools.JosmRuntimeException;
@@ -52,4 +53,5 @@
  * @since 1806
  */
+@FunctionalTest
 @SuppressFBWarnings(value = "CRLF_INJECTION_LOGS")
 @org.openstreetmap.josm.testutils.annotations.OsmApi(org.openstreetmap.josm.testutils.annotations.OsmApi.APIType.DEV)
Index: /trunk/test/functional/org/openstreetmap/josm/io/UploadStrategySelectionPanelTest.java
===================================================================
--- /trunk/test/functional/org/openstreetmap/josm/io/UploadStrategySelectionPanelTest.java	(revision 19222)
+++ /trunk/test/functional/org/openstreetmap/josm/io/UploadStrategySelectionPanelTest.java	(revision 19223)
@@ -15,6 +15,8 @@
 import org.openstreetmap.josm.gui.io.UploadStrategySelectionPanel;
 import org.openstreetmap.josm.gui.progress.NullProgressMonitor;
+import org.openstreetmap.josm.testutils.annotations.FunctionalTest;
 import org.openstreetmap.josm.tools.Logging;
 
+@FunctionalTest
 @Disabled
 class UploadStrategySelectionPanelTest extends JFrame {
Index: /trunk/test/functional/org/openstreetmap/josm/tools/HttpClientTest.java
===================================================================
--- /trunk/test/functional/org/openstreetmap/josm/tools/HttpClientTest.java	(revision 19222)
+++ /trunk/test/functional/org/openstreetmap/josm/tools/HttpClientTest.java	(revision 19223)
@@ -50,4 +50,5 @@
 import org.openstreetmap.josm.testutils.annotations.BasicPreferences;
 import org.openstreetmap.josm.testutils.annotations.BasicWiremock;
+import org.openstreetmap.josm.testutils.annotations.FunctionalTest;
 import org.openstreetmap.josm.testutils.annotations.HTTP;
 import org.openstreetmap.josm.tools.HttpClient.Response;
@@ -65,4 +66,5 @@
 @BasicWiremock
 @BasicPreferences
+@FunctionalTest
 @Timeout(15)
 class HttpClientTest {
Index: /trunk/test/functional/org/openstreetmap/josm/tools/ImageProviderTest.java
===================================================================
--- /trunk/test/functional/org/openstreetmap/josm/tools/ImageProviderTest.java	(revision 19222)
+++ /trunk/test/functional/org/openstreetmap/josm/tools/ImageProviderTest.java	(revision 19223)
@@ -35,4 +35,5 @@
 import org.openstreetmap.josm.gui.tagging.presets.TaggingPresets;
 import org.openstreetmap.josm.gui.tagging.presets.items.Key;
+import org.openstreetmap.josm.testutils.annotations.FunctionalTest;
 import org.xml.sax.SAXException;
 
@@ -43,4 +44,5 @@
  * Unit tests of {@link ImageProvider} class.
  */
+@FunctionalTest
 class ImageProviderTest {
     private static final class LogHandler14319 extends Handler {
Index: /trunk/test/functional/org/openstreetmap/josm/tools/ImageProviderTestIT.java
===================================================================
--- /trunk/test/functional/org/openstreetmap/josm/tools/ImageProviderTestIT.java	(revision 19222)
+++ /trunk/test/functional/org/openstreetmap/josm/tools/ImageProviderTestIT.java	(revision 19223)
@@ -5,8 +5,12 @@
 
 import org.junit.jupiter.api.Test;
+import org.openstreetmap.josm.testutils.annotations.FunctionalTest;
+import org.openstreetmap.josm.testutils.annotations.IntegrationTest;
 
 /**
  * Integration tests of {@link ImageProvider} class.
  */
+@FunctionalTest
+@IntegrationTest
 class ImageProviderTestIT {
     /**
Index: /trunk/test/functional/org/openstreetmap/josm/tools/ImageProviderTestManual.java
===================================================================
--- /trunk/test/functional/org/openstreetmap/josm/tools/ImageProviderTestManual.java	(revision 19222)
+++ /trunk/test/functional/org/openstreetmap/josm/tools/ImageProviderTestManual.java	(revision 19223)
@@ -13,8 +13,10 @@
 import org.junit.jupiter.api.Disabled;
 import org.junit.jupiter.api.Test;
+import org.openstreetmap.josm.testutils.annotations.FunctionalTest;
 
 /**
  * Unit tests of {@link ImageProvider} class for manual execution.
  */
+@FunctionalTest
 class ImageProviderTestManual {
     /**
Index: /trunk/test/performance/org/openstreetmap/josm/data/osm/KeyValuePerformanceTest.java
===================================================================
--- /trunk/test/performance/org/openstreetmap/josm/data/osm/KeyValuePerformanceTest.java	(revision 19222)
+++ /trunk/test/performance/org/openstreetmap/josm/data/osm/KeyValuePerformanceTest.java	(revision 19223)
@@ -20,4 +20,5 @@
 import org.openstreetmap.josm.PerformanceTestUtils.PerformanceTestTimer;
 import org.openstreetmap.josm.data.osm.OsmDataGenerator.KeyValueDataGenerator;
+import org.openstreetmap.josm.testutils.annotations.PerformanceTest;
 import org.openstreetmap.josm.testutils.annotations.Projection;
 
@@ -28,4 +29,5 @@
  * @author Michael Zangl
  */
+@PerformanceTest
 @Projection
 @Timeout(value = 15, unit = TimeUnit.MINUTES)
Index: /trunk/test/performance/org/openstreetmap/josm/data/osm/RoundingPerformanceTest.java
===================================================================
--- /trunk/test/performance/org/openstreetmap/josm/data/osm/RoundingPerformanceTest.java	(revision 19222)
+++ /trunk/test/performance/org/openstreetmap/josm/data/osm/RoundingPerformanceTest.java	(revision 19223)
@@ -9,8 +9,10 @@
 
 import edu.umd.cs.findbugs.annotations.SuppressFBWarnings;
+import org.openstreetmap.josm.testutils.annotations.PerformanceTest;
 
 /**
  * Checks that rounding of coordinates is not too slow.
  */
+@PerformanceTest
 class RoundingPerformanceTest {
 
Index: /trunk/test/performance/org/openstreetmap/josm/data/osm/visitor/paint/AbstractMapRendererPerformanceTestParent.java
===================================================================
--- /trunk/test/performance/org/openstreetmap/josm/data/osm/visitor/paint/AbstractMapRendererPerformanceTestParent.java	(revision 19222)
+++ /trunk/test/performance/org/openstreetmap/josm/data/osm/visitor/paint/AbstractMapRendererPerformanceTestParent.java	(revision 19223)
@@ -24,4 +24,5 @@
 import org.openstreetmap.josm.io.Compression;
 import org.openstreetmap.josm.io.OsmReader;
+import org.openstreetmap.josm.testutils.annotations.PerformanceTest;
 import org.openstreetmap.josm.testutils.annotations.Projection;
 import org.openstreetmap.josm.testutils.annotations.Territories;
@@ -32,4 +33,5 @@
  * Abstract superclass of {@code StyledMapRendererPerformanceTest} and {@code WireframeMapRendererPerformanceTest}.
  */
+@PerformanceTest
 @Projection
 @Territories
Index: /trunk/test/performance/org/openstreetmap/josm/data/osm/visitor/paint/StyledMapRendererPerformanceTest.java
===================================================================
--- /trunk/test/performance/org/openstreetmap/josm/data/osm/visitor/paint/StyledMapRendererPerformanceTest.java	(revision 19222)
+++ /trunk/test/performance/org/openstreetmap/josm/data/osm/visitor/paint/StyledMapRendererPerformanceTest.java	(revision 19223)
@@ -12,8 +12,10 @@
 
 import edu.umd.cs.findbugs.annotations.SuppressFBWarnings;
+import org.openstreetmap.josm.testutils.annotations.PerformanceTest;
 
 /**
  * Performance test of {@code StyledMapRenderer}.
  */
+@PerformanceTest
 class StyledMapRendererPerformanceTest extends AbstractMapRendererPerformanceTestParent {
 
Index: /trunk/test/performance/org/openstreetmap/josm/data/osm/visitor/paint/WireframeMapRendererPerformanceTest.java
===================================================================
--- /trunk/test/performance/org/openstreetmap/josm/data/osm/visitor/paint/WireframeMapRendererPerformanceTest.java	(revision 19222)
+++ /trunk/test/performance/org/openstreetmap/josm/data/osm/visitor/paint/WireframeMapRendererPerformanceTest.java	(revision 19223)
@@ -4,8 +4,10 @@
 import org.junit.jupiter.api.AfterAll;
 import org.junit.jupiter.api.BeforeAll;
+import org.openstreetmap.josm.testutils.annotations.PerformanceTest;
 
 /**
  * Performance test of {@code WireframeMapRenderer}.
  */
+@PerformanceTest
 class WireframeMapRendererPerformanceTest extends AbstractMapRendererPerformanceTestParent {
 
Index: /trunk/test/performance/org/openstreetmap/josm/data/validation/ValidationTaskPerformanceTest.java
===================================================================
--- /trunk/test/performance/org/openstreetmap/josm/data/validation/ValidationTaskPerformanceTest.java	(revision 19222)
+++ /trunk/test/performance/org/openstreetmap/josm/data/validation/ValidationTaskPerformanceTest.java	(revision 19223)
@@ -18,4 +18,5 @@
 import org.openstreetmap.josm.gui.progress.NullProgressMonitor;
 import org.openstreetmap.josm.testutils.annotations.BasicPreferences;
+import org.openstreetmap.josm.testutils.annotations.PerformanceTest;
 import org.openstreetmap.josm.testutils.annotations.Projection;
 import org.openstreetmap.josm.testutils.annotations.Territories;
@@ -25,4 +26,5 @@
  */
 @BasicPreferences
+@PerformanceTest
 @Projection
 @Territories
Index: /trunk/test/performance/org/openstreetmap/josm/data/validation/tests/MapCSSTagCheckerPerformanceTest.java
===================================================================
--- /trunk/test/performance/org/openstreetmap/josm/data/validation/tests/MapCSSTagCheckerPerformanceTest.java	(revision 19222)
+++ /trunk/test/performance/org/openstreetmap/josm/data/validation/tests/MapCSSTagCheckerPerformanceTest.java	(revision 19223)
@@ -7,4 +7,5 @@
 import org.openstreetmap.josm.data.osm.DataSet;
 import org.openstreetmap.josm.testutils.annotations.BasicPreferences;
+import org.openstreetmap.josm.testutils.annotations.PerformanceTest;
 import org.openstreetmap.josm.testutils.annotations.Projection;
 import org.openstreetmap.josm.testutils.annotations.Territories;
@@ -14,4 +15,5 @@
  */
 @BasicPreferences
+@PerformanceTest
 @Projection
 @Territories
Index: /trunk/test/performance/org/openstreetmap/josm/gui/mappaint/MapRendererPerformanceTest.java
===================================================================
--- /trunk/test/performance/org/openstreetmap/josm/gui/mappaint/MapRendererPerformanceTest.java	(revision 19222)
+++ /trunk/test/performance/org/openstreetmap/josm/gui/mappaint/MapRendererPerformanceTest.java	(revision 19223)
@@ -46,4 +46,5 @@
 import org.openstreetmap.josm.testutils.annotations.BasicPreferences;
 import org.openstreetmap.josm.testutils.annotations.Main;
+import org.openstreetmap.josm.testutils.annotations.PerformanceTest;
 import org.openstreetmap.josm.testutils.annotations.Projection;
 import org.openstreetmap.josm.testutils.annotations.Territories;
@@ -56,4 +57,5 @@
 @BasicPreferences
 @Main
+@PerformanceTest
 @Projection
 @Territories
Index: /trunk/test/performance/org/openstreetmap/josm/gui/mappaint/mapcss/MapCSSConditionPerformanceTest.java
===================================================================
--- /trunk/test/performance/org/openstreetmap/josm/gui/mappaint/mapcss/MapCSSConditionPerformanceTest.java	(revision 19222)
+++ /trunk/test/performance/org/openstreetmap/josm/gui/mappaint/mapcss/MapCSSConditionPerformanceTest.java	(revision 19223)
@@ -7,4 +7,5 @@
 import org.openstreetmap.josm.PerformanceTestUtils;
 import org.openstreetmap.josm.gui.mappaint.mapcss.ConditionFactory.Op;
+import org.openstreetmap.josm.testutils.annotations.PerformanceTest;
 
 /**
@@ -12,4 +13,5 @@
  * @author Michael Zangl
  */
+@PerformanceTest
 class MapCSSConditionPerformanceTest {
     /**
Index: /trunk/test/performance/org/openstreetmap/josm/gui/mappaint/mapcss/MapCSSPerformanceTest.java
===================================================================
--- /trunk/test/performance/org/openstreetmap/josm/gui/mappaint/mapcss/MapCSSPerformanceTest.java	(revision 19222)
+++ /trunk/test/performance/org/openstreetmap/josm/gui/mappaint/mapcss/MapCSSPerformanceTest.java	(revision 19223)
@@ -20,4 +20,5 @@
 import org.openstreetmap.josm.gui.mappaint.MapRendererPerformanceTest;
 import org.openstreetmap.josm.io.IllegalDataException;
+import org.openstreetmap.josm.testutils.annotations.PerformanceTest;
 import org.openstreetmap.josm.testutils.annotations.Projection;
 
@@ -27,4 +28,5 @@
  *
  */
+@PerformanceTest
 @Projection
 class MapCSSPerformanceTest {
Index: /trunk/test/performance/org/openstreetmap/josm/gui/mappaint/mapcss/MapCSSStyleSourceFilterPerformanceTest.java
===================================================================
--- /trunk/test/performance/org/openstreetmap/josm/gui/mappaint/mapcss/MapCSSStyleSourceFilterPerformanceTest.java	(revision 19222)
+++ /trunk/test/performance/org/openstreetmap/josm/gui/mappaint/mapcss/MapCSSStyleSourceFilterPerformanceTest.java	(revision 19223)
@@ -11,4 +11,5 @@
 import org.openstreetmap.josm.data.osm.OsmDataGenerator.KeyValueDataGenerator;
 import org.openstreetmap.josm.gui.mappaint.MultiCascade;
+import org.openstreetmap.josm.testutils.annotations.PerformanceTest;
 import org.openstreetmap.josm.testutils.annotations.Projection;
 
@@ -17,4 +18,5 @@
  * @author Michael Zangl
  */
+@PerformanceTest
 @Projection
 @Timeout(value = 15, unit = TimeUnit.MINUTES)
Index: /trunk/test/performance/org/openstreetmap/josm/io/OsmReaderPerformanceTest.java
===================================================================
--- /trunk/test/performance/org/openstreetmap/josm/io/OsmReaderPerformanceTest.java	(revision 19222)
+++ /trunk/test/performance/org/openstreetmap/josm/io/OsmReaderPerformanceTest.java	(revision 19223)
@@ -17,4 +17,5 @@
 import org.openstreetmap.josm.PerformanceTestUtils.PerformanceTestTimer;
 import org.openstreetmap.josm.data.osm.DataSet;
+import org.openstreetmap.josm.testutils.annotations.PerformanceTest;
 
 /**
@@ -25,4 +26,5 @@
  * @author Michael Zangl
  */
+@PerformanceTest
 @Timeout(value = 15, unit = TimeUnit.MINUTES)
 class OsmReaderPerformanceTest {
Index: /trunk/test/performance/org/openstreetmap/josm/io/OsmWriterPerformanceTest.java
===================================================================
--- /trunk/test/performance/org/openstreetmap/josm/io/OsmWriterPerformanceTest.java	(revision 19222)
+++ /trunk/test/performance/org/openstreetmap/josm/io/OsmWriterPerformanceTest.java	(revision 19223)
@@ -12,4 +12,5 @@
 import org.openstreetmap.josm.PerformanceTestUtils.PerformanceTestTimer;
 import org.openstreetmap.josm.data.osm.DataSet;
+import org.openstreetmap.josm.testutils.annotations.PerformanceTest;
 
 /**
@@ -18,4 +19,5 @@
  * For this, we use the neubrandenburg-file, which is a good real world example of an OSM file.
  */
+@PerformanceTest
 @Timeout(value = 15, unit = TimeUnit.MINUTES)
 class OsmWriterPerformanceTest {
Index: /trunk/test/unit/org/openstreetmap/josm/data/validation/routines/DomainValidatorTestIT.java
===================================================================
--- /trunk/test/unit/org/openstreetmap/josm/data/validation/routines/DomainValidatorTestIT.java	(revision 19222)
+++ /trunk/test/unit/org/openstreetmap/josm/data/validation/routines/DomainValidatorTestIT.java	(revision 19223)
@@ -48,4 +48,5 @@
 import org.junit.jupiter.api.Test;
 import org.openstreetmap.josm.testutils.annotations.HTTPS;
+import org.openstreetmap.josm.testutils.annotations.IntegrationTest;
 import org.openstreetmap.josm.tools.Logging;
 
@@ -58,4 +59,5 @@
  */
 @HTTPS
+@IntegrationTest
 class DomainValidatorTestIT {
     /**
Index: /trunk/test/unit/org/openstreetmap/josm/gui/mappaint/mapcss/MapCSSParserTestIT.java
===================================================================
--- /trunk/test/unit/org/openstreetmap/josm/gui/mappaint/mapcss/MapCSSParserTestIT.java	(revision 19222)
+++ /trunk/test/unit/org/openstreetmap/josm/gui/mappaint/mapcss/MapCSSParserTestIT.java	(revision 19223)
@@ -6,4 +6,5 @@
 import org.openstreetmap.josm.gui.mappaint.mapcss.parsergen.MapCSSParser;
 import org.openstreetmap.josm.testutils.annotations.HTTPS;
+import org.openstreetmap.josm.testutils.annotations.IntegrationTest;
 import org.openstreetmap.josm.testutils.annotations.Projection;
 
@@ -13,4 +14,5 @@
 @HTTPS
 @Projection
+@IntegrationTest
 class MapCSSParserTestIT {
     /**
Index: /trunk/test/unit/org/openstreetmap/josm/gui/preferences/imagery/ImageryPreferenceTestIT.java
===================================================================
--- /trunk/test/unit/org/openstreetmap/josm/gui/preferences/imagery/ImageryPreferenceTestIT.java	(revision 19222)
+++ /trunk/test/unit/org/openstreetmap/josm/gui/preferences/imagery/ImageryPreferenceTestIT.java	(revision 19223)
@@ -68,4 +68,5 @@
 import org.openstreetmap.josm.testutils.annotations.HTTPS;
 import org.openstreetmap.josm.testutils.annotations.I18n;
+import org.openstreetmap.josm.testutils.annotations.IntegrationTest;
 import org.openstreetmap.josm.testutils.annotations.ProjectionNadGrids;
 import org.openstreetmap.josm.tools.HttpClient;
@@ -79,4 +80,5 @@
 @HTTPS
 @I18n
+@IntegrationTest
 @org.openstreetmap.josm.testutils.annotations.Projection
 @ProjectionNadGrids
Index: /trunk/test/unit/org/openstreetmap/josm/gui/preferences/map/MapPaintPreferenceTestIT.java
===================================================================
--- /trunk/test/unit/org/openstreetmap/josm/gui/preferences/map/MapPaintPreferenceTestIT.java	(revision 19222)
+++ /trunk/test/unit/org/openstreetmap/josm/gui/preferences/map/MapPaintPreferenceTestIT.java	(revision 19223)
@@ -27,4 +27,5 @@
 import org.openstreetmap.josm.gui.preferences.AbstractExtendedSourceEntryTestCase;
 import org.openstreetmap.josm.testutils.annotations.HTTPS;
+import org.openstreetmap.josm.testutils.annotations.IntegrationTest;
 import org.openstreetmap.josm.tools.ImageProvider;
 
@@ -33,4 +34,5 @@
  */
 @HTTPS
+@IntegrationTest
 @Timeout(value = 15, unit = TimeUnit.MINUTES)
 class MapPaintPreferenceTestIT extends AbstractExtendedSourceEntryTestCase {
Index: /trunk/test/unit/org/openstreetmap/josm/gui/preferences/map/TaggingPresetPreferenceTestIT.java
===================================================================
--- /trunk/test/unit/org/openstreetmap/josm/gui/preferences/map/TaggingPresetPreferenceTestIT.java	(revision 19222)
+++ /trunk/test/unit/org/openstreetmap/josm/gui/preferences/map/TaggingPresetPreferenceTestIT.java	(revision 19223)
@@ -39,4 +39,5 @@
 import org.openstreetmap.josm.spi.preferences.Config;
 import org.openstreetmap.josm.testutils.annotations.HTTPS;
+import org.openstreetmap.josm.testutils.annotations.IntegrationTest;
 import org.openstreetmap.josm.testutils.annotations.Territories;
 import org.openstreetmap.josm.tools.HttpClient;
@@ -51,4 +52,5 @@
  */
 @HTTPS
+@IntegrationTest
 @Territories
 @Timeout(value = 20, unit = TimeUnit.MINUTES)
Index: /trunk/test/unit/org/openstreetmap/josm/gui/preferences/validator/ValidatorTagCheckerRulesPreferenceTestIT.java
===================================================================
--- /trunk/test/unit/org/openstreetmap/josm/gui/preferences/validator/ValidatorTagCheckerRulesPreferenceTestIT.java	(revision 19222)
+++ /trunk/test/unit/org/openstreetmap/josm/gui/preferences/validator/ValidatorTagCheckerRulesPreferenceTestIT.java	(revision 19223)
@@ -25,4 +25,5 @@
 import org.openstreetmap.josm.gui.preferences.AbstractExtendedSourceEntryTestCase;
 import org.openstreetmap.josm.testutils.annotations.HTTPS;
+import org.openstreetmap.josm.testutils.annotations.IntegrationTest;
 
 /**
@@ -30,4 +31,5 @@
  */
 @HTTPS
+@IntegrationTest
 @Timeout(20)
 class ValidatorTagCheckerRulesPreferenceTestIT extends AbstractExtendedSourceEntryTestCase {
Index: /trunk/test/unit/org/openstreetmap/josm/io/CertificateAmendmentTestIT.java
===================================================================
--- /trunk/test/unit/org/openstreetmap/josm/io/CertificateAmendmentTestIT.java	(revision 19222)
+++ /trunk/test/unit/org/openstreetmap/josm/io/CertificateAmendmentTestIT.java	(revision 19223)
@@ -18,4 +18,5 @@
 import org.openstreetmap.josm.TestUtils;
 import org.openstreetmap.josm.testutils.annotations.HTTPS;
+import org.openstreetmap.josm.testutils.annotations.IntegrationTest;
 
 /**
@@ -23,4 +24,5 @@
  */
 @HTTPS
+@IntegrationTest
 @Timeout(20)
 class CertificateAmendmentTestIT {
Index: /trunk/test/unit/org/openstreetmap/josm/plugins/PluginHandlerTestIT.java
===================================================================
--- /trunk/test/unit/org/openstreetmap/josm/plugins/PluginHandlerTestIT.java	(revision 19222)
+++ /trunk/test/unit/org/openstreetmap/josm/plugins/PluginHandlerTestIT.java	(revision 19223)
@@ -42,4 +42,5 @@
 import org.openstreetmap.josm.testutils.annotations.BasicPreferences;
 import org.openstreetmap.josm.testutils.annotations.HTTPS;
+import org.openstreetmap.josm.testutils.annotations.IntegrationTest;
 import org.openstreetmap.josm.testutils.annotations.Main;
 import org.openstreetmap.josm.testutils.annotations.Plugins;
@@ -56,4 +57,5 @@
 @BasicPreferences
 @HTTPS
+@IntegrationTest
 @Main
 @Projection
Index: /trunk/test/unit/org/openstreetmap/josm/testutils/ImageTestUtils.java
===================================================================
--- /trunk/test/unit/org/openstreetmap/josm/testutils/ImageTestUtils.java	(revision 19222)
+++ /trunk/test/unit/org/openstreetmap/josm/testutils/ImageTestUtils.java	(revision 19223)
@@ -148,5 +148,5 @@
     public static void writeDebugImages(@Nonnull Path directory, @Nonnull String filePrefix, @Nonnull BufferedImage diff,
                                         @Nullable BufferedImage oldImage, @Nullable BufferedImage newImage) {
-        if (!UPDATE_ALL) {
+        if (!UPDATE_ALL && false) {
             return;
         }
Index: /trunk/test/unit/org/openstreetmap/josm/testutils/annotations/FunctionalTest.java
===================================================================
--- /trunk/test/unit/org/openstreetmap/josm/testutils/annotations/FunctionalTest.java	(revision 19223)
+++ /trunk/test/unit/org/openstreetmap/josm/testutils/annotations/FunctionalTest.java	(revision 19223)
@@ -0,0 +1,25 @@
+// License: GPL. For details, see LICENSE file.
+package org.openstreetmap.josm.testutils.annotations;
+
+import static java.lang.annotation.ElementType.METHOD;
+import static java.lang.annotation.ElementType.TYPE;
+import static java.lang.annotation.RetentionPolicy.RUNTIME;
+
+import java.lang.annotation.Documented;
+import java.lang.annotation.Inherited;
+import java.lang.annotation.Retention;
+import java.lang.annotation.Target;
+
+import org.junit.jupiter.api.Tag;
+
+/**
+ * Mark this test as a <a href="https://en.wikipedia.org/wiki/Functional_testing">Functional</a> test
+ * @author Taylor Smock
+ */
+@Inherited
+@Documented
+@Retention(RUNTIME)
+@Target({TYPE, METHOD})
+@Tag("FunctionalTest")
+public @interface FunctionalTest {
+}
Index: /trunk/test/unit/org/openstreetmap/josm/testutils/annotations/IntegrationTest.java
===================================================================
--- /trunk/test/unit/org/openstreetmap/josm/testutils/annotations/IntegrationTest.java	(revision 19223)
+++ /trunk/test/unit/org/openstreetmap/josm/testutils/annotations/IntegrationTest.java	(revision 19223)
@@ -0,0 +1,25 @@
+// License: GPL. For details, see LICENSE file.
+package org.openstreetmap.josm.testutils.annotations;
+
+import static java.lang.annotation.ElementType.METHOD;
+import static java.lang.annotation.ElementType.TYPE;
+import static java.lang.annotation.RetentionPolicy.RUNTIME;
+
+import java.lang.annotation.Documented;
+import java.lang.annotation.Inherited;
+import java.lang.annotation.Retention;
+import java.lang.annotation.Target;
+
+import org.junit.jupiter.api.Tag;
+
+/**
+ * Mark this test as an <a href="https://en.wikipedia.org/wiki/Integration_testing">Integration</a> test
+ * @author Taylor Smock
+ */
+@Inherited
+@Documented
+@Retention(RUNTIME)
+@Target({TYPE, METHOD})
+@Tag("IntegrationTest")
+public @interface IntegrationTest {
+}
Index: /trunk/test/unit/org/openstreetmap/josm/testutils/annotations/PerformanceTest.java
===================================================================
--- /trunk/test/unit/org/openstreetmap/josm/testutils/annotations/PerformanceTest.java	(revision 19223)
+++ /trunk/test/unit/org/openstreetmap/josm/testutils/annotations/PerformanceTest.java	(revision 19223)
@@ -0,0 +1,25 @@
+// License: GPL. For details, see LICENSE file.
+package org.openstreetmap.josm.testutils.annotations;
+
+import static java.lang.annotation.ElementType.METHOD;
+import static java.lang.annotation.ElementType.TYPE;
+import static java.lang.annotation.RetentionPolicy.RUNTIME;
+
+import java.lang.annotation.Documented;
+import java.lang.annotation.Inherited;
+import java.lang.annotation.Retention;
+import java.lang.annotation.Target;
+
+import org.junit.jupiter.api.Tag;
+
+/**
+ * Mark this test as a <a href="https://en.wikipedia.org/wiki/Software_performance_testing">Performance</a> test
+ * @author Taylor Smock
+ */
+@Inherited
+@Documented
+@Retention(RUNTIME)
+@Target({TYPE, METHOD})
+@Tag("PerformanceTest")
+public @interface PerformanceTest {
+}
Index: /trunk/test/unit/org/openstreetmap/josm/tools/PlatformHookTestIT.java
===================================================================
--- /trunk/test/unit/org/openstreetmap/josm/tools/PlatformHookTestIT.java	(revision 19222)
+++ /trunk/test/unit/org/openstreetmap/josm/tools/PlatformHookTestIT.java	(revision 19223)
@@ -11,8 +11,10 @@
 
 import jakarta.json.Json;
+import org.openstreetmap.josm.testutils.annotations.IntegrationTest;
 
 /**
  * Integration tests of {@link PlatformHook} class.
  */
+@IntegrationTest
 class PlatformHookTestIT {
     /**
Index: /trunk/test/unit/org/openstreetmap/josm/tools/TerritoriesTestIT.java
===================================================================
--- /trunk/test/unit/org/openstreetmap/josm/tools/TerritoriesTestIT.java	(revision 19222)
+++ /trunk/test/unit/org/openstreetmap/josm/tools/TerritoriesTestIT.java	(revision 19223)
@@ -14,4 +14,5 @@
  */
 @Projection
+@org.openstreetmap.josm.testutils.annotations.Territories
 class TerritoriesTestIT {
     /**
