selenium 簡介以及 selenium 環境配置

文章目錄

  • 一、初識 selenium
    • 1.selenium 簡介
    • 2.selenium 三大組件
    • 3.selenium工作過程和原理
    • 4.selenium自動化測試流程
    • 5.selenium優點
  • 二、自動化測試
    • 1.UI自動化本質
    • 2.UI自動化的前提
    • 3.適用場景
    • 4.UI自動化的原則
    • 5.UI自動化的覆蓋率
  • 三、selenium 環境配置


一、初識 selenium

1.selenium 簡介

selenium是一個用于web應用程序自動化測試工具,可以直接運行在瀏覽器,就行用戶真正的在瀏覽器操作一樣,支持的瀏覽器包括:IE,Firefox,Chrome,Safari

??? ???主要功能包括:測試與瀏覽器的兼容性——測試你的應用程序看是否能夠很好得工作在不同瀏覽器和操作系統之上。

2.selenium 三大組件

  • WebDriver:是selenium提供的一個API,用于操作瀏覽器。

  • IDE:是selenium提供的一個插件,可以錄制用戶的操作

  • Grid:是selenium分布式的工具,實現在多個瀏覽器操作。使用Grid可以輕松實現用例的分布式執行。

編寫自動化主要使用WebDriver來實現,我們后面所指的selenium默認也是WebDriver


3.selenium工作過程和原理

  • 1.對于每一條Selenium腳本,一個http請求會被創建并且發送給瀏覽器的驅動

  • 2.瀏覽器驅動中包含了一個HTTP Server,用來接收這些http請求

  • 3.HTTP Server接收到請求后根據請求來具體操控對應的瀏覽器

  • 4.瀏覽器執行具體的測試步驟

  • 5.瀏覽器將步驟執行結果返回給HTTP Server

  • 6.HTTP Server又將結果返回給Selenium的腳本,如果是錯誤的http代碼我們就會在控制臺看到對應的報錯信息


4.selenium自動化測試流程

  • 1.分析需求

  • 2.制定測試計劃

  • 3.設計用例

  • 4.搭建測試框架(公用對象,公用環境,公用方法,工公用測試數據)

  • 5.編寫腳本

  • 6.分析測試結果

  • 7.維護測試腳本


5.selenium優點

  • 1.開源,免費

  • 2.支持多種瀏覽器IE,Firefox,Chrome,Safari

  • 3.支持多平臺 Windows,Linux,Mac

  • 4.支持多語言 python,java,c

  • 5.對web支持良好

  • 6.簡單,靈活

  • 7.支持分布式測試用例執行



二、自動化測試

1.UI自動化本質

  • 定位元素–操作元素–模擬頁面操作–斷言–測試報告

2.UI自動化的前提

  • 1.需求不能頻繁動

  • 2.UI穩定

  • 3.項目周期長

  • 4.回歸測試頻繁

3.適用場景

  • 冒煙測試,回歸測試

4.UI自動化的原則

  • 1.一個case完成一個功能測試(可以從功能用例摘除可以自動化的禁行標識)

  • 2.一個腳本是一個完整的業務場景

  • 3.每個腳本可以獨立運行,沒有依賴關系

  • 4.設計合適的檢查點

  • 5.設計良好的框架

5.UI自動化的覆蓋率

  • 是根據項目來說,并不是占比越高越好,會受到項目周期,迭代次數等影響

三、selenium 環境配置

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/diannao/39016.shtml
繁體地址,請注明出處:http://hk.pswp.cn/diannao/39016.shtml
英文地址,請注明出處:http://en.pswp.cn/diannao/39016.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

單點登錄demo

gitee.com 搜索xxl(許雪里) 的sso 操作demo 完整流程圖

網絡安全控制相關技術

1.惡意代碼(Malware) 網絡從出現、發展演進都始終伴隨著安全方面的問題,只是每個階段表現的形式不同而已。在網絡安全方面,不能不提進行網絡攻擊的網絡病毒,或者說惡意代碼(Malware)。所有惡意…

MySQL中的網絡命名空間支持

Network Namespace Support(網絡命名空間支持) 提供了在Linux系統中創建和管理多個隔離網絡空間的能力。網絡命名空間是來自主機系統的網絡堆棧的邏輯副本。網絡命名空間對于設置容器或虛擬環境非常有用。每個名稱空間都有自己的IP地址、網絡接口、路由表…

什么是應用安全態勢管理 (ASPM):綜合指南

軟件開發在不斷發展,應用程序安全也必須隨之發展。 傳統的應用程序安全解決方案無法跟上當今開發人員的工作方式或攻擊者的工作方式。 我們需要一種新的應用程序安全方法,而ASPM在該方法中發揮著關鍵作用。 什么是 ASPM? 應用程序安全…

配電智能網關賦能電力系統智能化運行維護

隨著智能電網和物聯網技術的不斷發展,兩者之間的融合應用成為電力行業的重要趨勢。配電智能網關作為連接兩者的關鍵設備,在智能電網的物聯網應用中發揮著重要作用。 配電智能網關能夠實現對電力系統的實時監控、數據采集、遠程控制等功能,為…

已解決org.omg.CORBA.portable.RemarshalException:在CORBA中需要重新編組的正確解決方法,親測有效!!!

