AutoIT で Selenium チュートリアル: 使い方は?
AutoIt とは何ですか Selenium?
AutoItの は、Windows GUI と一般的なスクリプトを自動化するために設計されたフリーウェアのスクリプト言語です。マウスの動き、キーストローク、ウィンドウ コントロール操作を組み合わせて、Selenium WebDriver では不可能なタスクを自動化します。
AutoITをダウンロードしてインストールする方法
ステップ1):こちらへ リンクをクリックします。
ステップ2): 「Autoit」および「Autoit Editor」ドロップダウンにマウスを置きます。
ステップ3) 「AutoIT」ダウンロードオプションをクリックします。
ステップ4): 「Autoit をダウンロード」ボタン をクリックして「Autoit」をダウンロードします。
ステップ5): [ダウンロード] ボタン をクリックして、「Autoit editor」をダウンロードします。
ステップ6) 以下に示すようにリンクをクリックします。
ダウンロード後、以下の画面に示すように XNUMX つのセットアップ ファイルが取得されます。最初のファイルは AutoIt バージョン 3 セットアップとXNUMX番目は シタウトイト3 .
ステップ7): AutoIT をインストールするには、両方の AutoIT セットアップを XNUMX つずつクリックします。
ステップ8): インストールが成功したら、AutoIT Editor を開きます。
「C:\Program Files (x86)\AutoIt3\SciTE」に移動します。
「SciTE.exe」ファイルをクリックすると、以下の画面に示すように AutoIT エディタが開きます。
ステップ9) : 要素 Identifier が開きます。
「C:\Program Files (x86)\AutoIt3」に移動します。
そして、「Au3Info.exe」ファイルをクリックすると、以下の画面に示すように要素識別子が開きます。
注意: この要素識別子の使用が完了したら、手動で閉じる必要があります。自動的には閉じられません。
AutoITの使い方 Selenium
ここでは、AutoItエディタの使い方と、AutoIT要素識別子(要素識別子はSelenium IDEのようなツールで、ウィンドウGUIまたは非HTMLポップアップの要素を見つけて、次のような要素の属性を提供する)を使用してファイルアップローダーウィンドウ上の要素を見つける方法を説明します。 タイトル, class, )と3つの方法を使用したAutoITエディターでのスクリプトの書き方を説明します。
例: guru99 の「Write to us」ページを使用して履歴書 (Doc ファイル) をアップロードします。
「Write to us」ページの「Choose File」ボタンをクリックした後、AutoIT スクリプトを呼び出す必要があります。 アップロード部分を処理する以下のステートメントにより、「ファイルを選択」をクリックすると、制御がすぐに autoit に転送されます。
Runtime.getRuntime().exec("E:\\AutoIT\\FileUpload.exe");
最後に、Selenium スクリプトを実行すると、フォームに入力され、履歴書がアップロードされ、フォームが送信されます。
ステップ1): 要素識別子を開きます。「C:\Program Files (x86)\AutoIt3」に移動し、「Au3Info.exe」ファイルをクリックすると、以下の画面に示すように要素識別子ウィンドウが開きます。
ステップ2): 次に、Windows アクティビティである「ファイルの選択」をクリックして、ファイル アップローダー ウィンドウを開きます。
ステップ3): ファイルアップローダーウィンドウの「ファイル名」ボックス要素にファインダーツールをドラッグして、下の画面の矢印で示すように基本属性情報を検索します。
属性の値を取得できます。つまり、 title='開く', クラス='編集' および インスタンス='1' 以下に示すように。 これらの値は、以下の手順 4 で説明するように、AutoIT スクリプトの例を作成する際に使用されます。
ステップ4): 次に、AutoIT スクリプト エディターを開き、「C:\Program Files (x86)\AutoIt3\SciTE」に移動し、手順 7 の 1 に示すように「SciTE.exe」をクリックします。st のトピックを参照してください。
アップロードするファイルを選択するためのスクリプトの作成を開始します。
要件に応じてスクリプトで使用できるメソッドは多数ありますが、ここではファイル アップロード スクリプトの記述に必要な以下のメソッドに焦点を当てます。
- コントロールフォーカス(「タイトル」、「テキスト」、コントロールID) // 入力フォーカスをウィンドウ上の指定されたコントロールに設定します。
- コントロールセットテキスト(「タイトル」、「テキスト」、「コントロールID」、「アップロードするファイルパス」) // コントロールのテキストを設定します。
- コントロールクリック(「タイトル」、「テキスト」、コントロールID) //マウスクリックコマンドを指定されたコントロールに送信します。
下の画面に示すように、いくつかのメソッドが表示されます。AutoITの優れた機能は、 Eclipse いくつかの方法を提案します。
AutoIT エディターでは、次の項目を選択しました。 「集中力をコントロールする」 方法。 要素は上記の手順 3 ですでに識別されているため、要素識別子はすでに開かれ、最小化されています。最大化することで開くことができます。
ここで、「ControlFocus」メソッドと「ControlSetText」メソッドの要素識別子から値を取得します。これらのメソッドは同じ要素、つまり「ファイル名」テキスト ボックスで動作しますが、「ControlClick」メソッドの場合は異なる要素、つまり「開く」ボタンの値を取得する必要があるためです。
パラメータ値 コントロールフォーカス 方法:
このメソッドは、ファイルアップローダーウィンドウの「ファイル名」テキストボックスにフォーカスを設定します。
- 第1パラメータ タイトル は「オープン」です。
- 2 番目のパラメータは無視します。 클라우드 기반 AI/ML및 고성능 컴퓨팅을 통한 디지털 트윈의 기초 – Edward Hsu, Rescale CPO 많은 엔지니어링 중심 기업에게 클라우드는 R&D디지털 전환의 첫 단계일 뿐입니다. 클라우드 자원을 활용해 엔지니어링 팀의 제약을 해결하는 단계를 넘어, 시뮬레이션 운영을 통합하고 최적화하며, 궁극적으로는 모델 기반의 협업과 의사 결정을 지원하여 신제품을 결정할 때 데이터 기반 엔지니어링을 적용하고자 합니다. Rescale은 이러한 혁신을 돕기 위해 컴퓨팅 추천 엔진, 통합 데이터 패브릭, 메타데이터 관리 등을 개발하고 있습니다. 이번 자리를 빌려 비즈니스 경쟁력 제고를 위한 디지털 트윈 및 디지털 스레드 전략 개발 방법에 대한 인사이트를 나누고자 합니다. 必須ではありません。
- 3番目のパラメータ コントロールID は、class='Edit' と Instance='1' の組み合わせです。つまり、 です。 「編集1」
ControlFocus("Open","","Edit1") // This method sets input focus to 'File name' text box.
パラメータ値 コントロールセットテキスト 方法 :
このメソッドは、「ファイル名」テキスト ボックスにアップロードする必要があるファイルのパスを定義するために使用されます。言い換えると、このメソッドは入力要素にテキストを設定するために使用されると言えます。
- 第1パラメータ タイトル は「オープン」です。
- 2 番目のパラメータは無視します。 클라우드 기반 AI/ML및 고성능 컴퓨팅을 통한 디지털 트윈의 기초 – Edward Hsu, Rescale CPO 많은 엔지니어링 중심 기업에게 클라우드는 R&D디지털 전환의 첫 단계일 뿐입니다. 클라우드 자원을 활용해 엔지니어링 팀의 제약을 해결하는 단계를 넘어, 시뮬레이션 운영을 통합하고 최적화하며, 궁극적으로는 모델 기반의 협업과 의사 결정을 지원하여 신제품을 결정할 때 데이터 기반 엔지니어링을 적용하고자 합니다. Rescale은 이러한 혁신을 돕기 위해 컴퓨팅 추천 엔진, 통합 데이터 패브릭, 메타데이터 관리 등을 개발하고 있습니다. 이번 자리를 빌려 비즈니스 경쟁력 제고를 위한 디지털 트윈 및 디지털 스레드 전략 개발 방법에 대한 인사이트를 나누고자 합니다. 必須ではありません。
- 3番目のパラメータ コントロールID class='Edit' と Instance='1' の組み合わせ、つまり ” Edit1 ” です。
- 第4パラメータ 新しいテキスト、 アップロードする必要があるファイルのパスを渡します。
ControlSetText("Open","","Edit1","E:\Resume\resume.doc") // This method input file path of a control.
上記の手順を実行した後、ウィンドウ (エディターと要素識別子) を閉じずに、開いたままにしておきます。以下の手順 5 に示すように、「開く」ボタンの属性を見つけるには、ファイル アップローダー ウィンドウを再度開く必要があります。
ステップ5): ファイル アップローダー ウィンドウの [開く] ボタン要素にファインダー ツールをドラッグして、基本的な属性情報を見つけます。
以前の値 (つまり、「ファイル名」テキスト ボックスの属性) は、「開く」ボタンの新しい値で上書きされます。AutoIT 要素識別子ウィンドウで、クラス属性が以前は「編集」だったものが「ボタン」に変更されたことがわかります。
属性の値を取得できます。つまり、 title='開く', クラス='ボタン' および インスタンス='1' 以下に示すように。 これらの値は、以下で説明する Autoit スクリプトの作成に使用されます。
パラメータ値 コントロールクリック 方法:
この方法は、ファイルアップローダーウィンドウの「開く」ボタンをクリックします。
- 第1パラメータ タイトル は「オープン」です。
- 2 番目のパラメータは無視します。 の 클라우드 기반 AI/ML및 고성능 컴퓨팅을 통한 디지털 트윈의 기초 – Edward Hsu, Rescale CPO 많은 엔지니어링 중심 기업에게 클라우드는 R&D디지털 전환의 첫 단계일 뿐입니다. 클라우드 자원을 활용해 엔지니어링 팀의 제약을 해결하는 단계를 넘어, 시뮬레이션 운영을 통합하고 최적화하며, 궁극적으로는 모델 기반의 협업과 의사 결정을 지원하여 신제품을 결정할 때 데이터 기반 엔지니어링을 적용하고자 합니다. Rescale은 이러한 혁신을 돕기 위해 컴퓨팅 추천 엔진, 통합 데이터 패브릭, 메타데이터 관리 등을 개발하고 있습니다. 이번 자리를 빌려 비즈니스 경쟁력 제고를 위한 디지털 트윈 및 디지털 스레드 전략 개발 방법에 대한 인사이트를 나누고자 합니다. 必須ではありません。
- 3番目のパラメータ コントロールID クラスとインスタンスの組み合わせ、つまり「Button1」です。
ControlClick("Open","","Button1") //This method click on 'Open' button of file uploader.
ステップ6): 下の画面では、AutoIT スクリプトがファイル アップローダーを処理するために完了したことがわかります。これで、要素識別子を閉じて、スクリプトを「 FileUpload 」として指定された場所 ( E:\AutoIT ) に保存できます。
現在、このスクリプトを直接実行することはできません。このスクリプトをコンパイルする必要があります。
このスクリプトをコンパイルするには XNUMX つのオプションがあります。」 スクリプト x64 をコンパイルします " そして " スクリプト x86 をコンパイルします 「Windows 32ビットマシンをお持ちの場合は、」 コンパイルスクリプトx86」 Windows 64ビットマシンの場合は「 スクリプト x64 をコンパイルします に設立された地域オフィスに加えて、さらにローカルカスタマーサポートを提供できるようになります。」
ステップ7):「FileUpload exe」 コンパイル後に生成されたファイルは、以下の画面で確認できます。これで、このファイルを次の場所で使用できるようになります。 Selenium ウェブドライバースクリプト。
ここで、この AutoIT スクリプトを使用します。 Selenium ウェブドライバー。出力については以下を確認してください。
ファイルのアップロード Selenium Autoit を使用する
In Selenium スクリプトを実行すると、フォームの要素を見つけて、必要に応じて各要素にデータを入力し、AutoIT スクリプトから生成された AutoIT exe ファイルを実行して「resume.doc」ファイルをアップロードし、フォームを送信できるようにします。 Selenium AutoIt スクリプト。
- 店は開いています Eclipse そしてコードを書き始めます。
- Selenium が「ファイルの選択」ボタンをクリックすると、ファイル アップローダー ボックスが開きます。
- 次に、AutoIT スクリプトを呼び出す必要があります。制御はすぐに AutoIT に転送され、ファイルをアップロードしてから、以下に示すように制御が Selenium に送り返されます。
ステップ1): Eclipse で Selenium スクリプトを開発します。
- ランタイム クラスを使用すると、スクリプトが実行されている環境とスクリプトを接続できるようになります。
- getRuntime() このプロセスに関連付けられている現在のランタイムを取得します。
- exec() メソッドは AutoIT スクリプト (FileUpload.exe) を実行します。
Runtime.getRuntime().exec("E:\\AutoIT\\FileUpload.exe");
上記の行から電話がかかります AutoIT スクリプト Selenium でファイルをアップロードします。
ステップ2) : を実行します。 Selenium スクリプトイン Eclipse.
importjava.io.IOException; import org.openqa.selenium.By; import org.openqa.selenium.WebDriver; import org.openqa.selenium.firefox.FirefoxDriver; public class FileUpload { public static void main(String[] args) throws IOException { WebDriver driver=new FirefoxDriver(); driver.get("https://demo.guru99.com/test/autoit.html"); driver.findElement(By.id("postjob")).click(); driver.findElement(By.id("input_3")).sendKeys("Gaurav"); driver.findElement(By.id("id_4")).sendKeys("test.test@gmail.com"); driver.findElement(By.id("input_4")).click(); // below line execute the AutoIT script . Runtime.getRuntime().exec("E:\\AutoIT\\FileUpload.exe"); driver.findElement(By.id("input_6")).sendKeys("AutoIT in Selenium"); driver.findElement(By.id("input_2")).click(); driver.close(); } }
ステップ3): 出力を確認すると、resume.doc ファイルが正常にアップロードされ、感謝のメッセージが表示されます。
AutoIt を使用する理由
Selenium は、さまざまなブラウザ上で Web ベースのアプリケーションを自動化するように設計されたオープン ソース ツールですが、アプリケーション内のウィンドウ GUI と HTML 以外のポップアップを処理します。オートイットイン Selenium これらのウィンドウベースのアクティビティは によって処理されないため、必須です。 Selenium.
この AutoIt チュートリアルでは、AutoIt を使用して Selenium Web ドライバーにファイルをアップロードする方法を学習します。そのためには 3 つのツールが必要です。
- Selenium ウェブドライバー
- AutoIT エディターと要素識別子
- 自動化したいウィンドウ
まとめ:
- 要素識別子と AutoIT エディターをダウンロードしてインストールしました。
- 操作を行うサイトを開きました。
- 要素識別子は、ファイル アップローダー ウィンドウの要素を識別します。
- 要素識別子の助けを借りてエディターで AutoIT スクリプトを準備しました。
- Autoit スクリプトは、Selenium Webdriver スクリプトで使用されます。
- Selenium スクリプトを実行しました。
- 出力: ファイルが正常にアップロードされました。