国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

軟件測試/測試開發(fā)丨Selenium 網(wǎng)頁frame與多窗口處理

這篇具有很好參考價(jià)值的文章主要介紹了軟件測試/測試開發(fā)丨Selenium 網(wǎng)頁frame與多窗口處理。希望對大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

點(diǎn)此獲取更多相關(guān)資料

本文為霍格沃茲測試開發(fā)學(xué)社學(xué)員學(xué)習(xí)筆記分享
原文鏈接:https://ceshiren.com/t/topic/27048

一、多窗口處理.

1.1、多窗口簡介

點(diǎn)擊某些鏈接,會(huì)重新打開?個(gè)窗?,對于這種情況,想在新頁?上操作,就
得先切換窗?了。
獲取窗?的唯?標(biāo)識?句柄表?,所以只需要切換句柄,就可以在多個(gè)頁?靈
活操作了

1.2、多窗口處理流程

  • 先獲取當(dāng)前窗口的句柄driver.current_window_handle
  • 再獲取所有的窗口句柄driver.windows_handles
  • 然后判斷當(dāng)前窗口是否為需要操作的窗口,如果不是則,切換到下一個(gè)窗口,如果是,則在當(dāng)前窗口進(jìn)行操作
    def test_switch_window(self):
        """窗口切換操作"""
        # 1、打開百度
        self.driver.get("https://www.baidu.com")
        print(self.driver.title, self.driver.current_window_handle)
        # 2、打開搜狗
        self.driver.switch_to.new_window()
        self.driver.get("https://www.sougou.com")
        print(self.driver.title, self.driver.current_window_handle)
        # 3、打開hao360
        self.driver.switch_to.new_window()
        self.driver.get("https://hao.360.com/")
        print(self.driver.title, self.driver.current_window_handle)
        # 4、打開測試人
        self.driver.switch_to.new_window()
        self.driver.get("https://ceshiren.com")
        print(self.driver.title, self.driver.current_window_handle)
        handles = self.driver.window_handles
        print(handles)
        self.driver.switch_to.window(handles[0])
        self.driver.switch_to.window(handles[-1])
        print(self.driver.title)

二、多網(wǎng)頁frame處理

2.1、frame簡介

在web自動(dòng)化中,如果一個(gè)元素始終無法定位,那么很有可能是frame中

  • 什么是frame呢?

frame是html的框架,所謂框架就是可以在同一個(gè)頁面顯示不止一個(gè)區(qū)域,基于html框架,又可以分為垂直框架和水平框架(cols,rows)

  • frame分類

    • frame標(biāo)簽分為frameset,ifame、frame三種
    • frameset和普通的標(biāo)簽一樣,不會(huì)影響正常的元素定位,可以使用index、id、name、webelement等方式定位到frame
    • frame、iframe相當(dāng)于selenium而言,則需要進(jìn)行一些特殊的操作后,才能到定位到元素

2.2、多frame切換

  • frame存在兩種

    • 一種嵌套的
    • 一種未嵌套的
  • 切換frame文章來源地址http://www.zghlxwxcb.cn/news/detail-689183.html

    • driver.swich_to.frame():根據(jù)元素id、index切換frame
    • driver.switch_to.default_content():切換到默認(rèn)的frame
    • deiver.switch_to.parent_frame():切換到父級frame

未嵌套的frame

  • driver.switch_to.frame(‘frame的id’):有id時(shí)優(yōu)先使用id
  • driver.switch_to.frame(‘frame-index’):沒有id的時(shí)間根據(jù)索引來處理,索引從0開始