已解決org.omg.CORBA.portable.RemarshalException:在CORBA中需要重新編組的正確解決方法,親測有效!!! 目錄 問題分析 出現問題的場景 服務器端代碼 客戶端代碼 報錯原因 解決思路 解決方法 1. 檢查網絡連接 …

力扣:LCR 024. 反轉鏈表(Java)

目錄 題目描述:示例 1:示例 2:代碼實現: 題目描述: 給定單鏈表的頭節點 head ,請反轉鏈表,并返回反轉后的鏈表的頭節點。 示例 1: 輸入:head [1,2,3,4,5] 輸出&#x…

Xinstall智能安裝頁面:一鍵喚起App,提升用戶體驗

在移動互聯網時代,App已經成為我們日常生活中不可或缺的一部分。然而,隨著App數量的不斷增加,用戶面臨著越來越多的選擇,如何快速、便捷地安裝并打開App成為了用戶的一大痛點。針對這一問題,Xinstall憑借其強大的技術實…

數據結構——Hash Map

1. Hash Map簡介 Hash Map是一種基于鍵值對的數據結構,通過散列函數將鍵映射到存儲位置,實現快速的數據查找和存儲。它可以在常數時間內完成查找、插入和刪除操作,因此在需要頻繁進行這些操作時非常高效。 2. Hash Map的定義 散列表&#xff…

計組_程序的機器級代碼表示

2024.06.13:計算機組成原理程序的機器級代碼表示 第15節 程序的機器級代碼表示 5.1 x86的匯編指令格式5.2 常用指令 眼熟最基礎的匯編語法和助記符即可 5.1 x86的匯編指令格式 5.2 常用指令

WinSCP 登錄跳板機

使用 WinSCP 登錄跳板機(跳板機是一種中間服務器,用于安全連接到其他服務器)需要進行一些配置。這里是一個簡單的步驟指南: 準備工作 下載和安裝 WinSCP:如果你還沒有 WinSCP,可以從 WinSCP 官方網站 下載…

DeepMind的新論文,長上下文的大語言模型能否取代RAG或者SQL這樣的傳統技術呢?

長上下文大型語言模型(LCLLMs)確實引起了一些關注。這類模型可能使某些任務的解決更加高效。例如理論上可以用來對整本書進行總結。有人認為,LCLLMs不需要像RAG這樣的外部工具,這有助于優化并避免級聯錯誤。但是也有許多人對此持懷…

【PYG】簡單分析 Cora 數據集的文件 cora.cites 和 cora.content

手動下載 Cora 數據集的文件 cora.cites 和 cora.content 后,你可以通過以下步驟將它們加載到 Python 環境中,并使用 PyTorch Geometric 或其他工具進行進一步處理和分析。 數據集文件說明 cora.cites: 包含了論文之間的引用關系。每一行表示一條引用關…

WPF對象樣式

基本樣式設置 Style 設置指定對象的屬性 屬性: TargetType 引用在哪個類型上面,例如Button、Textblock。。 如果在控件對象里面設置Style,則TargetType必須指定當前控件名 只在作用域里面有效果,其他的相同控件沒有影響&…

統一的可觀察性和安全性如何增強你的業務?

作者:來自 Elastic Michael Calizo 利用人工智能、異常檢測和增強攻擊發現功能,在一個平臺上增強組織的可觀察性和安全性能力 當今數字環境中的組織越來越關注服務可用性,并保護其軟件免受惡意篡改和攻擊。傳統的安全和可觀察性工具通常以孤…

VBA打開其他Excel文件

前言 本節會介紹通過VBA實現打開其他excel文件,包括模糊匹配文件名稱、循環同時打開多個文件,并獲取工作表及工作簿進行數據操作后,對打開的文件進行保存并關閉操作。 一、打開固定文件名稱的文件 場景說明: 1.新建一個宏文件VBA…

通過Python將視頻添加圖片

from PIL import Image from moviepy.editor import *from configs.settings import PROJECT_PATHdef movie_add_image(video_config, type, video_path, out_path):# 加載視頻文件video VideoFileClip(video_path)all_time 0for config in video_config:image config.get(t…

【NFS】【部署】NFS文件系統Server端部署,及客戶端掛載

服務器準備 主機名IPk8s04192.168.199.24k8s05192.168.199.25 配置husts文件 vi /etc/hosts #追加 192.168.199.24 k8s04 192.168.199.25 k8s05Server端部署 yum install -y nfs-utils創建NFS存儲目錄 mkdir /data配置NFS服務 vi /etc/exports #添加 /data 192.168.…

【React】上傳文章封面基礎實現

<Form.Item label"封面"><Form.Item name"type"><Radio.Group onChange{onTypeChange}><Radio value{1}>單圖</Radio><Radio value{3}>三圖</Radio><Radio value{0}>無圖</Radio></Radio.Group&…

react 自定義 年-月-日 組件,單獨選擇年、月、日,并且產生聯動

自定義 年-月-日 組件 code import { useState } from react function Year_Month_Date() {const [yearList, setYearList] useState([])const [monthList, setMonthList] useState([])const [dateList, setDateList] useState([])const [currentYear, setCurrentYear] u…