動的ロケーター属性の詳細については、「動的ロケーター属性」を参照してください。
Silverlight スクリプト内のコンポーネントを識別するために、automationId、caption、className、name、または任意の動的ロケーター属性を指定できます。 automationId はアプリケーション開発者が設定します。 たとえば、automationId を持つロケーターは、以下のようになります://SLButton[@automationId="okButton"]
automationId は一般に非常に有用で安定した属性であるため、使用することを推奨します。
属性の種類 | 説明 | 例 |
---|---|---|
automationId | テスト対象アプリケーションの開発者によって設定される識別子。 Visual Studio デザイナは、デザイナ上で作成されたすべてのコントロールに自動的に automationId を割り当てます。 アプリケーション開発者は、アプリケーションのコード上でコントロールを識別するために、この ID を使用します。 | //SLButton[@automationId="okButton"] |
caption | コントロールが表示するテキスト。 複数の言語にローカライズされたアプリケーションをテストする場合、caption の代わりに automationId や name 属性を使用することを推奨します。 | //SLButton[@caption="Ok"] |
className | Silverlight コントロールの .NET 単純クラス名 (名前空間なし)。 className 属性を使用すると、Silk4J が解決する標準 Silverlight コントロールから派生したカスタム コントロールを識別するのに役立ちます。 | //SLButton[@className='MyCustomButton'] |
name | コントロールの名前。 テスト対象アプリケーションの開発者によって設定されます。 | //SLButton[@name="okButton"] |
Silk4J は、automationId、name、caption、className 属性をこの表に示した順番に使用して Silverlight コントロールのロケーターを記録時に作成します。 たとえば、コントロールが automationId と name を持つ場合、automationId が固有の場合は Silk4J がロケーターを作成する際に使用されます。
オブジェクトの XAML コード | Silk Test からオブジェクトを検索するためのロケーター |
---|---|
<Button>Ok</Button> | //SLButton[@caption="Ok"] |
<Button Name="okButton">Ok</Button> | //SLButton[@automationId="okButton"] |
<Button AutomationProperties.AutomationId="okButton">Ok</Button> | //SLButton[@automationId="okButton"] |
<Button AutomationProperties.Name="okButton">Ok</Button> | //SLButton[@name="okButton"] |