自动化测试工具Selenium的基本使用方法,面试字节跳动的前端工程师该怎么准备

这篇具有很好参考价值的文章主要介绍了自动化测试工具Selenium的基本使用方法,面试字节跳动的前端工程师该怎么准备。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

8.小结

上述均可以改写成find_element(By.ID,‘kw’)的形式

find_elements_by_xxx的形式是查找到多个元素,结果为列表 import time from selenium import webdriver#驱动浏览器 from selenium.webdriver import ActionChains #滑动 from selenium.webdriver.common.by import By #选择器 from selenium.webdriver.common.by import By #按照什么方式查找,By.ID,By.CSS_SELECTOR from selenium.webdriver.common.keys import Keys #键盘按键操作 from selenium.webdriver.support import expected_conditions as EC #等待所有标签加载完毕 from selenium.webdriver.support.wait import WebDriverWait #等待页面加载完毕 寻找某些元素 browser=webdriver.Chrome() #调用Chrome 驱动,生成浏览器对象 wait=WebDriverWait(browser,10) #设置selenium等待浏览器加载完毕的最大等待时间 try: browser.get(‘https://www.baidu.com/’) #通过标签id属性进行定位 # browser.find_element(By.ID,‘kw’).send_keys(“美女”) # browser.find_element_by_id(‘kw’).send_keys(‘性感’) #通过标签name属性进行定位 # browser.find_element_by_name(“wd”).send_keys(“Linux”) # browser.find_element(By.NAME,‘wd’).send_keys(“美女”) #通过标签名称进行定位 # browser.find_element_by_tag_name(“input”).send_keys(“selenium”) # browser.find_element(By.TAG_NAME, ‘input’).send_keys(‘aaa’) # 通过CSS查找方式进行定位 # browser.find_element(By.CSS_SELECTOR, ‘#kw’).send_keys(‘python django’) # browser.find_element(By.CSS_SELECTOR, ‘#kw’).send_keys(‘泰山’) # 通过xphan方式定位 # browser.find_element_by_xpath(‘//*[@id=“kw”]’).send_keys(“python Tornado”) # browser.find_element(By.XPATH, ‘//*[@id=“kw”]’).send_keys(‘吐槽大会’) # 通过搜索 页面中 链接进行定位 # browser.find_element_by_link_text(“新闻”).click() #通过搜索 页面中 链接进行定位 ,可以支持模糊匹配 # browser.find_element_by_partial_link_text(“新”).click() # browser.find_element_by_partial_link_text(“闻”).click() finally: browser.find_element_by_id(“su”).click() time.time(3) browser.close() # 关闭浏览器browser.quit()

四、等待元素被加载


1、selenium只是模拟浏览器的行为,而浏览器解析页面是需要时间的(执行css,js),一些元素可能需要过一段时间才能加载出来,为了保证能查找到元素,必须等待

2、等待的方式分两种

wait=WebDriverWait(browser,10) #显式等待 wait1=browser.implicitly_wait(10) #隐式等待 wait.until(EC.presence_of_element_located((By.CLASS_NAME,‘tH0’))) test = wait.until(lambda x: x.find_element_by_xpath(‘xpath’)) ‘’’ 显式等待:指定等待某个标签加载完毕 隐式等待:等待所有标签加载完毕 ‘’’

五、元素交互操作


ActionChains

用selenium做自动化,有时候会遇到需要模拟鼠标操作才能进行的情况(如:iframe标签),比如单击、双击、点击鼠标右键、拖拽(滑动验证)等。而selenium给我们提供了一个类来处理这类事件——ActionChains

