Selenium简单基础详解(I)

简介: 学习的最大理由是想摆脱平庸,早一天就多一份人生的精彩;迟一天就多一天平庸的困扰。各位小伙伴,如果您:

学习的最大理由是想摆脱平庸,早一天就多一份人生的精彩;迟一天就多一天平庸的困扰。各位小伙伴,如果您:

想系统/深入学习某技术知识点…

一个人摸索学习很难坚持,想组团高效学习…

想写博客但无从下手,急需写作干货注入能量…

热爱写作,愿意让自己成为更好的人…


一、什么是Selenium

定义

Selenium是一个用于Web应用程序测试的工具。Selenium测试直接运行在浏览器中,就像真正的用户在操作一样。支持的浏览器包括IE(7, 8, 9, 10, 11),Mozilla Firefox,Safari,Google Chrome,Opera,Edge等。这个工具的主要功能包括:测试与浏览器的兼容性——测试应用程序看是否能够很好得工作在不同浏览器和操作系统之上。测试系统功能——创建回归测试检验软件功能和用户需求。支持自动录制动作和自动生成.Net、Java、Perl等不同语言的测试脚本。


因此,Selenium也被叫做“浏览器自动化测试框架”。(以上定义摘自百度百科)


功能

框架底层使用JavaScript模拟真实用户对浏览器进行操作。测试脚本执行时,浏览器自动按照脚本代码做出点击,输入,打开,验证等操作,就像真实用户所做的一样,从终端用户的角度测试应用程序。


使浏览器兼容性测试自动化成为可能,尽管在不同的浏览器上依然有细微的差别。


使用简单,可使用Java,Python等多种语言编写用例脚本。


二、下载模块

1、pip下载

windows电脑使用winR+cmd的方式进入命令行终端,使用pip进行安装,具体命令为


pip install selenium

2、安装浏览器驱动webDriver

Selenium库中有个叫webDriver的API。webDriver即可以加载网站,也可以用来查找页面元素、与页面上的元素进行交互,以及执行其他动作。


三、基操(只演示谷歌浏览器)

一、打开Chorme浏览器:

from selenium import webdriver

#导入模块

browser = webdriver.Chorme()

#浏览器的初始化

browser.get('https://www.baidu.com/')

#向百度发送请求

print(browser.title)

#输出页面标题

browser.quit()

#结束进程

二、无界面模式

from selenium import webdriver

# 1. 实例化配置对象

chrome_options = webdriver.ChromeOptions()

# 2. 配置对象添加开启无界面命令

chrome_options.add_argument('--headless')

# 3. 配置对象添加禁用gpu命令

chrome_options.add_argument('--disable-gpu')

# 4. 实例化带有配置对象的browser 对象

browser = webdriver.Chrome(chrome_options=chrome_options)

browser.get('https://www.baidu.com/')

# 查看请求的数据

print(browser.page_source)  # 查看渲染后的数据,就可以Xpath进行解析获取数据了

print(browser.get_cookies())  # 查看请求页面后的cookies值

print(browser.current_url)  # 查看请求url

# 关闭页面

browser.close()

# 关闭浏览器

browser.quit()

三、元素定位

通过selenium的基本使用可以简单操作浏览器,如此一来,学习定位元素的其他方法


from selenium import webdriver

from selenium.webdriver.common.by import By

chrome_options = webdriver.ChromeOptions()

chrome_options.add_argument('--headless')

browser = webdriver.Chrome(chrome_options=chrome_options)

url = 'https://www.xxx.com/'

browser.get(url)

html_str = browser.page_source

返回内容如下


<div class="panel">

   <div class="panel-heading">

       <h4>Hello</h4>

   </div>

   <div class="panel_body">

       <ul class="list" id="list-1" name="element">

           <li class="element">Foo</li>

           <li class="element">Bar</li>

           <li class="element">Jay</li>

       </ul>

       <ul class="list list-small" id="list-2">

           <li class="element">Foo</li>

               <a href="https://www.baidu.com">百度官网</a>

           <li class="element">Bar</li>

       </ul>

   </div>

</div>

目录
相关文章
|
10月前
|
Web App开发 数据采集 前端开发
什么是Selenium
什么是Selenium
199 0
|
2月前
|
Web App开发 IDE 测试技术
Selenium WebDriver使用
Selenium WebDriver使用
22 1
|
2月前
|
Java 测试技术 持续交付
深入理解与应用Selenium WebDriver进行自动化测试
【4月更文挑战第25天】 在现代软件开发过程中,自动化测试已成为确保产品质量和加速市场发布的关键步骤。Selenium WebDriver作为业界广泛采用的自动化测试工具之一,提供了一种灵活且高效的方式来模拟用户与Web应用程序交互。本文将探讨Selenium WebDriver的核心概念、架构以及实际应用中的技巧和最佳实践。通过深入分析其工作原理及常见问题解决方案,旨在帮助测试工程师提升测试效率,确保测试结果的准确性和可靠性。
21 1
|
2月前
|
Web App开发 Shell Python
|
11月前
|
Web App开发 Java 测试技术
selenium-介绍和安装
selenium-介绍和安装
|
8月前
|
Web App开发 前端开发 JavaScript
selenium使用总结
selenium使用总结
38 0
|
Web App开发 JavaScript 测试技术
Selenium Webdriver 简易教程2
Selenium Webdriver 简易教程2
107 0
|
Web App开发 前端开发 JavaScript
Selenium Webdriver 简易教程
Selenium Webdriver 简易教程
105 0
|
Web App开发
selenium学习
selenium学习
72 0
selenium学习