自动化测试环境搭建及 playWright使用

Playwright是由微软公司2020年初发布的新一代自动化测试工具,相较于目前最常用的Selenium,它仅用一个API即可自动执行Chromium、Firefox、WebKit等主流浏览器自动化操作。作为针对
Python 语言纯自动化的工具,在回归测试中可更快的实现自动化。

版权声明:本文为CSDN博主「行者AI」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/suiyuejian/article/details/113541451

  1. 安装python,在python官网下载3.7+并安装
  2. 检查python是否安装成功
python --version

如果以前安装过低版本,在这里查到的版本号是低版本,需要更改一下环境变量,按照下面的命令执行

vim ~/.bash_profile // 打开文件,输入以下内容:

alias python="/usr/local/bin/python3" //使用brew install python3安装的默认路径
alias pip="/usr/local/bin/pip3" //使用brew install python3安装的pip3默认路径

:wq // 保存退出
source .bash_profile. // 执行文件使环境变量生效
  1. pip是python里自带的包管理工具,检查是否安装成功
pip --version
  1. 安装playWright
pip install playwright

我在安装完playwright后,提示如图
自动化测试环境搭建及 playWright使用_第1张图片
所以我又按提示升级了一下pip

/Library/Frameworks/Python.framework/Versions/3.10/bin/python3.10 -m pip install --upgrade pip
  1. 安装Chromium、Firefox、WebKit等浏览器的驱动文件(内置浏览器)
python -m playwright install

经过以上步骤,就成功安装了playwright,下面就可以使用了

 python -m playwright codegen --target javascript -o 'discount.spec.js' http://localhost:8080

codegen: 运行程序
–target: 目标语言,javascript/python
-o: 保存脚本的文件名
最后跟的是要运行的域名

执行上面的脚本就会自动打开浏览器,然后按照需求操作就行,会自动生成脚本

======================================================================
下面是在前端项目里安装playwright, 其实直接照这个步骤来就行,和上面的重复了

npm install playwright

自动化测试环境搭建及 playWright使用_第2张图片
javascript: 用js写脚本
e2e: 把脚本放在哪个文件夹下

他会自动安装playwright test

安装完后,在e2e文件夹下会生成一个example.spec.js示例脚本,还生成一个配置文件playwright.config.js

运行测试用例脚本:

playwright test

运行完会自动生成测试报告,在playwright-report下

用自动生成的测试用例运行,需要稍做修改

const { test } = require('@playwright/test')
//
test.beforeEach(async ({ page }) => {
  await page.goto('http://localhost:8080')
})
test.describe('Mark all as completed', () => {
  test('complete all checkbox should update state when items are completed / cleared', async () => {
	// 在这里面加上自动生成的测试用例,其实和自动生成的测试用例就差了上面这几行
  })
})

其次自动生成的测试用例只有操作步骤,没有断言语句,需要自己添加,比如:

test.expect(page.url()).toEqual('http://localhost:8080')

下一步研究playwright 和 jest 的合并使用

官网地址: playwright

你可能感兴趣的:(前端,自动化,python)