#iframe标签切换 #如果网页页面嵌套frame标签,子页面访问不到父页面的内容,父页面也访问不到子页面的内容所以需要切换; from selenium import webdriver from selenium.webdriver import ActionChains #鼠标键盘动作链 from selenium.webdriver.common.by import By # 按照什么方式查找,By.ID,By.CSS_SELECTOR from selenium.webdriver.common.keys import Keys # 键盘按键操作 from selenium.webdriver.support import expected_conditions as EC from selenium.webdriver.support.wait import WebDriverWait # 等待页面加载某些元素 import time browser=webdriver.Chrome() wait1=WebDriverWait(browser,10) browser.get(‘http://www.runoob.com/try/try.php?filename=jqueryui-api-droppable’) browser.switch_to.frame(‘iframeResult’)#切换到id=‘iframewrapper’的iframe子标签 action_chains=ActionChains(browser) #实例化1个动作链队列 source=browser.find_element_by_id(‘draggable’) #找到拖拽的源标签 target=browser.find_element_by_id(‘droppable’)#找到拖拽的目标标签 action_chains.drag_and_drop(source,target).perform()#把动作放到动作链中,perform()准备串行执行; ‘’’ click(on_element=None) ——单击鼠标左键 click_and_hold(on_element=None) ——点击鼠标左键,不松开 context_click(on_element=None) ——点击鼠标右键 double_click(on_element=None) ——双击鼠标左键 drag_and_drop(source, target) ——拖拽到某个元素然后松开 drag_and_drop_by_offset(source, xoffset, yoffset) ——拖拽到某个坐标然后松开 key_down(value, element=None) ——按下某个键盘上的键 key_up(value, element=None) ——松开某个键 move_by_offset(xoffset, yoffset) ——鼠标从当前位置移动到某个坐标 move_to_element(to_element) ——鼠标移动到某个元素 move_to_element_with_offset(to_element, xoffset, yoffset) ——移动到距某个元素(左上角坐标)多少距离的位置 perform() ——执行链中的所有动作 release(on_element=None) ——在某个元素位置松开鼠标左键 send_keys(*keys_to_send) ——发送某个键到当前焦点的元素 send_keys_to_element(element, *keys_to_send) ——发送某个键到指定元素 ‘’’ time.sleep(5) browser.quit() 关于ActionChains参看:http://blog.csdn.net/huilan_same/article/details/52305176

1.点击,清空

import time from selenium import webdriver#驱动浏览器 from selenium.webdriver import ActionChains #滑动 from selenium.webdriver.common.by import By #选择器 from selenium.webdriver.common.by import By #按照什么方式查找,By.ID,By.CSS_SELECTOR from selenium.webdriver.common.keys import Keys #键盘按键操作 from selenium.webdriver.support import expected_conditions as EC #等待所有标签加载完毕 from selenium.webdriver.support.wait import WebDriverWait #等待页面加载完毕 寻找某些元素 browser=webdriver.Chrome() #调用Chrome 驱动,生成浏览器对象 wait=WebDriverWait(browser,10) #设置selenium等待浏览器加载完毕的最大等待时间 browser.get(‘https://www.baidu.com/’) browser.find_element(By.ID,‘kw’).send_keys(“美女”) browser.find_element_by_id(“su”).click()#点击按钮 time.sleep(4) browser.find_element(By.ID,‘kw’).clear()#清空input标签中的内容,让重新输入 browser.find_element_by_id(‘kw’).send_keys(‘性感’) browser.find_element_by_id(“su”).click() #点击按钮

2.前进和后退

import time from selenium import webdriver#驱动浏览器 from selenium.webdriver import ActionChains #滑动 from selenium.webdriver.common.by import By #选择器 from selenium.webdriver.common.by import By #按照什么方式查找,By.ID,By.CSS_SELECTOR from selenium.webdriver.common.keys import Keys #键盘按键操作 from selenium.webdriver.support import expected_conditions as EC #等待所有标签加载完毕 from selenium.webdriver.support.wait import WebDriverWait #等待页面加载完毕 寻找某些元素 import time from selenium import webdriver browser=webdriver.Chrome() browser.get(‘http://www.cnblogs.com/sss4/’) browser.find_element_by_partial_link_text( ‘PythonWEB框架之Flask’).click() time.sleep(3) browser.back() #后退 time.sleep(3) browser.forward() #前进 time.sleep(5) browser.close()

