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.小结

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

《最新出炉》系列入门篇-Python+Playwright自动化测试-43-分页测试的更多相关文章

  1. Spring实践系列-入门篇(一)

    本文主要介绍了在本地搭建并运行一个Spring应用,演示了Spring依赖注入的特性 1 环境搭建 1.1 Maven依赖 目前只用到依赖注入的功能,故以下三个包已满足使用. <properti ...

  2. Google C++测试框架系列入门篇:第三章 基本概念

    上一篇:Google C++测试框架系列入门篇:第二章 开始一个新项目 原始链接:Basic Concepts 词汇表 版本号:v_0.1 基本概念 使用GTest你肯定会接触到断言这个概念.断言是用 ...

  3. Google C++测试框架系列入门篇:第二章 开始一个新项目

    上一篇:Google C++测试框架系列入门篇:第一章 介绍:为什么使用GTest? 原始链接:Setting up a New Test Project 词汇表 版本号:v_0.1 开始一个新项目 ...

  4. Hadoop基础-MapReduce入门篇之编写简单的Wordcount测试代码

    Hadoop基础-MapReduce入门篇之编写简单的Wordcount测试代码 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 本文主要是记录一写我在学习MapReduce时的一些 ...

  5. 深入浅出ASP.NET Core系列(入门篇)

    入门篇 1.1.专题介绍 1.2.环境安装 1.3.创建项目 1.4部署到IIS 1.5准备CentOS和Nginx环境 1.6部署到CentOS 2.1命令行和JSON的配置 2.2Bind建立配置 ...

  6. 0x00-Kali Linux 系列入门篇

    Kali Linux介绍篇 Kali Linux 官网:https://www.kali.org/ Kali Linux 前身是著名渗透测试系统BackTrack ,是一个基于 Debian 的 Li ...

  7. Node.js 从入门到茫然系列——入门篇

    在创建服务的时候,我们一般代码就是: var http = require("http"); var server = http.createServer(function(req ...

  8. Google C++测试框架系列入门篇:第一章 介绍:为什么使用GTest?

    原始链接:Introduction: Why Google C++ Testing Framework? 词汇表 版本号:v_0.1 介绍:为什么使用GTest? GTest帮助你写更好的C++测试代 ...

  9. python接口自动化测试(c测试环境的准备)

    接口测试的方式有很多,比如可以用工具(jmeter,postman)之类,也可以自己写代码进行接口测试,工具的使用相对来说都比较简单,重点是要搞清楚项目接口的协议是什么,然后有针对性的进行选择,甚至当 ...

  10. python - 接口自动化测试 - ReadExcel - 读取测试数据封装

    # -*- coding:utf-8 -*- ''' @project: ApiAutoTest @author: Jimmy @file: read_excel.py @ide: PyCharm C ...

随机推荐

  1. 化腐朽为神奇的QueryMapping

    化腐朽为神奇的QueryMapping 老车除了报废没别的方法? 应用系统就像老车,经过十几二十年的使用,积累了大量里程数据,但是英雄迟暮,反应迟钝,时不时还要病休.但就这样报废,推到重来,如果没有充 ...

  2. Ant Design Vue Tree 选中子节点同时半选中父级节点

    需要实现的效果: 1.子菜单如果不是全部选中,一级菜单半选. 2.子菜单全选,一级菜单选中. 3.一级菜单选择,二级菜单全选. 4.没有二级菜单,则只控制一级菜单. 主要用到的属性是checked和h ...

  3. Python企业面试题2 —— 基础篇

    1. re 的match和search区别? re.match 尝试从字符串的起始位置匹配一个模式,如果不是起始位置匹配成功的话,match()就返回none. re.search 扫描整个字符串并返 ...

  4. 【直播回顾】参与文档贡献,开启OpenHarmony社区贡献

      5月25日晚上19点,战"码"先锋第二期直播 <参与文档贡献,开启OpenHarmony社区贡献> ,在OpenHarmony社群内成功举行.   本期课程,由华为 ...

  5. html-testRunner在unittest测试套件中的使用

    废话不多说,直接上代码 代码 __author__ = 'huyang:十一的杂文录' import unittest import HtmlTestRunner import sys sys.pat ...

  6. opengauss数据库-主从搭建

    opengauss 数据库-主从搭建 环境说明 软件下载 opengauss 下载地址:https://opengauss.org/zh/download/ 环境准备 关闭 SELINUX 修改 /e ...

  7. Android 开发入门(5)

    0x07 数据存储 (1)共享参数 SharedPreferences a. 用法 用法 SharedPreferences 是 Android 的一个轻量级存储工具,采用的存储结构为键值对的方式 共 ...

  8. CentOS下修改 MySQL 的密码

    做服务器运维,修改 MySQL 的密码是经常的需要,定期修改 MySQL 密码是网站安全的一个保证.这里记录一下修改 MySQL 密码的一些命令,方便以后查看. 修改root密码 CentOS 下 M ...

  9. c# apollo订阅与发布(一)(迁)

    前言 apollo 翻译过来是阿波罗的意思,准确的说是:apache apollo,看了apache基本可以放心,因为它不像微软. 安装 下面我以windows 为例. https://activem ...

  10. seo FAQ 科普

    前言 seo 常规问题整理,后续不断补充,只做科普. 正文 1.什么是seo: seo 也就是搜索排名. 2.百度,360等知名品牌如何排名: 抓取,过滤,建立索引,输出结果 3.是否网站越好看排名就 ...