- 基本情報
- セットアップと構成
- オートメーション プロジェクト
- 依存関係
- ワークフローの種類
- 制御フロー
- ファイルの比較
- オートメーションのベスト プラクティス
- ソース管理との連携
- デバッグ
- ログ
- 診断ツール
- ワークフロー アナライザー
- ワークフロー アナライザーについて
- ST-DBP-002 - 多数の引数
- ST-DBP-003 - 空の catch ブロック
- ST-DBP-007 - 複数のフローチャートレイヤー
- ST-DPB-010 - [ワークフロー] または [テスト ケース] の複数のインスタンス
- ST-DBP-020 - 未定義の出力プロパティ
- ST-DBP-021 - ハードコードされたタイムアウト
- ST-DBP-023 - 空のワークフロー
- ST-DBP-024 - 永続性アクティビティの確認
- ST-DBP-025 - 変数のシリアル化の前提条件
- ST-DBP-026 - [待機] アクティビティの使用
- ST-DBP-027 - Persistence のベスト プラクティス
- ST-DBP-028 - 引数のシリアル化の前提条件
- ST-USG-005 - ハードコードされたアクティビティ引数
- ST-USG-009 - 未使用の変数
- ST-USG-010 - 未使用の依存関係
- ST-USG-014 - パッケージの制限
- ST-USG-017 - パラメーター修飾子が無効です
- ST-USG-020 - 最小ログ メッセージ
- ST-USG-024 - 未使用で保存されたままの値
- ST-USG-025 - 保存した値の誤用
- ST-USG-026 - アクティビティの制限
- ST-USG-027 - 必要なパッケージ
- ST-USG-028 - ファイル テンプレートの呼び出しの制限
- ST-USG-027 - 必須のタグ
- ST-USG-034 - Automation Hub URL
- 変数
- 引数
- インポートされた名前空間
- コード化されたオートメーション
- トリガーベースの有人オートメーション
- レコーディング
- UI 要素
- セレクター
- オブジェクト リポジトリ
- データ スクレイピング
- 画像とテキストの自動化
- Citrix テクノロジの自動化
- RDP の自動化
- VMware Horizon の自動化
- Salesforce の操作の自動化
- SAP のオートメーション
- macOS の UI Automation
- ScreenScrapeJavaSupport ツール
- Webdriver プロトコル
- 拡張機能
- Test Suite - Studio
- トラブルシューティング
Studio ガイド
ベスト プラクティス
コード化されたオートメーションの効率性、保守性、およびスケーラビリティを確保するには、ベスト プラクティスに従う必要があります。このセクションでは、コードを活用したオートメーション ソリューションの構築を開始するときに覚えておくべき主なベスト プラクティスの概要を示します。これらのベスト プラクティスに従えば、特にコードの構成、エラーの処理方法の実装、または再利用可能なコンポーネントの作成時に、コード化されたオートメーションを設計するのに役立ちます。
並列処理は、パフォーマンスを向上させ、コード化されたオートメーションへの実装も容易です。[繰り返し (コレクションの各要素)] ループを使用すると、オートメーションの実行速度を上げることができます。
コード化されたオートメーション (CS ファイル) では、ローコードのオートメーション (XAML ファイル) 内の入れ子になったクラスの変数や引数の使用または呼び出しはサポートされていません。[ワークフロー ファイルを呼び出し] アクティビティを使用してこのような種類の引数を呼び出したり、このような引数を XAML ファイル内に作成したりしようとすると、エラーが発生します。入れ子になったクラスの変数や引数は、他の CS ファイル内でのみ使用することをお勧めします。
CodedWorkflow
、ParentFile
(CodedWorkflow
を継承し、カスタム メソッドを含む中間クラス)、および MyCustomWorkflow
と AnotherCustomWorkflow
(ParentFile
を継承する派生クラス) の 3 つのクラスを使用して継承がどのように機能するかを見てみましょう。以下の表は、これらのクラスとファイル間の継承がどのように機能するかを示しています。
コード化されたオートメーション | 説明 | コード |
---|---|---|
CodedWorkflow (read-only partial class)
| このクラスは、すべてのコード化されたワークフローの基盤として機能し、CodedWorkflowBase クラスから継承された、すべてのワークフローに共通する基本的なメソッドとプロパティが含まれています。この例では、他のすべてのワークフローが最終的に継承するクラスです。
重要: 他のワークフローに継承させるファイルも、
CodedWorkflow クラスと、暗黙的に CodedWorkflowBase クラスを継承する必要があります。これにより、すべてのワークフローが重要な機能を継承し、予期したとおりに動作するようになります。
|
|
ParentFile (code source file containing an intermediate class and a custom method)
| このクラスは、CodedWorkflow を継承し、カスタム メソッドと機能を追加します。この例では、Orchestrator でのジョブの開始などの特定のアクションを実行する CustomMethod というカスタム メソッドが含まれています。
|
|
MyCustomWorkflow and AnotherCustomWorkflow (coded workflows that inherit the code source file)
| これらのクラスは ParentFile を継承し、メソッドをオーバーライドするか、異なるパラメーター値を指定して、ワークフローをさらにカスタマイズします。この例では、MyCustomWorkflow と AnotherCustomWorkflow があり、どちらも ParentFile を継承します。
|
|
ParentFile
は CodedWorkflow
を継承するため、ParentFile
を継承するクラスは、CodedWorkflow
の機能とメソッドを間接的に継承します。つまり、MyCustomWorkflow
と AnotherCustomWorkflow
はどちらも、部分クラス CodedWorkflow
から中間 ParentFile
を介して、コア機能と他のカスタム クラス (CustomMethod
など) を継承します。
カスタム ロジックを使用してコード化されたオートメーションを拡張するために、カスタム サービスを登録して後でコード化されたオートメーションで使用することができます。独自のカスタム サービスを登録する方法については、「カスタム サービスを登録する」をご覧ください。
テスト ケース内では、Before コンテキストと After コンテキストを使用して、テスト ケースの実行前と実行後に特定のアクションを実行できます。これらのコンテキストは、通常、リソースの設定とティアダウン、ログ記録の実行、およびテスト環境の管理に使用されます。「Before および After コンテキスト」で、コンテキストの動作とその実装方法を確認してください。