日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

java控制html弹出框,Selenium+java - 弹出框处理

發布時間:2023/12/31 编程问答 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 java控制html弹出框,Selenium+java - 弹出框处理 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

一、彈出框分類:

彈出框分為兩種,一種基于原生JavaScript寫出來的彈窗,另一種是自定義封裝好的樣式的彈出框,本文重點介紹原生JavaScript寫出來的彈窗,另一種彈窗用click()基本就能搞定。

原生JavaScript寫出來的彈窗又分為三種:

alert

confirm

prompt

二、彈窗處理常用方法:

alert/confirm/prompt彈出框操作主要方法有:

driver.switchTo().alert():切換到alert彈出框上

getText():獲取文本值

accept() :點擊"確認"

dismiss() :點擊"取消"或者關閉對話框

send_keys() :輸入文本值 --僅限于prompt,在alert和confirm上沒有輸入框

三、被頁面html源代碼:

彈窗練習案例

function checkup() {

if (window.confirm("確定要刪除嗎?")) {

return true;

} else {

return false;

}

}

function welcome() {

var myname = prompt("請輸入你的姓名:");

if (myname != null) {

alert("你好," + myname);

} else {

alert("你好 my friend.");

}

}

刪除按鈕

點擊加入我們

四、alert彈窗處理

具體實例代碼如下:

@Test

public void testAlert() {

driver.get("file:///C:/Users/Administrator/Desktop/popup.html");

driver.manage().window().maximize();

driver.manage().timeouts().implicitlyWait(30, TimeUnit.SECONDS);

driver.findElement(By.id("alert")).click();

//獲取alert對話框

Alert alert = driver.switchTo().alert();

//獲取對話框文本

String text = alert.getText();

//打印警告對話框內容

System.out.println(text);

//alert對話框屬于警告對話框,我們這里只能接受彈窗

alert.accept();

}

五、confirm彈窗處理

具體實例代碼如下:

@Test

public void testConfirm() {

driver.get("file:///C:/Users/Administrator/Desktop/popup.html");

driver.manage().window().maximize();

driver.manage().timeouts().implicitlyWait(30, TimeUnit.SECONDS);

driver.findElement(By.id("dialog")).click();

//獲取confirm對話框

Alert alert = driver.switchTo().alert();

//獲取對話框的內容

String text = alert.getText();

//打印對話框的內容

System.out.println(text);

//點擊“確認”按鈕

alert.accept();

# 點擊“取消”按鈕

//alert.dismiss();

}

六、prompt彈窗處理

具體實例代碼如下:

@Test

public void testPrompt() {

driver.get("file:///C:/Users/Administrator/Desktop/popup.html");

driver.manage().window().maximize();

driver.manage().timeouts().implicitlyWait(30, TimeUnit.SECONDS);

driver.findElement(By.id("welcome")).click();

//獲取prompt對話框

Alert alert = driver.switchTo().alert();

//獲取對話框的內容

String text = alert.getText();

//打印對話框的內容

System.out.println(text);

//在彈框內輸入信息

alert.sendKeys("軟件測試君");

//點擊“確認”按鈕,提交輸入的內容

alert.accept();

}

六、運行結果

Java 學習筆記 (二) Selenium WebDriver Java 彈出框

