using System; using System.Drawing; using Arp.Prova.ImageLibrary; using Arp.Prova.CsvLib; using Arp.Prova.PlayLib; using System.IO; //このサンプルは、「Google Chrome」設定にある「自動入力とパスワード>Google パスワード マネージャー」で //「パスワードとパスキーを保存するか確認する」と「自動ログイン」をオフに設定します。 // CodeClass public class CodeClass { public static int CodeStart() { //「パスワードとパスキーを保存するか確認する」の画像パス string imagePath1 = @"C:\SetROBO\Image\パスワードとパスキーを保存するか確認する.PNG"; //「自動ログイン」の画像パス string imagePath2 = @"C:\SetROBO\Image\自動ログイン.PNG"; /************************ここから設定の変更を行います************************/ //■「Google Chrome」画面を最大化で表示(最大化「--start-maximized」) //画面内のコントロールを操作するため、アクセシビリティを「--force-renderer-accessibility」でオンにする PlayLib.ProcessStart("chrome.exe", "--start-maximized --force-renderer-accessibility"); //■「Google Chrome」画面が開くまで待つ if(PlayLib.WaitWindow("* - Google Chrome", true, 10)) { PlayLib.Window("* - Google Chrome").Activate(); //「Google Chrome」画面を前面に表示 PlayLib.Sleep(1000); //画面内の描画は終わるまで少し待つ //アドレスバーをクリック PlayLib.Window("* - Google Chrome").UIEdit("アドレス検索バー").Click(); PlayLib.Sleep(1000); //アドレスバーに「自動入力とパスワード>Google パスワード マネージャー」の設定画面のURLを入力しEnterで起動 PlayLib.Window("* - Google Chrome").Input("chrome://password-manager/settings{Enter}"); PlayLib.Sleep(1000); //「Google パスワード マネージャー」画面が開くまで待つ if(PlayLib.WaitWindow("Google パスワード マネージャー*", true, 10)) { //本画面では、ボタンのオン・オフ状態をUIButton("ボタン名").Checkedで取得できないため、画像比較を利用します //画像比較で「パスワードとパスキーを保存するか確認する」がオンになっているかを確認する if(ImageLibrary.Search(String.Empty, imagePath1, 3, ImageLibrary.SearchArea.ALL, 0.98)) { //「パスワードとパスキーを保存するか確認する」をオフにする PlayLib.Window("Google パスワード マネージャー*").UIButton("パスワードとパスキーを保存するか確認する").Invoke(); PlayLib.Sleep(2000); //画像比較で「パスワードとパスキーを保存するか確認する」がオンになっているかを確認する if(ImageLibrary.Search(String.Empty, imagePath1, 3, ImageLibrary.SearchArea.ALL, 0.98)) { //「パスワードとパスキーを保存するか確認する」がオンになっていた場合、ログを出力し、処理を終了する PlayLib.TestLogError("「パスワードとパスキーを保存するか確認する」がオフにできませんでした"); return -1; } } else { PlayLib.TestLogWarning("画像:"+ imagePath1 + "と一致するコントロールがありませんでした。"); PlayLib.Window("Google パスワード マネージャー*").ScreenCapture(Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.DesktopDirectory), "GoogleChrome-パスワード.png")); } //画像比較で「自動ログイン」がオンになっているかを確認する if(ImageLibrary.Search(String.Empty, imagePath2, 3, ImageLibrary.SearchArea.ALL, 0.98)) { //「自動ログイン」をオフにする PlayLib.Window("Google パスワード マネージャー*").UIButton("自動ログイン. Google パスワード マネージャー でログイン方法を記憶し、可能な場合は自動的にログインします。オフにすると、毎回確認を求められます。").Invoke(); PlayLib.Sleep(2000); //画像比較で「自動ログイン」がオンになっているかを確認する if(ImageLibrary.Search(String.Empty, imagePath2, 3, ImageLibrary.SearchArea.ALL, 0.98)) { //「自動ログイン」がオンになっていた場合、ログを出力し、処理を終了する PlayLib.TestLogError("「自動ログイン」がオフにできませんでした"); return -1; } } else { PlayLib.TestLogWarning("画像:"+ imagePath2 + "と一致するコントロールがありませんでした。"); PlayLib.Window("Google パスワード マネージャー*").ScreenCapture(Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.DesktopDirectory), "GoogleChrome-パスワード.png")); } PlayLib.Window("Google パスワード マネージャー*").Close(); //「Google パスワード マネージャー」画面を閉じる } else //「Google パスワード マネージャー」画面が開かなかった場合、ログを出力し、処理を終了する { PlayLib.TestLogError("「Google パスワード マネージャー」画面が開きませんでした"); return -1; } } else //「Google Chrome」画面が開かなかった場合 { PlayLib.TestLogError("「Google Chrome」画面が開きませんでした"); return -1; } return 0; } }