2017-08-30 12 views
1

私はセレンに新たなんだと自動化テストと私は、次のエラーメッセージが直面している:無効タイムアウトタイプ指定:ページのロード

org.openqa.selenium.InvalidArgumentException: Invalid timeout type specified: page load 

テスト/ログイン/ユーザーとパスを実行している非常に遅い型付けされているが - 10 - 15秒に1記号のように。私はログインできますが、上記のエラーメッセージでテストに失敗しました。 テストを少し速くするように修正するにはどうすればいいですか?これは問題だと思いますか?

のWindows 10 IE 11 すなわちドライバ32bit版3.5.0

やコード:

@Before 
public void setUp() throws Exception { 

    System.setProperty("webdriver.ie.driver", "D:\\Documents\\SeleniumDriver\\IEDriverServer.exe"); 

    this.driver = new InternetExplorerDriver(); 
    this.driver.manage().window().maximize(); 
    driver.manage().timeouts().implicitlyWait(4000, TimeUnit.MINUTES); 
    driver.get(Constant.URL); 

    ExcelUtils.setExcelFile(Constant.Path_TestData + Constant.File_TestData, "Sheet1"); 

} 

@SuppressWarnings("deprecation") 
@Test 
public void Activation() throws Exception { 

    LoginModel.LoginAdminCredentials(driver); 

    driver.manage().timeouts().pageLoadTimeout(4000, TimeUnit.MINUTES); 

    String currentURL = driver.getCurrentUrl(); 

    Assert.assertEquals("expectedURL", currentURL); 

} 
+1

driver.manage().timeouts().implicitlyWait(4000, TimeUnit.MINUTES); 

を交換することによって、あなたの@Before方法を試してみて、更新することができます).timeouts()。pageLoadTimeout(4000、TimeUnit.MINUTES); 'Test – nullpointer

+0

ありがとうございます。エラーは表示されません。そのテストでさえまだ遅すぎます。どのように速度の問題を解決するためにどのようなアイデア? – evitta15

答えて

0

ので、あなたは、あなたの@Test方法で

driver.manage().timeouts().pageLoadTimeout(4000, TimeUnit.MINUTES); 

を取り除く必要がありますdriver.manage().timeouts()値は、ドライバのインスタンスが有効になるまで有効です。デフォルト値またはカスタム値です。seユーザによって選択される。


はまた、あなたの実行に要する時間を短縮するために、あなたはおそらく(driver.manage `取り除く

driver.manage().timeouts().implicitlyWait(4000, TimeUnit.SECONDS); 
+0

完了!しかし、もう一度テストするには109,322秒かかります。それを10秒間実行する方法はありますか? – evitta15

+0

@ evitta15上記に関連する時間がかかる可能性のある他のコードはありませんか?ドライバの初期化、設定機能など? – nullpointer

+0

はい、そこに私の欠陥は、テストに指しています。エクセル+定数データからユーザーとパスを読み込むクラスがあります: – evitta15

関連する問題