​初学者的自动化测试路线图:Playwright和TypeScript

2644 篇文章 26 订阅
2485 篇文章 2 订阅

2024软件测试面试刷题,这个小程序(永久刷题),靠它快速找到工作了!(刷题APP的天花板)_软件测试刷题小程序-CSDN博客文章浏览阅读3.3k次,点赞86次,收藏15次。你知不知道有这么一个软件测试面试的刷题小程序。里面包含了面试常问的软件测试基础题,web自动化测试、app自动化测试、接口测试、性能测试、自动化测试、安全测试及一些常问到的人力资源题目。最主要的是他还收集了像阿里、华为这样的大厂面试真题,还有互动交流板块……_软件测试刷题小程序​编辑https://blog.csdn.net/AI_Green/article/details/134931243?spm=1001.2014.3001.5502https://blog.csdn.net/AI_Green/article/details/134931243?spm=1001.2014.3001.5502https://blog.csdn.net/AI_Green/article/details/134931243?spm=1001.2014.3001.5502​编辑https://blog.csdn.net/AI_Green/article/details/134931243?spm=1001.2014.3001.5502icon-default.png?t=N7T8https://blog.csdn.net/AI_Green/article/details/134931243?spm=1001.2014.3001.5502

测试对于确保软件运行良好非常重要。测试自动化通过使用特殊的工具和程序快速准确地进行测试使这变得更容易。这有助于检查软件是否完成了它应该做的事情、它的性能如何以及它是否可靠。

通过自动化重复测试任务,团队可以显着加快测试过程,扩大测试覆盖范围,并提高软件产品的整体质量。值得注意的是,测试自动化在敏捷和 DevOps 等当代软件开发方法中发挥着关键作用,使团队能够以更精简、更高效的方式交付优质的软件产品。

什么是Playwright?

Playwright是软件测试行业最新的测试自动化工具。它由微软开发和支持,是UI和API测试的最佳工具之一。Playwright不需要任何复杂的配置。像Typescript、断言库、测试运行器等所有内容都默认打包在Playwright中。

使用Playwright的用户可以像使用手机一样使用Chrome、Edge、Firefox 和 Safari 等网络浏览器拍照、录制视频或在社交媒体上与他人互动。

  • Playwright官方文档:

    https://playwright.dev

什么是TypeScript?

TypeScript 是 JavaScript 的超集,为该语言添加了静态类型。Playwright 是一个用于自动执行浏览器操作的工具,例如单击按钮、填写表单和在页面之间导航。TypeScript 提供类型检查和其他高级功能,可以改善与 Playwright 合作时的开发体验。

为什么PlayWright使用TypeScript?

Playwright 与 TypeScript 的结合为 Web 应用程序测试提供了强大的解决方案。Playwright支持自动化浏览器测试,支持模拟跨各种浏览器的用户交互。TypeScript为JavaScript添加了静态类型和高级功能,从而提高了代码质量和可维护性。

Playwright的主要特点和能力:

1. 自动化浏览器测试:Playwright通过提供与Web浏览器交互的高级API来简化端到端测试。

2.类型安全:TypeScript的静态类型确保代码的正确性,在开发早期捕获错误并提高代码的可维护性。

3. 测试框架:Jest、Mocha或Jasmine等流行框架可以与Playwright和 TypeScript 一起使用来定义测试用例并断言预期结果。

4.页面对象模型(POM):实现POM允许将网页封装为对象,使测试模块化并且更易于维护。

5. 持续集成 (CI):将 Playwright 测试集成到 CI 管道中,以便在代码更改时进行自动测试,确保及早检测到回归。

6. 报告和分析:Playwright支持生成详细的测试报告进行分析,帮助识别和诊断问题。

7. 自动等待:Playwright 在执行操作之前自动等待元素可操作,从而消除了人为超时的需要并减少了测试不稳定。

8. 浏览器上下文:Playwright 为每个测试创建一个浏览器上下文,相当于一个全新的浏览器配置文件,以零开销提供完整的测试隔离。创建新的浏览器上下文速度很快,只需几毫秒。

9. 跟踪和调试:Playwright 提供内置跟踪功能,可在测试运行期间捕获执行跟踪、视频和屏幕截图,帮助识别和调试问题并消除不稳定的测试。

10. 支持Shadow DOM和框架:Playwright的选择器可以穿透 Shadow DOM 并无缝进入框架,从而允许在测试期间与这些上下文中的元素进行交互。

