今天同事在用UIAutomation定位一个Sliverlight控件的时候提出了一些问题,一开始也怀疑UIAutomation搞不定Sliverlight,后来经过debug发现还是可以支持的。
经测试UIAutomation(AutomationElement)可以支持,但是CodedUI测试不支持。
下面是一个非常简单的例子,点击一个下拉菜单,并选一个项目
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Automation;
/*
using Microsoft.Test.UIAutomation;
using Microsoft.Test.UIAutomation.Core;
using Microsoft.Test.UIAutomation.Tests.Controls;
using Microsoft.Test.UIAutomation.Tests.Patterns;
using Microsoft.Test.UIAutomation.Tests.Scenarios;
using Microsoft.Test.UIAutomation.Logging;
* */
namespace Sliverlight
{
class Program
{
static void Main(string[] args)
{
AutomationElement desktop = AutomationElement.RootElement;
AutomationElement _clientAppRootInstance = desktop.FindFirst(TreeScope.C