Interface TestItem

An item shown in the "test explorer" view.

A TestItem can represent either a test suite or a test itself, since they both have similar capabilities.

interface TestItem {
    busy: boolean;
    canResolveChildren: boolean;
    children: TestItemCollection;
    description?: string;
    error: undefined | string | MarkdownString;
    id: string;
    label: string;
    parent: undefined | TestItem;
    range: undefined | Range;
    sortText?: string;
    tags: readonly TestTag[];
    uri: undefined | Uri;
}

Implemented by

Properties

busy: boolean

Controls whether the item is shown as "busy" in the Test Explorer view. This is useful for showing status while discovering children.

Defaults to false.

canResolveChildren: boolean

Indicates whether this test item may have children discovered by resolving.

If true, this item is shown as expandable in the Test Explorer view and expanding the item will cause TestController.resolveHandler to be invoked with the item.

Default to false.

The children of this test item. For a test suite, this may contain the individual test cases or nested suites.

description?: string

Optional description that appears next to the label.

error: undefined | string | MarkdownString

Optional error encountered while loading the test.

Note that this is not a test result and should only be used to represent errors in test discovery, such as syntax errors.

id: string

Identifier for the TestItem. This is used to correlate test results and tests in the document with those in the workspace (test explorer). This cannot change for the lifetime of the TestItem, and must be unique among its parent's direct children.

label: string

Display name describing the test case.

parent: undefined | TestItem

The parent of this item. It's set automatically, and is undefined top-level items in the TestController.items and for items that aren't yet included in another item's children.

range: undefined | Range

Location of the test item in its uri.

This is only meaningful if the uri points to a file.

sortText?: string

A string that should be used when comparing this item with other items. When falsy the label is used.

tags: readonly TestTag[]

Tags associated with this test item. May be used in combination with tags, or simply as an organizational feature.

uri: undefined | Uri

URI this TestItem is associated with. May be a file or directory.