3.cokies相关

import time from selenium import webdriver#驱动浏览器 from selenium.webdriver import ActionChains #滑动 from selenium.webdriver.common.by import By #选择器 from selenium.webdriver.common.by import By #按照什么方式查找,By.ID,By.CSS_SELECTOR from selenium.webdriver.common.keys import Keys #键盘按键操作 from selenium.webdriver.support import expected_conditions as EC #等待所有标签加载完毕 from selenium.webdriver.support.wait import WebDriverWait #等待页面加载完毕 寻找某些元素 from selenium import webdriver browser=webdriver.Chrome() browser.get(‘https://www.zhihu.com/explore’) print(browser.get_cookies()) #获取cokies信息 browser.add_cookie({‘k1’:‘xxx’,‘k2’:‘yyy’}) #添加cokies信息 print(browser.get_cookies()) browser.delete_all_cookies() #删除cokies信息,慎用

4.选项卡管理

from selenium import webdriver browser=webdriver.Chrome() browser.execute_script(‘window.open()’) #打开选项卡 browser.execute_script(‘window.open()’) print(browser.window_handles) #获取所有的选项卡 browser.switch_to_window(browser.window_handles[0]) #切换至选项卡0 browser.get(‘https://www.taobao.com’) browser.switch_to_window(browser.window_handles[1]) #切换至选项卡1 browser.get(‘https://www.baidu.com’) browser.switch_to_window(browser.window_handles[2]) #切换至选项卡2 browser.get(‘https://v.qq.com/’)

5.selenium异常处理

