0

ウェブサイトをテストしようとしています。メニュー項目を除くほとんどの Web 要素にアクセスできます。

基本的にドロップダウンメニューがあり、Seleniumを使用してメニューをクリックして、ドロップダウンメニューを開きました。ここで、メニュー内の要素をクリックする必要がありますが、メニューは Web 要素としてではなく Javascript で記述されているように見えるため、メニュー項目にアクセスする方法が見つかりません。

何か案は?私は特にSeleniumでこれを行う必要があります。

アップデート: - - - - - - - - - - - - - - - - - - - - - - - - -------------------------------------- ウェブサイトのメニューは、コンテキスト メニューの場合があります。左クリックで開きます。そのオプションにアクセスする方法はありますか?

4

4 に答える 4

0

メニューはページのjavascriptを使用して作成および操作できますが、htmlとして存在します。Seleniumを使用してこのHTMLを操作できます。

于 2012-11-30T09:32:24.140 に答える
0

コンテキストメニューを開くのはそれほど簡単ではありません。今まで、私はjavascriptの実行を介してマウスイベントをトリガーしています(他の解決策は見つかりませんでした)。それはその議論に似ています: 右クリックをトリガーする か、 Selenium2を右クリックします

基になるjs関数をトリガーするだけの場合は、便利な場合があります。ほとんどの場合、開発者は1つのエントリポイントを指定して呼び出すことができます。これにより、テストを構築し続ける可能性があり、しばらくすると、イベントをトリガーしてコンテキストメニューを開くjavascript関数を実装しました。

于 2012-12-03T12:24:22.210 に答える
0
 WebElement dropDownListBox = driver.findElement(By.id("Menu_id")); 
                  Select clickThis = new Select(dropDownListBox);                
                  clickThis.selectByVisibleText(activity); //If you know visible text
                //clickThis.getFirstSelectedOption();  // This will auto select first option in the drop down                
               // clickThis.selectByValue(1); //if you the value of drop down list items
于 2012-11-30T19:02:00.393 に答える
0

メニューをクリックし、セレンの上下矢印を使用して項目をスクロールする以外に、セレンを使用してメニュー項目にアクセスすることはできませんでした。

テストを記録/再生するために OpenScript を使用しましたが、うまくいきました。私の特定のケースでは、使用していた Web サイトでは、テスト可能にするためにフラグを設定する必要がありました。Web サイトのテストで問題が発生した場合は、開発者に連絡して、「自動化」フラグが設定されているかどうかを確認する必要がある場合があります。

于 2013-01-21T13:32:18.753 に答える