2016-12-01 17 views
0

ドロップダウンリストから値を選択しようとしていますが、スクリプトが失敗し続けます。私が選択している値は、値として 'マネージャ'というExcel文書からです。ここドロップダウンから1つの値を選択

は私xparth

enter image description here

、ここでは私のコンソールが

enter image description here

である私は別のソリューションを試みたが、運を持ちます。以下のコードは私がエラーを生成しようとしているものです。

Select select = new Select(driver.findElement(By.xpath("//*[@id='main']/div/div[2]/form/div[2]/div[7]/div/div[1]/div[1]"))); 
      select.deselectAll(); 
      select.selectByVisibleText(AGR); 

ご協力いただきありがとうございます。

+0

これは、オプションタグを含むselectタグではなく、他のdivタグの値での従来のドロップダウンではありません。コンテナを開くコードを記述し、必要なオプションを選択する必要があります。 – Grasshopper

+0

@Grasshopperどうすればそれをやり遂げることができますか?すべての例が役に立つかもしれません。先進的にありがとう。 – Djkgotso

+0

プレースホルダテキスト「Please Select」を含むinput要素を探します。この要素をクリックするコード。プルダウンが表示されます。これは、 'selectize-dropdown form-control single'クラスのdivに含まれています。暗黙の待機を使用してこのdivの可視性を待つ必要があります。最後に、 'selectize-dropdown-content'クラスでdivにある選択するオプションを探し、xpath(text()、 'blah blah')を使ってロケーター戦略として選択するテキストを使用します。次に、この要素をクリックします。私が正しいならば働かなければならない。 – Grasshopper

答えて

0

コードはselect.selectByVisisbleText( "Manager")である必要があります。部分テキストは受け入れられません。完全なテキストを入力する必要があります。

0

最終的に私は私の問題を解決しました。私がしなければならなかったのは、xPathを見つけてexcelの文書からキーを送り、キーボードのenterをクリックすることでした。これは、コード上でハードコードするのではなく、Excel文書のドロップダウンにある名前を変更できることを意味します。

WebElement webElement = driver.findElement(By.xpath("//*[@id='main']/div/div[2]/form/div[2]/div[7]/div/div[1]/div[1]/input"));//You can use xpath, ID or name whatever you like 
      driver.findElement(By.xpath("//*[@id='main']/div/div[2]/form/div[2]/div[7]/div/div[1]/div[1]/input")).sendKeys(AGR); 
      webElement.sendKeys(Keys.ENTER); 

希望私のソリューションは、同じ問題を抱えている人を助けることができます。

関連する問題