11. 跨语言支持:Playwright支持多种编程语言,包括TypeScript、JavaScript、Python、Java和 .NET (C#),使具有不同语言偏好的团队能够使用其首选语言进行协作并为测试工作做出贡献。

图片

与Playwright一起使用的推荐 IDE 是 Visual Studio Code (VS Code)。

VS Code 是一款流行的轻量级代码编辑器,为TypeScript、JavaScript和调试功能提供出色的支持。它为Playwright提供无缝的开发体验,能够高效地编写、调试和测试 Playwright 脚本。

然而,值得注意的是,Playwright 是一个多功能框架,你也可以根据喜好使用其他IDE。一些开发人员还使用IntelliJ IDEA或WebStorm等JetBrains IDE进行Playwright开发。这些IDE提供代码完成、调试和集成终端支持等功能。

前提步骤

在本文中,在实际演示过程中,我们针对各自的库和应用程序使用了以下版本:

1.Playwright版本:1.42.1

2.VS Code版本:1.87.2

3.Node JS版本:v18.18.1

下载并安装VS代码

  • 要下载VS code,请访问其官方网站并选择社区版本的 .exe 文件。

    (https://code.visualstudio.com/download)

  • 下载完成后,启动 .exe 文件并继续安装 VS Code。

  • 可以参考官方网站提供的说明来获取安装VS code的指导。

    (https://code.visualstudio.com/docs/setup/windows)

在Windows上安装节点

  • 下载Node.js '. MSI 的安装程序,访问Node.js官方网站:

    https://nodejs.org/en/download/

  • 运行Node.js安装程序

  • 双击 .msi 安装程序

  • 选择“下一步”直至“完成”按钮

  • 使用“ C:\Users\Admin> node -v ”命令验证Node.js是否已正确安装。如果Node.js已完全安装在你的系统上,命令提示符将打印已安装的Node JS的版本

图片

图片

安装Playwright

安装Playwright有两种方法。

1.使用命令行

  • npm init playwright@latest

图片

2. 使用扩展

  • 打开代码编辑器:启动你首选的代码编辑器。例如,如果你使用的是 Visual Studio Code (VS Code),请在系统上打开它。

图片

  • 新建项目:创建一个新项目并在VS Code中打开。

图片

  • 导航到扩展市场:在代码编辑器中查找扩展市场。在VS Code中,你可以在左侧边栏或按 Ctrl+Shift+X 找到它。

  • 搜索 Playwright 扩展:在扩展市场中,搜索 Playwright 扩展。可以通过在搜索栏中输入“Playwright”来找到它。

图片

  • 安装扩展:找到Playwright扩展后,单击其旁边的“安装”按钮。等待安装过程完成。

图片

  • 安装Playwright:按Ctrl + shift + P并在搜索框中搜索“Playwright”关键字。单击“安装Playwright”按钮并安装必要的浏览器。

图片

图片

图片

测试用例创建

为了编写第一个脚本,我们首先需要创建一个javascript或typescript文件。

在此打字稿中,文件扩展名必须是 .ts。

图片

我们可以将以下代码添加到文件中。

import test, { expect } from "@playwright/test";
import { chromium } from "playwright";

test.describe("Navigation Test", () => {

    test("Verify that the user is navigate on the `Life At Jignect` page successfully", async () => {

        //Page and browser
        var browser = await chromium.launch();
        var context = await browser.newContext();
        var page = await context.newPage();

        //Navigate to the URL
        await page.goto(`https://jignect.tech/`);

        //Locators
        const menuText = page.locator(`//div[@id='site-header']//a[text()='About Us']`);
        const subMenuText = page.locator(`//div[@id='site-header']//a[text()='Life at Jignect']`);
        const headingText = page.locator(`//div[contains(@class,'heading')]`);

        //Actions
        await menuText.hover();
        await subMenuText.click();
        const titleText = await headingText.textContent();

        //Assertion
        expect(titleText).toBe('Life At Jignect');
    });
});

让我们理解上面概述的示例。

Imports:

  • 该代码首先从 @playwright/test 导入“test”和“expect”。它们分别用于编写测试和断言。

  • 它还从“playwright”导入“chromium”,这是 Playwright 可以控制的浏览器引擎。

测试说明:

`test.describe()` 函数定义了一个名为“Navigation Test”的测试套件。测试套件是测试特定特性或功能的测试用例的集合。

测试功能:

  • 在测试套件中,有一个使用 test() 函数定义的测试函数。此测试功能验证用户是否可以成功导航到“Life At Jignect”页面。

  • 测试函数是使用异步函数定义的,因为它包含异步操作(例如,启动浏览器、导航到 URL、与元素交互)。

页面设置:

  • 在测试函数中,使用 chromium.launch() 启动 Chromium 浏览器实例。

  • 使用 browser.newContext() 创建新的浏览器上下文。

  • 使用“context.newPage()”在浏览器上下文中打开一个新页面。

断言:

  • 最后,使用“expect()”函数进行断言,以验证从标题元素检索的“titleText”是否等于“Life At Jignect”。

运行创建的测试用例并检查结果

1. 编写测试脚本后,运行测试并仔细检查结果。

有两种方法可以运行测试脚本。

  • 打开终端并输入命令:npx playwright test {testname}。

图片

  • 另一种方法是单击代码中的绿色三角形。

图片

2. 测试运行结果

图片

结论

总之,Playwright与TypeScript的集成为 Web 应用程序测试提供了功能强大且高效的解决方案。Playwright 通过其高级 API 和全面的功能简化了浏览器自动化,而 TypeScript 通过静态类型和高级语言功能增强了代码质量和可维护性。它们共同使开发团队能够加速测试流程,提高测试覆盖率,并以简化且高效的方式交付优质的软件产品。通过利用 Playwright 和 TypeScript,团队可以有效、自信地实现其测试目标,确保其 Web 应用程序的可靠性和性能。

然而,需要注意第是,Playwright的一些限制:

  • 不支持全屏功能。

  • 不支持同时使用多个定位器。

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

最后: 下方这份完整的软件测试视频教程已经整理上传完成,需要的朋友们可以自行领取【保证100%免费】

​​​软件测试面试文档

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

在这里插入图片描述

在这里插入图片描述

  • 28
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值