{"id":37423946,"url":"https://github.com/bbobcik/auderis-test-category","last_synced_at":"2026-01-16T06:10:43.386Z","repository":{"id":35425891,"uuid":"39691245","full_name":"bbobcik/auderis-test-category","owner":"bbobcik","description":"General purpose JUnit categories for better test classification","archived":false,"fork":false,"pushed_at":"2017-05-11T10:08:26.000Z","size":73,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2023-07-27T18:09:07.318Z","etag":null,"topics":["annotations","java","junit-category","junit-test","junit4","test-classification"],"latest_commit_sha":null,"homepage":null,"language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/bbobcik.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2015-07-25T15:23:29.000Z","updated_at":"2017-05-11T10:15:52.000Z","dependencies_parsed_at":"2022-09-07T20:30:35.144Z","dependency_job_id":null,"html_url":"https://github.com/bbobcik/auderis-test-category","commit_stats":null,"previous_names":[],"tags_count":3,"template":null,"template_full_name":null,"purl":"pkg:github/bbobcik/auderis-test-category","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bbobcik%2Fauderis-test-category","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bbobcik%2Fauderis-test-category/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bbobcik%2Fauderis-test-category/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bbobcik%2Fauderis-test-category/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/bbobcik","download_url":"https://codeload.github.com/bbobcik/auderis-test-category/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bbobcik%2Fauderis-test-category/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28477633,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-16T03:13:13.607Z","status":"ssl_error","status_checked_at":"2026-01-16T03:11:47.863Z","response_time":107,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["annotations","java","junit-category","junit-test","junit4","test-classification"],"created_at":"2026-01-16T06:10:42.588Z","updated_at":"2026-01-16T06:10:43.375Z","avatar_url":"https://github.com/bbobcik.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# auderis-test-category - Metadata for Java tests\n\nThis library provides rich metadata to JUnit4 tests and consists of two main parts:\n  * Test metadata annotations\n  * Test categories for test classification\n   \nThese parts are explained below in detail.\n\n[![Build Status](https://travis-ci.org/bbobcik/auderis-test-category.svg?branch=master)](https://travis-ci.org/bbobcik/auderis-test-category)\n[![Maven Central](https://maven-badges.herokuapp.com/maven-central/cz.auderis/auderis-test-category/badge.svg)](https://maven-badges.herokuapp.com/maven-central/cz.auderis/auderis-test-category)\n\n\n## Artifact dependency declaration\n\nMaven:\n```Maven POM\n    \u003cdependency\u003e\n        \u003cgroupId\u003ecz.auderis\u003c/groupId\u003e\n        \u003cartifactId\u003eauderis-test-category\u003c/artifactId\u003e\n        \u003cversion\u003e1.1.0\u003c/version\u003e\n        \u003cscope\u003etest\u003c/scope\u003e\n    \u003c/dependency\u003e\n```\n   \nGradle:\n```Gradle\n    dependencies {\n        compileTest: 'cz.auderis:auderis-test-category:1.1.0'\n    }\n```\n\n\n## Metadata annotations\n\n### `@VerifiesIssue` - binding issues with tests\n\nOften a release version of a software product is characterized by a list of issues (bugs, feature requests etc.) that\nwere resolved since the last release. These issues are typically registered in a issue tracking system and in most\ncases, they are assigned unique IDs (for example, `JIRA-739`).\n\nIn order to automatically validate the correctness of a release candidate, we need to make sure that each issue\nis processed and its result (a bug fix or new code) is testable. Considering the normal workflow (an issue is\nopened and assigned to a developer, who then resolves it), we feel that the most convenient place to define\nthe issue-test relation is through the use of Java annotation at the test source level.\n\nExample:\n\n```java\n    public class NumericTest {\n    \n        @Test\n        @VerifiesIssue( 'JIRA-739' )\n        public void shouldPreventOverflowWhenValueIsLarge() throws Exception {\n            // ...\n        }\n     \n    }\n```\n\n\n## Test categories\n\n[JUnit framework](http://junit.org) introduced a concept of\n[test categorization](https://github.com/junit-team/junit4/wiki/categories) which can be easily exploited\nby build tools and/or test runners. Categories are expressed in terms of Java classes (allowing inheritance\nrelationships between categories). This library provides a rich set of generic, often needed categories,\nwhere the ones with the widest scope being:\n\n  * `UnitTest` for basic unit testing\n  * `AcceptanceTest` - important QA tests that correspond with software requirements\n  * `SanityTest` - tests that verify the build environment\n    * `SmokeTest` - tests designed to reveal simple but severe defects\n  * `RegressionTest` - tests that check for bugs introduced by code changes during QA phase\n  * `PerformanceTest` - tests that verify performance aspects of code\n\nAmong other provided categories are those that declare certain properties of a test, such as its relationship\nto a certain subsystem, its expected performance or test maturity:\n\n  * `IntegrationTest` - for tests that verify multi-component interactions\n    * `DatabaseTest` - tests of interactions between code and databases\n    * `NetworkTest` - tests oriented at network communications\n  * `UserInterfaceTest` - tests targeted at user interface\n  * `SecurityTest` - tests that validate security properties\n  * `SlowTest` - tests that can run for a significant time\n    * `VerySlowTest` - tests that can run for a very long time\n  * `DetailedTest` - tests of inner code behaviour that are not necessary for normal test runs\n  * `UnstableTest` - incomplete or misbehaving tests\n\nFor tests that target a specific OS platform, the following tests are available:\n\n  * `PlatformTest` - tests that check platform dependent aspects\n    * `LinuxPlatformTest` - tests targeting Linux\n    * `WindowsPlatformTest` - tests targeting Windows\n    * `OSXPlatformTest` - tests targeting OSX\n    * `AndroidPlatformTest` - tests targeting Android\n\n(Notice that generic `PlatformTest` category may be useful for global exclusion of platform-specific\ntests from a test run.)\n\nFor more information, consult JavaDoc of individual categories (in package `cz.auderis.test.category`).\n\n### Usage\n\nJUnit tests can be tagged either on method level, or globally on test class level.\nIn the following example, test method `shouldConnectToDatabase` has 3 categories\nassigned: `UnstableTest` (from class annotation), `DatabaseTest` (from method\nannotation) and `IntegrationTest` (implicit ancestor of the database test category).\n\n```java\n    @Category( UnstableTest.class )\n    public class SomeTests {\n        @Test\n        @Category( DatabaseTest.class )\n        public void shouldConnectToDatabase() throws Exception {\n            // ...\n        }\n    }\n```\n\n## License\n\nThe library is licensed under the [Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0).\nIn short, the software is distributed \"as is\", without any warranties. Please consult\nincluded file `LICENSE` for details.\n\n\n## History\n\n* **1.1.0**\n  * Categories for platform-oriented tests added\n\n* **1.0.1**\n  * Documentation expanded\n\n* **1.0.0**\n  * Initial public release\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbbobcik%2Fauderis-test-category","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbbobcik%2Fauderis-test-category","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbbobcik%2Fauderis-test-category/lists"}