Glossary · Conformance

Compliance Test Tool (CTT)

The OPC UA Compliance Test Tool (UACTT) is the OPC Foundation's official conformance tester. It is script-driven per conformance unit, exercises every Facet a server claims in ServerProfileArray, and produces a pass, fail or warn report. It is used both for vendor self-testing and as the basis of test-lab certification of a product.

What it does

The tool connects as a client and drives a scripted suite organised by conformance unit, checking not only that a service returns something but that it returns the specified StatusCode for bad inputs, honours limits, and behaves correctly at boundaries. Output is a structured report with a verdict per conformance unit. That report, not a demo, is what a serious buyer should ask to see.

Your claimed facets select the test suite

The tool tests what you claim. Whatever profile and facet URIs sit in ServerProfileArray determine which scripts run, which is why over-claiming there translates directly into failures here. Run the tool against your honest short list first, then add one facet at a time.

How the open stacks use it

Both major open-source stacks gate releases on it. open62541's release criteria include zero errors reported by the Compliance Test Tool for the supported features, and it runs those tests under Valgrind, Dr. Memory and AddressSanitizer to catch memory faults that only appear under conformance load. UA-.NETStandard ships a dedicated Ctt.ReferenceServer.Config.xml selected with a --ctt flag, so the reference server can be started in the configuration the tool expects.

Getting hold of it

The tool is hosted on the OPC Foundation developer-tools site and distribution is restricted to members. If you are not a member, the practical substitutes are a lab engagement, an interoperability workshop, and disciplined negative testing of your own: feed every service bad NodeIds, out-of-range IndexRanges, oversized requests and expired continuation points, and check the StatusCode you return against the specification.

Example

Shape of a conformance report - verdicts are per conformance unit

Conformance unit                        Result   Notes
--------------------------------------- -------- ---------------------------
Address Space Base                      PASS
Attribute Read - IndexRange             PASS
Subscription Base - Publish             PASS
Subscription - Deadband Percent         FAIL     EURange missing on 3 nodes
History Read Raw - Continuation Points   WARN     GoodMoreData not returned
Method Call - Argument Validation        FAIL     BadInvalidArgument expected

Start the .NET reference server in the expected configuration:
  dotnet run --project Applications/ConsoleReferenceServer -- --ctt
The mistake people make: Teams run the tool for the first time a week before a lab booking. It typically surfaces dozens of small specification deviations, especially wrong StatusCodes on invalid input and missing EURange for percent deadband. Run it in CI from the first sprint instead.

Defined in: Part 7 - Profiles defines what is tested. The tool itself is an OPC Foundation product, not part of IEC 62541.

Last verified 7 September 2026 against OPC UA 1.05.07. OPC UA Connect is an educational resource and is not affiliated with the OPC Foundation.

Free download
OPC UA Server Acceptance Test Pack
A 40-check acceptance test you run against a vendor's server before commissioning sign-off. Weighted scoring, three hard gates, and a one-page verdict for the supplier meeting.
Get the free test pack →
Free, no course, no login