| title |
|---|
Tree Helpers |
Tree inspection is one of the most useful parts of the testing package because it turns a visual hierarchy into something you can query and assert against directly.
Avalonia.HeadlessTestingFramework.VisualTreeTestHelper: visual-tree traversal helpersAvalonia.HeadlessTestingFramework.LogicalTreeTestHelper: logical-tree traversal helpersAvalonia.HeadlessTestingFramework.ControlFinder: fluent control-finding APIAvalonia.HeadlessTestingFramework.TreeXPath: XPath-like queries for tree traversal
These are a good fit when test code needs to locate controls by type, name, class, property, or relative position.
Avalonia.HeadlessTestingFramework.TreeValidator: declarative validation rules and summary outputAvalonia.HeadlessTestingFramework.TreeComparer: snapshot and diff workflows for visual or logical treesAvalonia.HeadlessTestingFramework.TemplateComparer: template-part and template-structure verification
Example validator usage:
window.Validate()
.RequireName("ZoomBorder")
.RequireType<Canvas>()
.AssertValid();- Use
ControlFinderfor ergonomic queries in everyday tests. - Use
TreeXPathwhen selector-style queries are easier to read than chained calls. - Use
TreeValidatorwhen you need a small ruleset with strong failure messages. - Use
TreeComparerorTemplateComparerwhen regression detection matters more than imperative assertions.