from selenium import webdriver from selenium.common.exceptions import TimeoutException,NoSuchElementException,NoSuchFrameException try: browser=webdriver.Chrome() browser.get(‘http://www.runoob.com/try/try.php?filename=jqueryui-api-droppable’) browser.switch_to.frame(‘iframssseResult’) except TimeoutException as e: print(e) except NoSuchFrameException as e: print(e) finally: browser.close()

6. 获取元素属性

//获取a连接的href属性值 browser.find_element_by_xpath(‘//a’)).get_attribute(‘href’)

7. 切换窗口

小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数初中级前端工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年Web前端开发全套学习资料》送给大家,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。

自动化测试工具Selenium的基本使用方法,面试字节跳动的前端工程师该怎么准备,2024年程序员,测试工具,自动化,selenium
自动化测试工具Selenium的基本使用方法,面试字节跳动的前端工程师该怎么准备,2024年程序员,测试工具,自动化,selenium
自动化测试工具Selenium的基本使用方法,面试字节跳动的前端工程师该怎么准备,2024年程序员,测试工具,自动化,selenium
自动化测试工具Selenium的基本使用方法,面试字节跳动的前端工程师该怎么准备,2024年程序员,测试工具,自动化,selenium

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频

如果你觉得这些内容对你有帮助,可以添加下面V无偿领取!(备注:前端)
自动化测试工具Selenium的基本使用方法,面试字节跳动的前端工程师该怎么准备,2024年程序员,测试工具,自动化,selenium

面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频**

如果你觉得这些内容对你有帮助,可以添加下面V无偿领取!(备注:前端)
[外链图片转存中…(img-8eInhe5N-1710936367803)]文章来源地址https://www.toymoban.com/news/detail-853443.html

到了这里,关于自动化测试工具Selenium的基本使用方法,面试字节跳动的前端工程师该怎么准备的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • python自动化测试工具selenium

    selenium 是网页应用中最流行的自动化测试工具,可以用来做自动化测试或者浏览器爬虫等。官网地址为:Selenium。相对于另外一款web自动化测试工具QTP来说有如下优点: 免费开源轻量级,不同语言只需要一个体积很小的依赖包 支持多种系统,包括Windows,Mac,Linux 支持多种浏

    2024年02月08日
    浏览(83)
  • 一文详解:自动化测试工具——Selenium

    Selenium是一个用于Web应用程序测试的工具。是一个开源的Web的自动化测试工具,最初是为网站自动化测试而开发的,类型像我们玩游戏用的按键精灵,可以按指定的命令自动操作,不同是Selenium可以直接运行在浏览器上,它支持所有主流的浏览器,支持的浏览器包括IE(7, 8,

    2024年01月16日
    浏览(59)
  • 如何使用自动化测试工具Selenium?

    哈喽,大家好,我是小浪。那么有一段时间没有更新了,还是在忙实习和秋招的事情,那么今天也是实习正式结束啦,开始继续更新我们的学习博客,后期主要是开发和测试的学习博客内容巨多,感兴趣的小伙伴们可以一键三连支持一下欧~ 目录 一、什么是自动化测试? 二、

    2024年02月11日
    浏览(61)
  • 如何使用Python自动化测试工具Selenium进行网页自动化?

    Selenium 是一个流行的Web自动化测试框架, 它支持多种编程语言和浏览器,并提供了丰富的API和工具来模拟用户在浏览器中的行为 。 Selenium可以通过代码驱动浏览器自动化测试流程,包括页面导航、元素查找、数据填充、点击操作等。 与PyAutoGUI和AutoIt相比, Selenium更适合于处

    2023年04月09日
    浏览(125)
  • 自动化测试工具Selenium的语法续.

    OK,那么上篇博客我们介绍了如何搭建基于Java+selenium的环境,并且使用selenium的一些语法给大家演示了如何进行自动化测试的案例,那么本篇博客我们来继续学习selenium的一些其他的比较重要的语法,感谢关注,期待三连~ 目录 一、定位一组元素 二、下拉框处理 三、上传文件

    2024年02月10日
    浏览(58)
  • 自动化测试工具selenium的安装方法

    一、什么是selenium Selenium 是一套 Web网站 的程序自动化操作 解决方案。 通过它,我们可以写出自动化程序,像人一样在浏览器里操作web界面。 比如点击界面按钮,在文本框中输入文字 等操作。 Selenium 通过使用  WebDriver  支持市场上所有主流浏览器的自动化。 Webdriver 是一个

    2024年02月09日
    浏览(47)
  • Selenium教程:自动化浏览器测试工具

    Selenium是一款用于自动化浏览器测试的工具,它提供了一系列的API和功能,使得开发人员可以编写脚本来模拟用户在浏览器中的行为。无论是在Web应用程序的功能测试、性能测试还是数据抓取方面,Selenium都是一个强大且广泛使用的工具。 在开始使用Selenium之前,您需要进行安

    2024年02月07日
    浏览(81)
  • Web测试自动化工具Selenium的使用

    Selenium是一个Web应用测试的自动化工具,它通过模拟点击实现对Web应用的功能测试。测试时,除了Selenium,还需要对应的浏览器驱动,如在Chrome实现自动点击,则需要chromedriver。 Selenium支持多种语言和多种浏览器,本文仅记录python+chrome的使用。 1. 安装python 略 2. 安装Selenium 注

    2024年01月16日
    浏览(90)
  • 自动化测试工具-Selenium:Selenium的核心三大组件详解

    目录 1. WebDriver 1.1 WebDriver的通信方式 1.2 WebDriver的功能 1.3 W3C推荐标准 2. Grid 3. IDE Selenium 是支持 web 浏览器自动化的一系列工具和库的综合项目。官方对Selenium认可的三大组件或API分别是: WebDriver、Selenium IDE、Grid。 其中,WebDriver又被称为Selenium的核心。 下面本篇文章将深度介

    2024年02月03日
    浏览(46)
  • 学会自动化必备工具-Selenium-再想着入坑自动化测试吧

    随着近些年IT行业的发展,软件测试人才的需求越来越大,也有很多小伙伴在考虑入坑,而软件测试中,收入相对较高的就是自动化了,所以这次就专门为大家简单介绍下自动化测试的必备工具Selenium。 Selenium是一款基于Web应用程序的开源测试工具 ,直接运行在浏览器中,支

    2024年01月23日
    浏览(55)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包