前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Python、Pytest、Allure、Playwright和Jenkins实现测试自动化集成示例

Python、Pytest、Allure、Playwright和Jenkins实现测试自动化集成示例

作者头像
苦叶子
发布2023-06-09 16:21:15
5860
发布2023-06-09 16:21:15
举报
文章被收录于专栏:开源优测开源优测

本文将介绍如何使用Python、Pytest、Allure、Playwright和Jenkins实现测试自动化集成。通过将这些工具结合使用,可以实现自动化测试、测试结果报告、持续集成等功能,提高测试效率和质量。

一、环境搭建

安装Python和Pytest

Python是一种流行的脚本语言,Pytest是一个Python测试框架,可以用于编写和运行测试用例。在安装Python之后,可以使用pip安装Pytest:

代码语言:javascript
复制
pip install pytest

安装Playwright

Playwright是一个自动化测试工具,可以用于模拟用户在浏览器中的操作。可以使用pip安装Playwright:

代码语言:javascript
复制
pip install playwright

安装Allure

Allure是一个测试结果报告工具,可以生成漂亮、易读的测试报告。可以从官网下载Allure安装包,安装完成后将其添加到环境变量中即可。在执行测试时,需要使用pytest-allure插件生成Allure报告。

安装Jenkins

Jenkins是一个流行的持续集成工具,可以用于自动构建、测试和部署软件。可以从官网下载Jenkins安装包,安装完成后启动Jenkins服务即可。

二、编写测试用例

在完成环境搭建之后,可以开始编写测试用例。下面是一个简单的测试用例:

代码语言:javascript
复制


import pytest
from playwright.sync_api import Playwright, Browser, Page
@pytest.fixture(scope="module")
def playwright() -> Playwright:
    playwright = Playwright()
    yield playwright
    playwright.stop()
@pytest.fixture(scope="module")
def browser(playwright: Playwright) -> Browser:
    browser = playwright.chromium.launch(headless=True)
    yield browser
    browser.close()
@pytest.fixture(scope="module")
def page(browser: Browser) -> Page:
    page = browser.new_page()
    yield page
    page.close()
def test_playwright(page: Page):
    page.goto("https://www.baidu.com")
    page.fill("#kw", "playwright")
    page.click("#su")
    assert "playwright" in page.title()

这个测试用例使用Playwright模拟用户在百度搜索playwright的过程,并检查搜索结果页面的标题是否包含关键词"playwright"。测试用例使用pytest-fixtures来管理Playwright实例,以便在多个测试用例中共享同一个实例。

三、生成Allure报告

在编写测试用例之后,可以使用pytest-allure插件来生成Allure报告。可以使用以下命令执行测试用例并生成Allure报告:

代码语言:javascript
复制
pytest --alluredir=report

这个命令会在当前目录下生成一个report目录,其中包含测试结果的JSON数据。使用以下命令生成Allure报告:

代码语言:javascript
复制
allure serve report

这个命令会启动一个Web服务器,在浏览器中打开Allure报告。

四、集成Jenkins

在完成测试用例编写和Allure报告生成之后,可以将其集成到Jenkins中,实现持续集成。在Jenkins中,可以使用以下步骤来配置测试任务:

  • 创建一个新的Jenkins任务,选择"构建一个自由风格的软件项目"。
  • 在"源码管理"中配置源代码仓库地址和分支。
  • 在"构建触发器"中选择"定期构建",并设置构建的时间间隔。
  • 在"构建"中选择"执行Windows批处理命令"(或者其他系统的命令),并输入以下命令:
代码语言:javascript
复制
cd /d %WORKSPACE%
pip install pytest
pip install playwright
pytest --alluredir=report
allure serve report

这个命令会在Jenkins工作空间中执行测试用例,并生成Allure报告。

在完成Jenkins配置之后,可以定期执行测试任务,自动化运行测试用例并生成测试结果报告。如果测试用例中出现了问题,Jenkins将会自动发送邮件通知相关人员。这样可以帮助团队快速发现和解决问题,提高软件质量和效率。

总结

通过结合Python、Pytest、Allure、Playwright和Jenkins等工具,可以实现自动化测试、测试结果报告、持续集成等功能。这些工具可以帮助团队快速发现和解决问题,提高软件质量和效率。如果您想要学习更多关于测试自动化和持续集成的知识,建议您阅读相关的书籍、博客和文档,以便更好地掌握这些技术。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2023-04-17,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 开源优测 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
持续集成
CODING 持续集成(CODING Continuous Integration,CODING-CI)全面兼容 Jenkins 的持续集成服务,支持 Java、Python、NodeJS 等所有主流语言,并且支持 Docker 镜像的构建。图形化编排,高配集群多 Job 并行构建全面提速您的构建任务。支持主流的 Git 代码仓库,包括 CODING 代码托管、GitHub、GitLab 等。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档