2017-12-29 51 views
0

商品属性を3つのドロップダウンで選択する必要がありますが、値段が高くない場合や、価格設定ボタンをリフレッシュしたり、プロセスに失敗した場合、ドロップダウン内で選択した値を保護またはロックして確実に削除できないようにすることは可能ですか?ドロップダウンの値が選択されていません

後は、ランダムに取り組んで、私の単純なコードです:私は値前の仕上げをチェックするための条件を入れてみました

Select select1 = new Select(config.canContractDurationSelect); 
select1.selectByVisibleText(duration); 

Select select2 = new Select(config.canDurationSelect); 
select2.selectByVisibleText(canDuration); 

Select select3 = new Select(config.canBoardSelect); 
select3.selectByVisibleText(board); 

driver.navigate().refresh(); 

Actions action = new Actions(driver); 
action.doubleClick(config.goToPricingButton).perform(); 

が、それは同じ効果があり、例えば:

String selectedCanBoard = config.canBoardSelect.getText(); 

    if (!selectedCanBoard.equals(board)) { 

    new Select(config.canBoardSelect).selectByValue(board); 
    driver.navigate().refresh(); 
      } 

感謝たくさん!

+2

なぜ価格設定ボタンをクリックする前にサイトを更新しますか? –

+0

何とかして、たとえgoToPricingButtonがidで識別され、まだ見えていても、セレニウム(私のスクリプト)はそれを見つけることができません。リフレッシュは何か必死の回避策でした。 –

答えて

0

私が悪いですが、選択が行われ、バックグラウンドで行われた選択がクリアされることがあるたびに、画像が表示されています。画像を読み込むための選択が終わるたびに待って、問題を解決しました。

wait.until(ExpectedConditions.invisibilityOf(config.loadingImage)); 
関連する問題