首页
学习
活动
专区
圈层
工具
发布
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    深入浅出:一篇文章入门 Drone

    持续交付 (CD) 流程,由完善的持续集成 (CI) 机制支持,以提供完美交付,尤其是当平台组件的数量和依赖性增加时。...正如我们在开始时所说,在 git 存储库上执行的定义明确的操作会通过 webhook 触发 Drone。...执行此步骤时,Drone 将下载您的插件并运行在定义的 Dockerfile 中找到的内容 ENTRYPOINT /bin/my-script 但是在步骤中定义的值上设置了两个环境变量,称为 DRONE_FOO...与 Jenkins 不同,后者使用一个合适的插件将测试结果附加到运行的管道并通过 Jenkins UI 访问它,Drone 只是一个管道执行器。...allure_password: allure_password allure_mode: allure 第一步运行 cypress 测试并将结果以 allure 原生格式存储在 /drone

    3.5K20

    中台技术解析之微服务架构下的测试实践

    微服务架构将单体架构的中间层分解,拆分成多个可独立设计、开发、运行的小应用,各个小应用之间协作通信,为用户提供最终服务。此外,将服务部署在 AWS 上,这些调整都有效地消除了痛点。...单体架构时,团队的测试主要依赖基于 Selenium 的集成测试和后检查测试,基于 Rails 的单元测试略有欠缺。转到微服务架构后,为了满足新的需求,测试框架也进行了相应调整。...下面,分别介绍 FreeWheel 核心业务团队在每一类测试上的具体实践。 单元测试 “单元”是软件的最小可测试部件。...Mock 实践 单元测试的编写往往有独立性的要求,很多时候因为业务逻辑复杂,代码逻辑也随之变的复杂,掺杂了很多其他组件,导致在编写单元测试用例时存在比较复杂的依赖项,如数据库环境、网络环境等,这些增加了单元测试的复杂度和工作量...Cypress-tag 在将 fixtures 用于每个测试流程之后,还需考虑一种情形,即不同的环境下需要运行的测试用例可能不同。

    2K20

    再见 Jenkins:Drone 如何为工程团队简化 CICD

    持续交付 (CD) 流程,由完善的持续集成 (CI) 机制支持,以提供完美交付,尤其是当平台组件的数量和依赖性增加时。...正如我们在开始时所说,在 git 存储库上执行的定义明确的操作会通过 webhook 触发 Drone。...执行此步骤时,Drone 将下载您的插件并运行在定义的 Dockerfile 中找到的内容 但是在步骤中定义的值上设置了两个环境变量,称为 DRONE_FOO 和 DRONE_BAR。...与 Jenkins 不同,后者使用一个合适的插件将测试结果附加到运行的管道并通过 Jenkins UI 访问它,Drone 只是一个管道执行器。...例如,在 cypress 测试的具体情况下,这是我们在管道中使用的代码片段 第一步运行 cypress 测试并将结果以 allure 原生格式存储在 /drone/src/cypress-results

    2.7K10

    Cypress新版本支持Safari浏览器啦!

    Cypress自从面世以来,一直在攻城拔寨,当前,在面试时,国内外优秀的互联网公司都已把掌握Cypress框架算做一项加分技能。...": true, 然后,在测试时,选择"WebKit"作为浏览器。...在 WebKit 中使用带有视频录制的实验性SingleTabRunMode 时,仅录制第一个规范的视频。...] 上的 cy.type('{uparrow}') 和 cy.type('{downarrow}') 不会四舍五入到指定的最近步长 另外,笔者在测试中发现,Webkit的支持,目前仅支持默认的文件结构...,暂不支持自定义文件结构,运行时会报这个错误: 如果你的测试框架是根据我的图书自定义过的,那么可暂时暂停使用这个功能,等Cypress官方修复后再行使用(https://github.com/cypress-io

    1.6K30

    Cypress:详解架构原理与环境设置指南

    Cypress 的核心创新在于: 它并不是像 Selenium 那样通过 WebDriver 间接驱动浏览器,而是把自己嵌入到浏览器内部运行,让测试脚本与被测页面共享同一个运行环境。...浏览器内部运行Cypress 的测试代码直接跑在浏览器里,可直接操作并访问:DOM 元素(无需额外等待)window、document 等浏览器对象XHR / Fetch 网络请求cookie、本地存储等数据没有...安装 Cypress在项目根目录执行:npm install cypress --save-dev安装后:npx cypress open首次运行会生成默认目录结构:cypress/  e2e/        ...在 CI 中使用官方 docker 镜像Cypress 提供专用 docker 镜像,GitHub Actions、GitLab CI、Jenkins 都能轻松集成,让 E2E 测试自动加入流水线。...报告系统接入截图 + 视频失败时自动上传记录,调试成本大幅降低,团队更容易定位问题。这几项工程实践补上之后,Cypress 才算真正变成团队级 “质量利器”,而不是简单的自动化脚本工具。

    24310

    离线部署 Jenkins 填坑指南

    在实际项目中,通过这些实践,目前已经稳定运行了两个月,现在又有了一个新项目也是需要用 Jenkins 来实现自动化部署,但新项目的部署环境是 Linux 离线环境,所以我需要在离线环境上再部署一遍。...二、依赖项 部署后端项目时需要依赖 Java、Maven、Git,对应的离线包版本如下表所示。...序号 依赖项 版本 1 Linux 服务器 建议 ubuntu 20 以上 2 Jenkins 离线 war 包 2.426.1(当前最新版本) 3 Java 离线包,后端部署需要 Java 11, Java...另外有一个提示无法访问 jenkins 更新网站的错误,可以忽略,因为该服务器没联网所以访问不到。 jenkins 运行目录 另外还需要从打印的日志找到 jenkins 的运行目录,后续会用到。...在部署的过程中遇到了很多坑,遇到一个解决一个,希望大家在以后遇到类似问题时,能根据本文档缩短排查问题的时间。

    1.6K11

    Cypress系列(65)- 测试运行失败自动重试

    (如,外部依赖项中断,随机网络错误等)而导致测试失败 其他导致不可靠测试的因素 前端动画 API 调用 测试服务器/数据库的可用性 依赖资源的可用性 网络问题 重试的优势 通过重试,Cypress 能够重试失败的测试用例...{ "scripts" : { "retryCases":"CYPRESS_RETRIES=2 cypress run" } } 使用 在 Cypress 安装目录下运行下面命令...,可以将测试配置为具有 X 次重试次数 例如,测试重试配置了2次重试,则 Cypress 将最多重试2次(共运行3次),然后再标记为失败测试 注意 当再次运行每个测试时,以下 hook 函数也将重新运行...,则会重试运行第一次 重试运行第一次若成功,则继续往下运行其他的测试用例 若重试运行第一次还失败,则重试运行第二次 若重试运行第二次仍然失败,则将此 测试用例标记为失败 注:能够在命令日志中查看尝试的次数...runMode:定义运行 cypress run 时的重试次数 openMode:定义运行 cypress open 时的重试次数 cypress.json 分开定义 ?

    2.7K43

    如何才能避免漏测事故的发生?

    在我们进行测试时候,会遇到漏测的事情发生,不管你是“初出茅庐”,还是从业多年的“老司机”,在测试的时候都会遇到过这样的事情,那么出现漏测的原因都是有哪些,如何才有有效的避免它再次发生,是我们需要考虑的问题...变更追踪:需求变更时,通过工具(如JIRA)实时同步到测试计划,避免信息滞后。二、 测试设计科学化组合应用测试方法:等价类划分 + 边界值分析:覆盖常规和极端输入。...顶层:少量UI自动化(Selenium/Cypress)。精准回归:通过代码变更分析(如Git Diff)定位需回归的模块,避免全量回归的耗时问题。...服务虚拟化:用工具(WireMock)模拟第三方服务(如支付网关),解决依赖不可用问题。六、 缺陷驱动的测试增强根因分析(RCA):对每个缺陷追问“为什么遗漏?”(如“是否缺少异常场景用例?”)。...自动化:Jenkins + Selenium + Appium。监控:Prometheus + Sentry。

    72410

    Vue 应用的代码覆盖率

    Cypress 代码覆盖率插件 以在测试运行结束时将覆盖率对象转换为人和机器皆可读的报告。...# 面向第三方报告服务的行覆盖率 在本地运行测试时,我更喜欢打开 HTML 覆盖率报告: $ open coverage/lcov-report/index.html index.html...在最后一项测试中我们将覆盖仍保留了红色的 decimal () { ... } 方法。 ? 没有被覆盖到的 Decimal 方法 以下测试键入了一个单数位数字并点击了 "." 按钮。...Decimal 测试失败 Cypress 测试的一个强大之处就在于其运行在真实浏览器中。让我们来调试失败的测试。在 src/components/Calculator.vue 放置一个端点。...为避免减慢生产环境运行的代码,你可能只想在运行测试时测量源代码。 因为运行了完整的应用,端到端测试对于覆盖大量代码非常有效。

    3.6K10

    敏捷交付中的自动化测试

    这两年Cypress真的很火,去年在项目上做UI自动化测试的时候,出于好奇也想实践一把。...在项目上做自动化集成到流水线的时候,有遇到一些常见的在云容器里运行测试会遇到的问题。 1)测试工具相关的 在容器里安装puppeteer之前,需要手动下载Chromium包以及相关的依赖。...另外Jenkins有非常丰富的插件库,在选择测试工具的时候可以把是否有Jenkins报告可视化支持考虑进去。...QA需要对Jenkins和测试工具都相当熟悉,还需要知道如何通过将某一测试工具生成的某种格式的测试报告集成在Jenkins上以方便一键获取测试报告。像cucumber的测试报告插件: ?...软件交付是一项团队工作,即便自动化测试也一样需要全员协作。

    1.2K30

    Cypress系列-使用npm命令搭建cypress环境

    为什么要开始学习Cypress? 很简单,IT行业的技术在不断的更新进步,作为IT行业从业者,等你有了几年工作经验之后,你的知识面不能还跟刚毕业的小白一样,啥都不知道。...,让生成的cypress文件夹存放在该目录) npx cypress open 注意事项: 1、启动cypress时,会在当前执行命令的路径下生成cypress文件夹 2、不要进入到node_modules...创建一个项目成功启动后,在项目根目录下用命令启动cypress时,会在根目录生成一个cypress的文件夹,里面有一些写好的现成的测试case: ?...想要运行哪个case,直接在弹出的cypress窗口中点击对应的case就可以运行,运行用例效果如下: Cypress官方文档:https://docs.cypress.io/guides/overview...Pre-request Script和Tests脚本的介绍 Postman教程-Pre-request Script和Tests脚本进阶 Postman教程-如何改变脚本执行顺序 Postman+Newman+Git+Jenkins

    1.2K20

    Jenkins 2.176~2.178版本更新

    (issue 57477, 完整的变更日志) 确保独立的插件(插件曾经是 Jenkins 本身的一部分功能)在 Jenkins 启动时(需要时)作为已经存在的其他插件的隐含依赖项安装。...这简化了不使用更新中心的特殊安装场景的兼容性,例如当 Jenkins 从预先打包了一些插件的 Docker 镜像运行时。...(pull 3997) 将 Windows 代理安装程序从1.10.0更新到1.11,当在 .NET 4.6 或更新版本运行时,在代理下载时启用 TLS 1.2。...(在2.176中回归)。 (issue 57412) 健壮性:对于 ComputerListener#onOnline() 中的运行时异常,不要将代理脱机。...(pull 4006) ---- 推荐阅读: Jenkins 插件开发之旅~上 Jenkins 插件开发之旅~下 从 Jenkins 到 Jenkins X 中文本地化大事件 如何对 Jenkins 共享库进行单元测试

    99430

    Cypress系列(1)- Window下安装 Cypress 并打开

    如果想从头学起Cypress,可以看下面的系列文章哦 https://www.cnblogs.com/poloyy/category/1768839.html 系统要求 Cypress 是一个被安装在你电脑上的桌面应用...直接下载的问题 Cypress 无法运行 DashBoard 服务,直接下载仅用作快速尝试 Cypress;所以,不推荐此方式!虽然很快捷!...,npm 使 JavaScript 代码的分享和重用更加容易 可以和其它任何依赖项一样控制 Cypress 的版本 npm 简化了再持续集成中运行 Cypress 的过程 推荐安装方式二:yarn 安装...Cypress 设置 Cypress 允许配置 package.json 文件的 scripts 字段,来定义打开方式 首先,进入 Cypress安装目录 ,打开 package.json 在 scripts...后面就可以在命令行通过下面命令打开Cypress了 yarn cypress:open ?

    2.8K20

    Cypress入门与优势解析:前端自动化测试的强力工具

    近两年,前端自动化测试在各大互联网团队中越来越火,而 Cypress 作为新一代前端自动化框架,成为开发和 QA 团队热议的对象。...核心功能与优势功能描述对应痛点可视化执行 & Time Travel在浏览器回放每一步操作调试困难自动截图与视频失败自动生成截图和视频回归成本高网络请求监控控制服务器响应、函数、计时器异步请求复杂多浏览器支持...Chrome / Firefox / Edge跨浏览器差异CI/CD 集成Jenkins / GitHub Actions / GitLab快速迭代团队热重载 & 友好 API修改后自动重新加载,API...Cypress 测试流程可视化5....但多域名受限社区支持✅ 大型中等⚠️ 小型视频录制❌ 无内置功能插件✅ 内置视频捕获选项卡 / 子窗口处理✅ 有 API✅ 有 API⚠️ 无 API,需变通并行执行✅ 支持✅ 支持❌ 不支持安装方式需 Jar / 库依赖

    17910

    聊聊测试使用的工具数据无法互通应对策略

    在我们进行测试时,会用到好多工具比如测试管理工具,缺陷管理工具,自动化管理工具,测试环境管理工具等,这些工具往往表现出各自为政,之间的数据有时候无法互通,效率低下,缺乏统一的平台来管理整个测试生命周期(...技术方案上,API集成最实际但实施难度中等,中间件方案适合大企业但成本高,低代码方案是折中选择。...测试工程师面临工具链集成度低、数据孤岛林立的问题时,会导致重复工作、信息断层、协作效率低下和决策依据不足。...:bash# 示例:Jenkins 调用 pytest 并解析结果jenkins-job -> 执行 pytest --junitxml=report.xml -> 解析XML生成报告轻量级统一入口用...五、提升测试效率的专项策略并行执行测试分布式测试:使用 Selenium Grid、Cypress 并行执行测试用例,缩短测试周期配置示例:// Cypress 配置文件(cypress.config.js

    23810

    自动化测试框架选型指南:5大主流工具实战对比

    ⚡ 当团队决定做自动化测试时,选错框架的代价有多大?某电商公司投入3个月搭建的测试框架,因无法支持复杂业务场景被迫废弃——每年浪费超百万人力成本!今天用一张对比表和真实场景拆解,帮你避开选型深坑!...每日执行)  ✅ **推荐方案**:  **Selenium + Pytest + Allure**  ▸ 理由:    - Java栈契合金融开发环境    - Allure报告满足审计要求    - Jenkins...> Cypress内置报告学习成本:Cypress Pytest > Cypress✨ 决策口诀:Web选Playwright,...")    password = ("css", ".pwd-input")    submit_btn = ("xpath", "//button[@type='submit']") 坑3:低估环境依赖案例...:Appium脚本在本地通过,CI环境失败率80%对策:用Docker统一环境FROM selenium/standalone-chrome:103.0ENV NODE_VERSION=18.xRUN

    1.4K10

    自动化-搭建Jenkins实现Pytest代码自动部署

    自动化-搭建Jenkins实现Pytest代码自动部署 本文主要讲述如何通过Docker或直接在Windows上安装Jenkins,如何使用Jenkins自动部署测试代码 前言 自动化测试代码最大的作用就是进行回归测试...allure服务,返回测试报告链接 使用邮件通知测试结果 需求明确了,实现方法上,Docker及windows版本的Jenkins我会分别安装1次 需要特意提及的是,你在使用此教程之前,应该提前将自己的测试代码发布到了...在Jenkins安装路径中, 打开配置文件 Jenkins.xml, arguments内会显示端口等信息 系统运行services.msc, 进入服务页面查找Jenkins可查看部署状态 配置Jenkins...待解决的问题 Docker版本Jenkins在运行hrun代码时发生了ModuleNotFoundError: No module named ‘_ctypes‘ 问题: ctypes模块python中主要用于兼容...C语言数据类型的功能模块.此模块,python自带,而Httprunner在运行时调用此模板报错.经过排查,发现为Linux系统缺少libffi-dev导致,但是安装后make python3失败 [Solved

    1.2K10

    Cypress(四)查询元素

    1.相似: 如果使用Jquery,想通过类选择器查询元素,代码如下: $('.my-selector') 在Cypress里通过类查询同样的元素,代码如下: cy.get('.my-selector')...是不是看起来很像,实际上,Cypress捆绑了JQuery,并提供了很多JQuery的DOM遍历方法,因此可以使用熟悉的API轻松处理复杂的HTML结构。...2.不同 与jquery选择器查询返回的结果处理不同 // 正确, jQuery 会同步返回查询到的元素. const $jqElement = $('.element') // 这将不能运行!...注:在Cypress中,当您想直接与DOM元素交互时,可以使用.then()将元素作为其第一个参数的回调函数进行调用。...三.查询元素设置超时时间 上面提到了,当缺少元素时,Cypress并不会立马返回失败而是继续重试,那么我们如何设置查找元素的超时时间呢?

    2.1K20
    领券