下面這段實例實現了以下功能: 1. profile使用用戶本地電腦上的 (selenium 3有問題.因為selenium 3把profile復制到一個temp文件夾里,但并不復制回去.所以每次打開仍 ...

自動化測試-12.selenium的彈出框處理

前言 不是所有的彈出框都叫alert,在使用alert方法前,先要識別出到底是不是alert.先認清楚alert長什么樣子,下次碰到了,就可以用對應方法解決. alert\confirm\prompt ...

selenium瀏覽器彈出框alert 操作

1.簡介 在WebDriver中要處理JS生成的alert.confirm以及prompt,需要 switch_to.alert() 來選取(定位)警告彈窗,在對彈窗進行關閉.輸入等信息操作. 2.操 ...

Selenium Webdriver彈出框的種種類型

普通彈出框?div 一般這種?彈出框都屬于dom的一部分,我們查看一下頁面源碼就可以定位到改彈出框了,然后定位下右上角的那個關閉,?這里有id,所以很方便通過 dr.findElement(By.id ...

Selenium Webdriver彈出框 微博分享的內容控制與結果生成

browser.window_handles for i in ugc_url_l: js = 'window.location.href="{}"'.format(i) brow ...

基于Selenium2+Java的UI自動化(6)-操作Alert、confirm、prompt彈出框

alert.confirm.prompt這樣的js對話框在selenium1 時代處理起來比價麻煩,常常要用autoit來幫助處理.而現在webdriver對這些彈出框做了專門的處理,使用seleni ...

自動化測試基礎篇--Selenium彈出框alert

摘自https://www.cnblogs.com/sanzangTst/p/7685304.html ? 不是所有的彈出框都叫alert,在使用alert方法前,先要識別出到底是不是alert.先認 ...

java 彈出選擇目錄框(選擇文件夾),獲取選擇的文件夾路徑

java 彈出選擇目錄框(選擇文件夾),獲取選擇的文件夾路徑 java 彈出選擇目錄框(選擇文件夾),獲取選擇的文件夾路徑:int result = 0;File file = null;String ...

Python+Selenium筆記(九):操作警告和彈出框

#之前發的?driver.switch_to_alert() 這句雖然可以運行通過,但是會彈出警告信息(這種寫法3.x不建議使用) ?改成?driver.switch_to.alert就不會了. (一 ...

隨機推薦

NSObject+YYModel.h

01 - nil Nil NULL NSNull kCFNull ?的區別 參考:http://www.jianshu.com/p/3aaefb3bcf73 02 -?__bridge,__bridg ...

[綜]前景檢測GMM

tornadomeet 前景檢測算法_4(opencv自帶GMM) http://www.cnblogs.com/tornadomeet/archive/2012/06/02/2531705.html ...

Symbol ES6 新增的一種值類型數據,表示一種絕不重復的值

let s1 = Symbol(33); let s2 = Symbol(33); alert(typeof(s1)); //數據類型判斷 // alert(s1.toString()); //可把一 ...

vbs常用代碼

在網上查找資料的時候發現好多經典的vbs代碼收集起來也為了以后學習. VBS播放音樂 Dim wmp Set wmp = CreateObject("WMPlayer.OCX") ...

java面向對象編程--第十一章 異常處理

1.異常:描述出錯信息的對象. 字節碼校驗時,如發生錯誤,則會拋出異常. 2.所有異常的父類是Exception,異常可以捕獲,可以處理. 所有錯誤的父類是Error,錯誤可以捕獲,但不能處理. Th ...

c++特性:指向類成員的指針和非類型類模板參數和函數指針返回值 參數推導機制和關聯型別

一.c++允許定義指向類成員的指針,包括類函數成員指針和類數據成員指針 格式如下: class A { public: void func(){printf("This is a funct ...

基于 HTML5 WebGL 的 3D SCADA 主站系統

這個例子的初衷是模擬服務器與客戶端的通信,我把整個需求簡化變成了今天的這個例子.3D 的模擬一般需要鷹眼來輔助的,這樣找產品以及整個空間的概括會比較明確,在這個例子中我也加了,這篇文章就算是我對這次項 ...

C#-之屬性(2)

1. ? 屬性結合字段和方法得多個方面,對于對象的用戶來說,屬性就像字段(這樣就可以修改屬性值或者訪問),對于類的實現者來說,屬性包括兩個各部分get訪問器(用于讀取屬性)和set訪問器(用于設置屬性 ...

wrk編譯報錯gcc: Command not found

報錯信息如下: 問題原因:沒有安裝gcc 解決辦法: yum -y install gcc+ gcc-c++ 若需升級gcc,則采用如下命令: yum -y update gcc

在n個任意不相同的數中,輸出r個數的組合,并且n和r由鍵盤輸入。

主要是運用遞歸的思想,函數主要兩個參數,point是上一次取到的位置,picked主要記錄在數組b中所取的元素的個數,函數的每一輪遞歸都會取一個數. ? package pack; import ja ...

總結

以上是生活随笔為你收集整理的java控制html弹出框,Selenium+java - 弹出框处理的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。