• 《最新出炉》系列入门篇-Python+Playwright自动化测试-43-分页测试


    1.简介

    分页测试,这种一般都是公共的方法系统中都写好了,这种一般出现是数据展示比较多的时候,会采取分页的方法,而且比较固定,一般是没有问题的,因此它非常适合自动化测试,但是如何使用playwright来进行分页自动化测试了,宏哥今天就讲解和分享一下。

    2.测试场景

    对分页来说,我们最感兴趣的和测试的无非就是下面几个信息:
    (1)当前总共有多少页(因为有时候当前是6页但是点击下一个前边的消失后边的页码就会出现了,总数大于当前页数)
    (2)当前是第几页
    (3)是否可以上一页和下一页点击

    3.自动化实战

    宏哥发现了一个有用的小网站,在这里可以找到各种各样的实例,宏哥就再也不用自己写demo了,网站地址:https://www.jq22.com

    3.1代码设计

    3.2参考代码

    复制代码
    # coding=utf-8🔥
    
    # 1.先设置编码,utf-8可支持中英文,如上,一般放在第一行
    
    # 2.注释:包括记录创建时间,创建人,项目名称。
    '''
    Created on 2023-12-07
    @author: 北京-宏哥
    公众号:北京宏哥
    Project: 《最新出炉》系列入门篇-Python+Playwright自动化测试-43-分页测试
    '''
    # 3.导入模块
    from playwright.sync_api import Playwright, sync_playwright, expect
    
    
    def run(playwright: Playwright) -> None:
        browser = playwright.chromium.launch(headless=False)
        context = browser.new_context()
        page = context.new_page()
        page.goto("https://www.jq22.com/demo/jqueryPager202102221221/")
        # 获得所有分页的数量
        # -4是因为要去掉首页、上一个(«)和下一个(»)'[name="radio"]'
        total_pages = page.locator('//*[@id="page"]/ul/li').count()-4
        print("Total page is", total_pages)
        for li in page.locator('//*[@id="page"]/ul/li').all():
            page.locator("//div[@id='page']/ul/li[8]").click()
            page.wait_for_timeout(300)
        # 当前页面是第几页
        current_page = page.locator("#page>> ul >> li.active")
        print("Current page is", current_page.text_content())
        context.close()
        browser.close()
    
    with sync_playwright() as playwright:
        run(playwright)
    复制代码

    3.3运行代码

    1.运行代码,右键Run'Test',控制台输出,如下图所示:

    2.运行代码后电脑端的浏览器的动作。如下图所示:

    4.小结

    到此分页自动化测试就实现了,其实很简单的。好了,今天时间不是很早了,宏哥就讲解和分享到这里,感谢您耐心的阅读!!!

     

  • 相关阅读:
    算法通关村第15关【白银】| 海量数据场景下的热门算法题
    C++ Reference: Standard C++ Library reference: C Library: cstdio: FILE
    c++ 学习之 数据类型的取值范围
    C# 图解教程 第5版 —— 第1章 C# 和 .NET 框架
    动态规划43(Leetcode91解码方法)
    Linux设备树OF操作函数
    月光宝盒(vivo流量录制回放平台)正式对外开源
    聊聊Java中代码优化的30个小技巧
    【JAVA高级】——吃透JDBC中的SQL注入问题和解决方案
    vue-admin-beautiful老版本报vue-template-compiler错误解决方案
  • 原文地址:https://www.cnblogs.com/du-hong/p/17846798.html