从零开始:使用 Playwright 脚本录制实现自动化测试

简介: Playwright提供了一种便捷的脚本录制功能,类似于Selenium IDE。通过运行`playwright codegen`命令,你可以启动一个浏览器并记录你的操作,生成Python或异步代码。在示例中,展示了如何录制登录百度的过程,生成的代码可以直接用于自动化测试。Playwright Inspector允许你编辑和转换测试代码,支持生成Pytest格式的测试用例,方便Python开发者使用。这个功能使Playwright成为强大的Web自动化测试工具。

image.png

前言

selenium中提供了一个selenium IDE的工具用于脚本录制,我们通过插件市场安装之后,便可以将我们对浏览器页面的操作录制成脚本,并输出成java或Python等语言的脚本,我们可以通过生成的脚本再次回放我们的操作。

作为一个比selenium更加强大的web自动化测试工具,当然也拥有录制的功能了,本篇文章我们就来介绍playwright的脚本录制功能。

录制脚本

Playwright 具有开箱即用的生成测试的能力,是快速开始测试的好方法。它将打开两个窗口,一个是浏览器窗口,您可以在其中与要测试的网站进行交互,另一个是 Playwright Inspector 窗口,您可以在其中记录测试、复制测试、清除测试以及更改测试语言。

启动命令如下:

playwright codegen http://网站地址

启动后,电脑上出现2个窗口,左边是浏览器打开网站可以操作,右边是inspector 可以生成对应的脚本,如下图:

image.png

我们以登录百度为例录制我们的脚本,我们使用输入账号以及密码的方式登录百度,如下:

image.png

我们输入完用户名密码之后,点击登录按钮,即可登录。

注:此处并没有使用真实账号,所以登录是失败的。

生成的代码如下:

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.baidu.com/")
    page.get_by_role("link", name="登录").click()
    page.get_by_placeholder("手机号/用户名/邮箱").click()
    page.get_by_placeholder("手机号/用户名/邮箱").fill("muller")
    page.get_by_placeholder("密码").click()
    page.get_by_placeholder("密码").fill("12345678")
    page.get_by_role("button", name="登录").click()

    # ---------------------
    context.close()
    browser.close()


with sync_playwright() as playwright:
    run(playwright)

还可以选择生成异步代码

image.png

当然,作为Python爱好者,我还是喜欢直接生成Pytest测试用例代码,很好,playwright能满足我的要求

image.png

from playwright.sync_api import Page, expect


def test_example(page: Page) -> None:
    page.goto("https://www.baidu.com/")
    page.get_by_role("link", name="登录").click()
    page.get_by_placeholder("手机号/用户名/邮箱").click()
    page.get_by_placeholder("手机号/用户名/邮箱").fill("muller")
    page.get_by_placeholder("密码").click()
    page.get_by_placeholder("密码").fill("12345678")
    page.get_by_role("button", name="登录").click()

总结

通过本文的介绍,我们学习了如何使用 Playwright 脚本录制功能来创建自动化测试脚本。Playwright 提供了一个简单而强大的录制器工具,帮助开发人员轻松构建和维护测试用例。希望本文能够对你有所帮助,让你更好地掌握 Playwright 的使用技巧!

相关文章
|
12天前
|
消息中间件 Kafka
使用kafka自带脚本进行压力测试
使用kafka自带脚本进行压力测试
|
17天前
|
机器学习/深度学习 人工智能 数据挖掘
探索自动化测试的边界:从脚本到智能
在软件测试领域,自动化测试一直是提高测试效率与质量的重要工具。随着技术的发展,自动化测试也在不断进化,从简单的脚本录制回放,到现在结合人工智能的智能测试。本文将探讨自动化测试的发展路径,以及如何通过智能化提升测试的深度和广度,同时分析面临的挑战和未来的可能性。
|
1月前
|
机器学习/深度学习 数据采集 人工智能
探索自动化测试的边界:从脚本到智能
在软件开发领域,自动化测试已成为确保产品质量和提升开发效率的关键因素。随着人工智能和机器学习技术的飞速发展,传统的自动化测试方法正面临重大的变革。本文将从多个角度分析自动化测试的现状与未来趋势,探讨如何通过集成先进的技术手段优化测试流程,并预测自动化测试领域的发展方向。
34 1
|
19天前
|
机器学习/深度学习 人工智能 供应链
探索自动化测试的边界:从脚本到智能
在软件质量保障的竞技场上,自动化测试以其高效、一致性和可重复性的特点,成为提升开发流程效率的关键工具。本文将深入自动化测试的核心,探讨它如何从简单的脚本化任务,演变为一个集成了机器学习、人工智能和持续集成/持续部署(CI/CD)的复合型解决方案。我们将一起见证自动化测试如何突破传统边界,实现从线性脚本到自适应智能体的飞跃,并在此过程中重塑软件开发的未来。
|
1月前
|
敏捷开发 测试技术
探索式测试与脚本化测试的融合之道
在软件测试领域,探索式测试和脚本化测试常被视为对立面。然而,随着敏捷开发的普及和测试自动化需求的增加,两者之间的界限逐渐模糊。本文将探讨如何有效地结合这两种测试方法,以实现更高效、更全面的软件测试策略。我们将通过实际案例分析,展示融合探索式与脚本化测试的优势,并提供实施建议。
|
1月前
|
JSON JavaScript 测试技术
Postman接口测试工具详解
Postman接口测试工具详解
66 1
|
22天前
|
存储
Postman 接口测试配置 Pre-request Script
Postman 接口测试配置 Pre-request Script
65 5
Postman 接口测试配置 Pre-request Script
|
11天前
|
SQL 安全 测试技术
[go 面试] 接口测试的方法与技巧
[go 面试] 接口测试的方法与技巧
|
1月前
|
XML JSON 测试技术
Postman接口测试工具详解
📚 Postman全攻略:API测试神器!📚 发送HTTP请求,管理集合,写测试脚本,集成CI/CD。从安装配置到环境变量、断言、数据驱动测试,一步步教你如何高效测试RESTful API。实战案例包含GET、POST、PUT、DELETE请求。用Newman在命令行跑集合,自动化测试不发愁!👉 [洛秋小站](https://www.luoqiu.site/) 学更多!🚀
60 1
|
20天前
|
JSON 前端开发 测试技术
Postman 接口测试工具详解
在执行这些测试案例时,请确保遵循实际的API规范,并根据API的特定要求调整步骤和参数。