2017-07-25 22 views
1

私はウェブサイトを持っています。それらのフォームは、最終的な回答に達するために1つ1つずつ記入する必要があります。ユーザーごとに一意に生成されます。手動で定期的な基盤の上にそれをテストpowershellスクリプトを使用してウェブサイトの検証テストを自動化しますか?

は以下の手順を実行します

1)オープンwww.xyz.com

2)氏名、年齢、性別をクリックつまり最初のフォームの詳細に次の

3を埋めます)2番目のフォームの詳細(住所、郵便番号、雇用タイプ)を入力してください。

4)フォーム5までを記入してください。

5)終了をクリックした後、私はトークン番号の最後のページにリダイレクトされます。

質問:PowerShellスクリプトまたは他のスクリプト言語を使用してこのテストを自動化する方法。スクリプトを実行すると、すべての手順が1つずつ完了し、トークンは不要です。テストが正常に終了した場合は出力として出力しますか?

+0

セレンと組み合わせたpython – Ludisposed

答えて

1

デベロッパーツールを有効にして(F12キーを押して)、ChromeまたはExplorerでドキュメントを読み込み、見つけたいオブジェクトを調べます。ウェブサイト用に読み込まれたドキュメントのDOMを見ることができます。ここで

は、サンプルのログインです:ログインすると

$ie = New-Object -ComObject 'internetExplorer.Application' 
$ie.Visible= $true 
$username="[email protected]" 
$password="password" 
$ie.Navigate("https://www.yourwebsite.com") 
While ($ie.Busy -eq $true) 
{ 
Start-Sleep -Seconds 3 
} 
$usernamefield = $ie.document.getElementByID('Email_ID').value="$username" 
$passwordfield = $ie.document.getElementByID('Password').value="$password" 
$Link = $ie.document.getElementByID('Login_ID') 
$Link.click() #or $Link.submit() 
$ie.Quit() 

、あなたがオブジェクトを選んで起動して、同じように進めることができます。

注:適切なObjectIdを選択し、それに従ってgetElementByIDに配置します。

希望します。

+0

while文では、現在のステートメントの代わりに 'While($ ie.Busy){}'と入力するだけで済みます。私はあなたのPSセッションが無限ループでハングしないように、IEがハングする場合に備えて、kill-processチェック 'Do {logic} While($ ie.Busy)'を提案します。 – TheIncorrigible1

関連する問題