web自动化笔记八:滚动条处理和窗口截屏

一、滚动条处理
   ①为什么要操作滚动条?
        1. 在HTML页面中,由于前端技术框架的原因,页面元素为动态显示,元素根据滚动条的下拉而被加载 
        2. 页面注册同意条款,需要滚动条到最底层,才能点击同意

实现方式:
    ②说明:selenium中并没有直接提供操作滚动条的方法,但是它提供了可执行javaScript脚本的方法,所以我们可以通过JavaScript脚本来达到操作滚动条的目的

     ③步骤:

          1、设置JavaScript脚本控制滚动条
                          js = “window.scrollTo(0,1000)”
                        (0:左边距;1000:上边距;单位像素)
          2、selenium调用执行JavaScript脚本的方法
                          driver.execute_script(js)
 
执行代码:

import time
from selenium import webdriver
 
driver = webdriver.Chrome()
driver.maximize_window()
driver.implicitly_wait(30)
driver.get('https://www.csdn.net')
time.sleep(3)
# 第一步,通过javaScript脚本执行滚动条
js = 'window.scrollTo(0,10000)'
# 第二步,selenium中调用执行JavaScript脚本的方法
driver.execute_script(js)
time.sleep(3)
# 关闭浏览器
driver.quit()

二、窗口截屏
       ①应用场景:失败截图,让错误看的更直观
       ②方法:
              driver.get_screenshot_as_file(imgpath)
                   参数:imgpath:图片保存路径
                   如:当前目录 ./test.png
                  上一级目录 ../test.png
    
    ③扩展:
        1、多条用例执行失败,会产生多张图片,可以采用时间戳的形式,进行区分
        代码:
            driver.get_screenshot_as_file(“../image/%s.png”%(time.strftime(“%Y_%m_%d %H_%M_%S”)))
                strftime:将时间转换为字符串函数
                %Y_%m_%d %H_%M_%S:代表年月日时分秒执行代码:
执行代码:

from selenium import webdriver
import time
from selenium.webdriver.common.by import By
from selenium.webdriver.support.wait import WebDriverWait
 
driver = webdriver.Chrome()
driver.maximize_window()
driver.implicitly_wait(30)
driver.get('https://www.baidu.com')
driver.maximize_window()
"""
需求:
    百度登陆页面输入账号后截屏
"""
def find_ele(ele):
    ele1 = WebDriverWait(driver,10,5).until(lambda x:x.find_element(By.XPATH,ele))
    return ele1
find_ele('//*[@id="s-top-loginbtn"]').click()
# 定位用户名输入框,输入12345678910
find_ele('//*[@id="TANGRAM__PSP_11__userName"]').send_keys('12345678910')
time.sleep(3)
# 动态截屏--使用时间戳截屏
driver.get_screenshot_as_file('../image/%s.png'%(time.strftime('%Y_%m_%d %H_%M_%S')))
# 关闭浏览器
driver.quit()

作为一个软件测试的过来人,我想尽自己最大的努力,帮助每一个伙伴都能顺利找到工作。所以我整理了下面这份资源,现在免费分享给大家,有需要的小伙伴可以关注【公众号:开心螺蛳粉】自提!

软件测试面试文档

我们学习必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有字节大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。在这里插入图片描述

在这里插入图片描述

行动吧,在路上总比一直观望的要好,未来的你肯定会感谢现在拼搏的自己!如果想学习提升找不到资料,没人答疑解惑时,请及时加入群:1150305204,里面有各种测试开发资料和技术可以一起交流哦。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值