selenium 訊息框元素定位處理

來源:互聯網
上載者:User

標籤:accept   pad   drive   傳回值   選擇   元素   syntax   div   dism   

以下內容來自於“風少”的部落格 《元素定位:selenium訊息框處理 (alert、confirm、prompt)》

 

基礎普及

alert對話方塊。細分三種,Alert,prompt,confirm

1. alert() 彈出個提示框 (確定)
警告訊息框 alert 方法有一個參數,即希望對使用者顯示的文本字串。該字串不是 HTML 格式。該訊息框提供了一個“確定”按鈕讓使用者關閉該訊息框,並且該訊息框是強制回應對話方塊,也就是說,使用者必須先關閉該訊息框然後才能繼續進行操作。

 

2. confirm() 彈出個確認框 (確定,取消)
確認訊息框 使用確認訊息框可向使用者問一個“是-或-否”問題,並且使用者可以選擇單擊“確定”按鈕或者單擊“取消”按鈕。confirm 方法的傳回值為 true 或 false。該訊息框也是強制回應對話方塊:使用者必須在響應該對話方塊(單擊一個按鈕)將其關閉後,才能進行下一步操作。

 

3. prompt() 彈出個輸入框(確定,取消)

提示訊息框 提供了一個文字欄位,使用者可以在此欄位輸入一個答案來響應您的提示。該訊息框有一個“確定”按鈕和一個“取消”按鈕。如果您提供了一個輔助字串參數,則提示訊息框將在文字欄位顯示該輔助字串作為預設響應。否則,預設文本為 "<undefined>"。

 

selenium處理:

alert() 提示框

1. driver.switchTo().alert(); 擷取alert

2. alert.accept(); 點確定

3. alert.dismiss(); 點取消

4. alert.getText();擷取alert的內容

 

1. alert() 

123456789 try{      Alert alert =driver.switchTo().alert();  //使用driver.switchTo().alert()方法擷取到alert對象      Assert.assertEquals("彈框實際文本", alert.getText()); //斷言彈框文本是否和預期一致      alert.accept(); //點擊確定        // alert.dismiss();  //點擊取消  }catch(NoAlertPresentException exception){ //彈框未顯示,則跑出異常      Assert.fail("嘗試操作的alert框沒有被找到");      exception.printStackTrace();  }

 

2. confirm()     ps:同alert一致

 

123456789 try{      Alert alert =driver.switchTo().alert();        Assert.assertEquals("彈框實際文本", alert.getText());       alert.accept();      // alert.dismiss();   }catch(NoAlertPresentException exception){      Assert.fail("嘗試操作的alert框沒有被找到");      exception.printStackTrace();  }

  

3. prompt() 

 

1234567891011 try{      Alert alert =driver.switchTo().alert();        Assert.assertEquals("彈框實際文本", alert.getText());              alert.sendKeys("promt框中輸入的內容");      alert.accept();      // alert.dismiss();   }catch(NoAlertPresentException exception){      Assert.fail("嘗試操作的alert框沒有被找到");      exception.printStackTrace();  }

 

selenium 訊息框元素定位處理

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.