最近、Webdriver の Web レベルの自動テスト コードを作成していますが、問題が発生しました。1 つのページを開くには 1 つのタブをクリックすると、ページにタブが 1 つあります。 2番目のページを確認する必要があります。タブを開いてページを見つけようとしましたが、見つかりませんでした。コードを確認すると、このタグが iframe 内にネストされた新しいページを開くことがわかったので、関連する位置決め方法をインターネットで検索しました。
1. iFrame に ID または名前がある場合
//id="frame1" でフレームを入力し、id="div1" で div を見つけ、id= で入力ボックスを見つけます。 "入力1" 。
dr.switchTo().frame("frame1");
dr.findElement(By.id("div1"));
dr.findElement(By.id("input1"))
2. iFrame に ID も名前もない場合の一般的な状況
// フレームの位置を見つけてフレームを選択します
WebElement Frame=driver.findElement(By.xpath( "/html/ body/ div[2]/div[8]/div[2]/div[3]/div/div[2]/div/iframe" ));
driver.switchTo().frame(frame);
3. iFrame から飛び出す
//フレームから飛び出て、デフォルトのコンテンツに入ります。id="id1"
dr.switchTo().defaultContent();
を使用して div を再配置します。 dr.findElement (By.id("id1"))