Questions? Contact us |
Generated: 21/11/2021 at 17:21:20 p.m. |
Test Case Id | Test Type | Keywords | Test Case Description | Test Requirements | Expected Result | |||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
001 |
CTT | Browse() | Full browse of a valid node, without filters, view=null, browseDirection = Both, requestedMaxReferencesPerNode = 0, referenceTypeId = null, nodeClassMask = 0xFF, resultMask = 0x3F. | Service result = Good. Operation result = Good . One element in results[]; browsed
references in results[0] are correct - which means that all references have been
returned (forward and reverse). |
||||||||||
002 |
CTT | Browse() | Browse the same node as in (001) with browseDirection = Forward. If there are no forward or no inverse references on the node, a different node must be used to complete this test. |
Service result = Good. Operation result = Good. Browsed references in results[0] must
match the forward references in the result from (1). |
||||||||||
003 |
CTT | Browse() | Browse the same node as in (001) with browseDirection = Inverse. If there are no forward or no inverse references on the node, a different node must be used to complete this test. |
Service result = Good. Operation result = Good. Browsed references in results[0] must
match the inverse references in the result from (1). |
||||||||||
004 |
CTT | Browse() | Browse the same node as in (001) with referenceTypeId set to a valid ReferenceType
NodeId and includeSubtype = false. If the node has no references of the specified type, or no references that differ from the specified type, a different node must be used to complete this test. |
Service result = Good. Operation result = Good. All references in results[0] must
be of the requested type (and all references of the requested type should be returned
unless there were too many). The order of the references may appear sorted or not. |
||||||||||
005 |
CTT | Browse() | Browse the same node as in (001) with referenceTypeId set to a valid ReferenceType
NodeId and includeSubtype = true. If the node has no references of the specified type, or no references that differ from the specified type or its subtypes, a different node must be used to complete this test. |
Service result = Good. Operation result = Good. All references in results[0] must
be of the requested type or requested type`s subtype (and all references matching
that criteria should be returned unless there were too many). The order of the references
may appear sorted or not. |
||||||||||
006 |
CTT | Browse() | Browse the same node as in (1) with nodeClassMask set to each defined nodeClass (except
128, Views; see test 18). If the node has no references of the selected nodeClass or has references of only one nodeClass, a different node must be used to complete this test. |
Service result = Good. Operation result = Good. Only references of the selected nodeClass
are returned. |
||||||||||
007 |
CTT | Browse() | Specify multiple (valid) nodes to browse. | Service result = Good. Operation results are Good. The number of results[] matches
the number of nodesToBrowse[]. The references in each result are correct. |
||||||||||
008 |
CTT | Browse() | Specify multiple nodes to browse, including valid and invalid nodes. Invalid nodes must include a node with invalid syntax in the nodeId, a node not in the address space, a referenceTypeId that has invalid syntax, and a referenceTypeId that does not exist. | Service result = Good. Valid nodes have operation results of Good. Invalid nodes have
bad operation results of appropriate error (see error test cases below). |
||||||||||
009 |
CTT | Browse() | Browse the same node as in (001) with nodeClassMask=0. | Service result = Good. Operation result = Good. Browsed references in results[] match
the results of (1). |
||||||||||
010 |
CTT | Browse() | Browse the same node as in (1) with resultMask set to each defined ReferenceDescription field. | Service result = Good. Operation result = Good . Only the specified ReferenceDescription
field is returned. |
||||||||||
011 |
Lab | Browse() | Browse the same node as in (001) with a valid view. The view defines references that are Forward on the nodeToBrowse, and the view defines references that are Inverse on the nodeToBrowse. | Service result = Good. Operation result = Good . Browsed references in results[] includes
only those references that are defined in the view. |
||||||||||
012 |
Lab | Browse() | Browse the same node as in (001) with a valid view. None of the references defined in the view are on the nodeToBrowse (in any direction). | Service result = Good. Operation result = Good. The reference list in results[0] is
empty. |
||||||||||
013 |
Lab | Browse() | Browse the same node as in (001) with a valid view and requestedMaxReferencesPerNode = 1. The view defines multiple references that are on the nodeToBrowse (in either direction). | Service result = Good. Operation result = Good . One reference in results[0] and a
valid ContinuationPoint are returned. |
||||||||||
014 |
CTTResources Browse() | In a loop (half-million), create a session, browse a node (that has at least two references) with requestedMaxReferencesPerNode=1, close the session. | Within the loop, the service result = Good. The operation result = Good and the ContinuationPoint
is not null. Check for resource leaks (the unused ContinuationPoints should be freed). |
|||||||||||
015 |
CTT | Browse() | Browse the same node as in (001) with referenceTypeId set to a valid ReferenceType
NodeId and includeSubtype = false. The specified reference type must have at least one subtype. If the node has no references of one of the specified type`s subtypes, or no references that differ from the specified type`s subtypes, a different node must be used to complete this test. |
Service result = Good. Operation result = Good. All references in results[0] (if any)
must be of the requested type (and all references of the requested type should be
returned unless there were too many). |
||||||||||
016 |
CTT | Browse() | Browse the same node as in (1) with referenceTypeId set to a valid ReferenceType NodeId
and includeSubtype = true. The specified reference type must have at least one subtype. If the node has no references of one of the specified type`s subtypes, or no references that differ from the specified type or specified type`s subtypes, a different node must be used to complete this test. |
Service result = Good. Operation result = Good. All references in results[0] must
be of the requested type or requested type`s subtype (and all references matching
that criteria should be returned unless there were too many). The order of the references
may appear sorted or not. |
||||||||||
017 |
CTT | Browse() | Browse the same node as in (1) with nodeClassMask set to 128 (Views). If the node has no Views, a different node must be used to complete this test. If the server has no views, this test passes without needing to be run. |
Service result = Good. Operation result = Good. Only View references are returned. |
||||||||||
018 |
CTT | Browse() | Browse for a node of each node class. | Each node, but for one exception, should return a non-null value for all Reference
Description fields. Nodes that are not class Object or Variable should return a null TypeDefinition. |
||||||||||
019 |
CTT | Browse() | Browse with ResultMask set to various (pairwise) combinations: 0x00: ReferenceType 0x3E: IsForward & NodeClass & BrowseName & DisplayName & TypeDefinition 0x15: ReferenceType & NodeClass & DisplayName 0x2B: ReferenceType & IsForward & BrowseName & TypeDefinition 0x07: ReferenceType & IsForward & NodeClass 0x39: ReferenceType & BrowseName & DisplayName & TypeDefinition 0x1A: IsForward & BrowseName & DisplayName 0x24: NodeClass & TypeDefinition |
Service result = Good. Operation result = Good. Only the specified ReferenceDescription
fields are returned. |
||||||||||
020 |
CTT | Browse() | Browse the same node as in (1) with referenceTypeId set to a valid ReferenceType NodeId
and includeSubtype = true. The specified reference type must have at least one subtype that has at least one subtype. If the node has no references of one of the specified type`s subtypes` subtypes, a different node must be used to complete this test. |
Service result = Good. Operation result = Good. All references in results[0] must
be of the requested type or requested type`s subtype (and all references matching
that criteria should be returned unless there were too many). |
||||||||||
021 |
CTT | Unavailable Browse() | For a given View, invoke a Browse() using default parameters while specifying the
viewVersion (current). Assumption: the version information is retrieved in advance of the test. |
All service results are Good. 1 or more references are returned. |
||||||||||
022 |
CTT | Unavailable Browse() | For a given View, and if prior versions of the View are available, then invoke a Browse() for the prior version (i.e. current version – 1) of the View. | All service results are Good. 1 or more references are returned. |
||||||||||
023 |
CTT | Unavailable Browse() | For a given View, and if prior versions of the View are available, then invoke a Browse() for the earliest version. | All service results are Good. 1 or more references are returned. |
||||||||||
024 |
CTT | Unavailable Browse() | For a given View, invoke a Browse() using default parameters while specifying a View timestamp of now. | All service results are Good. 1 or more references are returned. |
||||||||||
025 |
CTT | Unavailable Browse() | For a given View, and if prior versions of the View are available, then invoke a Browse() for the prior timestamp (akin to the version) of the View. | All service results are Good. 1 or more references are returned. |
||||||||||
026 |
CTT | Unavailable Browse() | For a given View, and if prior versions of the View are available, then invoke a Browse() for the earliest timestamp (akin to the version number). | All service results are Good. 1 or more references are returned. |
||||||||||
027 |
CTT | Browse() | Given one node to browse and the node does not exist, and diagnostic info is requested. When Browse is called then the server returns specified operation diagnostic info. Given no nodes to browse and diagnostic info is requested. When Browse is called then the server returns specified service diagnostic info. |
|||||||||||
028 |
CTT | Browse() | Given one node to browse and the node does not exist, and diagnostic info is not requested. When Browse is called then the server returns no diagnostic info. |
|||||||||||
029 |
Lab | Browse() UA 1.03 | Invoke a generic Browse request in an area of the Server's address space which contains a massive quantity of nodes, while employing a relatively short timeout. | Client timeout settings must be configurable. The Server's address space will need to be large with a single folder containing hundreds or thousands of nodes. |
|
|||||||||
030 |
Lab | UA 1.04 | Browse for nodes specifying a NodeClass filter, where the nodes are known to exist on a Remote server. Repeat the test for each NodeClass. | Server must be connected to a remote server, otherwise skip the test. | Server will return the nodeIds of those nodes whose NodeClass is not known, regardless of the filter. | |||||||||
031 |
CTT | Unavailable Browse() UA 1.04 | For each configured Decimal type, read the References. | CTT requires settings for this type. | A reference is found that identifies the node as a type of Decimal. | |||||||||
032 |
Browse() | Validate that the server returns an empty BrowseDescriptions when no reference is
matching the filter criteria. SpecLink: 7.6. BrowseResultCreate an BrowseRequest with a filter which results in an empty list of references to be provided in the BrowseResult |
ReferenceDescriptions is empty and NOT null. | |||||||||||
Err-001 |
CTT | Browse() | Specify a nodeToBrowse that has invalid syntax in the nodeId. | Service result = Good. Operation result = Bad_NodeIdInvalid. |
||||||||||
Err-002 |
CTT | Browse() | Specify a nodeToBrowse that is not in the address space. Test a node of each IdentifierType and a node with a non-existent NamespaceIndex. |
Service result = Good. Operation result = Bad_NodeIdUnknown. |
||||||||||
Err-003 |
CTT | Browse() | Invalid browseDirection enum value. | Service result = Good. Operation result = Bad_BrowseDirectionInvalid. |
||||||||||
Err-004 |
CTT | Browse() | For view, specify a nodeId that is not in the address space. | Service result = Bad_ViewIdUnknown. |
||||||||||
Err-005 |
CTT | Unavailable Browse() | Use a referenceTypeId that has invalid syntax. | Service result = Good. Operation result = Bad_ReferenceTypeIdInvalid. |
||||||||||
Err-006 |
CTT | Browse() | Specify a referenceTypeId that is not in the address space. | Service result = Good. Operation result = Bad_ReferenceTypeIdInvalid. |
||||||||||
Err-007 |
Lab | Browse() | Use a view that does not include the nodeToBrowse. | Service result = Good. Operation result = Bad_NodeNotInView. |
||||||||||
Err-008 |
CTT | Browse() | nodesToBrowse is empty or null. | Service result = Bad_NothingToDo. |
||||||||||
Err-009 |
CTT | Browse() | For view, specify the nodeId of a node that is not a view. | Service result = Bad_ViewIdUnknown. |
||||||||||
Err-010 |
CTT | Browse() | For referenceTypeId, specify the nodeId of a node that is not a reference type. | Service result = Good. Operation result = Bad_ReferenceTypeIdInvalid. |
||||||||||
Err-011 |
CTT | Unavailable Browse() | For a View with a version greater than 1, specify a view and set the timestamp (in
the viewDescription) to Jan-1-1960, i.e. unavailable. Note: this tests the timestamp, but the version is needed because this test only applies to a view which has a prior version. |
Service result = Bad_ViewTimestampInvalid. | ||||||||||
Err-012 |
CTT | Unavailable Browse() | Specify a view and set the viewVersion parameter to Max UInt32, i.e. a value that is not supported/available. | Service result = Bad_ViewVersionInvalid. | ||||||||||
Err-013 |
Lab | Unavailable Browse() | For systems where the address space contains nodes that belong to another system (e.g. gateway server) conduct a browse for items (that may have been previously discovered) while the downstream server/device is unavailable. | Service result = Good. Operation level results are Uncertain_NotAllNodesAvailable. |
||||||||||
Err-014 |
CTT | Browse() BrowseNext() | Pass in an empty list or a null value for the ContinuationPoints parameter. | Service result = Bad_NothingToDo. |
||||||||||
Err-015 |
CTT | Browse() | Given an empty/null authenticationToken, call Browse(). | Service Result: `Bad_SecurityChecksFailed`. | ||||||||||
Err-016 |
CTT | Browse() | Given a non-existent authenticationToken, call Browse(). | Service Result: `Bad_SecurityChecksFailed`. |