嵌套的frame

  • 對于嵌套的frame,則先進(jìn)入到frame的父節(jié)點(diǎn),再進(jìn)到子節(jié)點(diǎn),然后可以就可以子節(jié)點(diǎn)中的元素對象進(jìn)行操作了
  • driver.switch_to.frame(“父節(jié)點(diǎn)”)
  • driver.switch_to.frame(“子節(jié)點(diǎn)”)
    def test_switch_frame(self):
        # ? 打開包含frame的web頁? https://www.runoob.com/try/try.php?filename=jqueryui-api-droppable
        # ? 打印’請拖拽我’元素的?本
        # ? 打印’點(diǎn)擊運(yùn)?’元素的?
        self.driver.get("https://www.runoob.com/try/try.php?filename=jqueryui-api-droppable")
        self.driver.switch_to.frame("iframeResult")
        ele01 = self.driver.find_element(By.ID, "draggable")
        print(ele01.text)
        ele02 = self.driver.find_element(By.ID, "droppable")
        print(ele02.text)
        self.action.drag_and_drop(ele01, ele02).perform()
        time.sleep(3)
        self.driver.switch_to.alert.accept()
        # self.driver.switch_to.default()
        # self.driver.switch_to.parent_frame()

到了這里,關(guān)于軟件測試/測試開發(fā)丨Selenium 網(wǎng)頁frame與多窗口處理的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 軟件測試/測試開發(fā)/全日制/測試管理丨Web測試框架Selenium

    軟件測試/測試開發(fā)/全日制/測試管理丨Web測試框架Selenium

    Selenium是一個(gè)用于自動(dòng)化Web應(yīng)用程序測試的開源框架,具有許多特點(diǎn)和優(yōu)勢,使其成為最受歡迎的Web自動(dòng)化測試工具之一,是許多團(tuán)隊(duì)首選的Web自動(dòng)化測試工具之一。 Selenium框架的特點(diǎn)包括: 跨瀏覽器支持: ?Selenium支持多種瀏覽器,包括Chrome、Firefox、Edge、Safari等,使測試在

    2024年01月16日
    瀏覽(34)
  • 軟件測試/測試開發(fā)丨Selenium Web自動(dòng)化測試基本操作

    本文為霍格沃茲測試開發(fā)學(xué)社學(xué)員學(xué)習(xí)筆記分享 原文鏈接:https://ceshiren.com/t/topic/26901 模擬功能測試中對瀏覽器的操作 get方法打開瀏覽器 refresh方法刷新頁面 用back方法回退到上一個(gè)界面 maximize_window方法使窗口最大化 minimize_window方法使窗口最小化 標(biāo)簽: a 屬性:href 類屬性

    2024年02月10日
    瀏覽(30)
  • 軟件測試/測試開發(fā)丨Selenium Web自動(dòng)化測試 高級控件交互方法

    本文為霍格沃茲測試開發(fā)學(xué)社學(xué)員學(xué)習(xí)筆記分享 原文鏈接:https://ceshiren.com/t/topic/27045 使用場景 對應(yīng)事件 復(fù)制粘貼 鍵盤事件 拖動(dòng)元素到某個(gè)位置 鼠標(biāo)事件 鼠標(biāo)懸停 鼠標(biāo)事件 滾動(dòng)到某個(gè)元素 滾動(dòng)事件 使用觸控筆點(diǎn)擊 觸控筆事件(了解即可) https://www.selenium.dev/documentati

    2024年02月09日
    瀏覽(62)
  • 軟件測試/測試開發(fā)/全日制|Python selenium CSS定位方法詳解

    軟件測試/測試開發(fā)/全日制|Python selenium CSS定位方法詳解

    簡介 CSS選擇器是一種用于選擇HTML元素的模式。它允許我們根據(jù)元素的標(biāo)簽名、類名、ID、屬性等屬性進(jìn)行選擇。CSS選擇器的語法簡單而靈活,是前端開發(fā)中常用的定位元素的方式。 selenium中的css定位,實(shí)際是通過css選擇器來定位到具體元素,css選擇器來自于css語法。CSS定位有

    2024年01月17日
    瀏覽(26)
  • 軟件測試/測試開發(fā)/全日制/測試管理丨selenium 經(jīng)典的三種等待方式

    軟件測試/測試開發(fā)/全日制/測試管理丨selenium 經(jīng)典的三種等待方式

    在Selenium中,等待是一種重要的技術(shù),用于處理頁面加載和元素查找的時(shí)間差異。以下是Selenium中經(jīng)典的三種等待方式: 隱式等待: 描述: ?隱式等待是在查找所有元素時(shí)設(shè)置的全局等待時(shí)間。一旦設(shè)置,它將在整個(gè)測試執(zhí)行期間都起作用。 用法: ?設(shè)置隱式等待的代碼通常

    2024年01月17日
    瀏覽(26)
  • 軟件測試/測試開發(fā)丨Selenium Web自動(dòng)化多瀏覽器處理

    軟件測試/測試開發(fā)丨Selenium Web自動(dòng)化多瀏覽器處理

    本文為霍格沃茲測試開發(fā)學(xué)社學(xué)員學(xué)習(xí)筆記分享 原文鏈接:https://ceshiren.com/t/topic/27185 用戶使用的瀏覽器(firefox,chrome,IE 等) web 應(yīng)用應(yīng)該能在任何瀏覽器上正常的工作,這樣能吸引更多的用戶來使用 是跨不同瀏覽器組合驗(yàn)證網(wǎng)站或 web 應(yīng)用程序功能的過程 是兼容性測試的一個(gè)

    2024年02月09日
    瀏覽(27)
  • 軟件測試/測試開發(fā)/全日制/測試管理丨跨平臺設(shè)備管理方案 Selenium Grid

    軟件測試/測試開發(fā)/全日制/測試管理丨跨平臺設(shè)備管理方案 Selenium Grid

    Selenium Grid是一個(gè)用于實(shí)現(xiàn)分布式測試的工具,允許在多個(gè)機(jī)器和多個(gè)瀏覽器上同時(shí)運(yùn)行Selenium測試。它可以有效地管理和分發(fā)測試任務(wù),支持跨平臺和跨瀏覽器的測試。以下是關(guān)于Selenium Grid的一些關(guān)鍵特點(diǎn)和使用方案: 分布式測試: ?Selenium Grid支持在不同的計(jì)算機(jī)和操作系

    2024年01月20日
    瀏覽(26)
  • 軟件測試 -- 自動(dòng)化測試(Selenium)

    ????????在這里記錄一下? 自動(dòng)化測試 -- Selenium 的一些基礎(chǔ)知識點(diǎn),只記錄方法。 Selenium 瀏覽器操作 Selenium 元素定位(包含 Web 表單) findElement 和 findElements ????????findElement 和 findElements 都可以用于定位元素,它們都需要傳入一個(gè) By 類型,但是他們的返回值不同,區(qū)

    2024年04月22日
    瀏覽(56)
  • 【軟件測試】自動(dòng)化測試selenium

    【軟件測試】自動(dòng)化測試selenium

    目錄 一、什么是自動(dòng)化測試 二、Selenium介紹 1、Selenium是什么 2、Selenium的原理 三、了解Selenium的常用API 1、webDriver API?? 1.1、元素定位 1.1.1、CSS選擇器 1.1.2、Xpath元素定位 1.1.3、面試題 ?1.2、操作測試對象 1.3、添加等待? 1.4、打印信息 ?1.5、瀏覽器的操作 1.6、鍵盤事件 1.7、鼠

    2024年01月17日
    瀏覽(26)
  • 軟件測試 自動(dòng)化測試selenium篇(一)

    軟件測試 自動(dòng)化測試selenium篇(一)

    目錄 一、什么是自動(dòng)化測試 ?單元測試 ?接口自動(dòng)化 ?UI自動(dòng)化 二、如何實(shí)施自動(dòng)化測試 ?自動(dòng)化測試需要了解的技能 三、selenium介紹 webdriver的工作原理: ?四、Selenium+Java環(huán)境搭建 ? ? ? ? ? ? ? ? ? ?驗(yàn)證環(huán)境是否搭建成功 創(chuàng)建java項(xiàng)目,添加pom文件中添加依賴 常見問題

    2024年02月07日
    瀏覽(37)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包