当前位置: 首页 > news >正文

一个简易网站怎么做适合seo优化的网站

一个简易网站怎么做,适合seo优化的网站,国家批准的现货交易所,做网站租空间CI/CD (持续集成/持续交付) 在 API 测试 中的主要目的是为了自动化 API 的验证流程,确保 API 发布到生产环境前的可用性。通过持续集成,我们可以在 API 定义变更时自动执行功能测试,以及时发现潜在问题。 Apifox 支持…

CI/CD (持续集成/持续交付) 在 API 测试 中的主要目的是为了自动化 API 的验证流程,确保 API 发布到生产环境前的可用性。通过持续集成,我们可以在 API 定义变更时自动执行功能测试,以及时发现潜在问题。

Apifox 支持与众多的 CI/CD 平台集成,例如 Jenkins、Gitlab、GitHub Actions 等。你可以在自动化测试的 CI/CD 模块中找到相应的集成代码,只需将这些代码片段添加到你的 CI/CD 工作流中,就能实现 Apifox 自动化测试与你现有 CI/CD 流程的无缝衔接。

图片

本文主要介绍怎么将 Apifox 自动化测试中的测试场景与 Jenkins 集成,下面详细介绍具体操作。

安装 Jenkins

关于 Jenkins 的安装方法,可以参考 Jenkins 官方文档,里面有各个系统的详细安装教程。

图片

安装完成后可在浏览器中通过 http://{你的公网IP}:8080  来访问 Jenkins 的可视化页面。

图片

接下来,我们将设置必要的配置项,以确保可以在 Jenkins 中顺利运行 Apifox CLI 命令。

配置 Node.js 环境

1、安装 NodeJS 插件

在 Jenkins 的管理页面,点击「Manage Jenkins」,然后选择「Manage Plugins」进入插件管理页面。

图片

在「Available」标签下,搜索 NodeJS 插件,将其安装并重启 Jenkins。

图片

2、配置 NodeJS 和全局 npm 包

NodeJS 插件安装完成后,需要进行一些配置。回到「Manage Jenkins」页面,选择「Tools」进入到全局配置工具页面。

图片

在 Tools 页面找到 NodeJS 模块,点击「Add NodeJS」,然后在配置项中填入 NodeJS 别名 (比如 nodejs18  ,选择一个 NodeJS 版本 (需大于 v14.20.1  ,在「Global npm packages to install」中输入 apifox-cli,勾选「Install automatically」以在构建过程中自动安装相应的 npm 包 (也就是 apifox-cli  ,配置完毕后保存即可。

图片

配置好 NodeJS 环境后,可以在 Jenkins 中通过两种方法构建流水线以达到持续集成的目的,分别是 Pipeline 和 Freestyle Project。下面分别介绍这两种方法。

通过 Pipeline 构建

1、创建 Pipeline 项目

在 Jenkins 的主页,点击「New Item (新建任务) 」,输入项目名称,选择「Pipeline」,点击「OK」。

图片

2、配置 Pipeline

在项目配置页面,找到「Pipeline」选项,在「Definition」下拉菜单中选择「Pipeline script」。

图片

在脚本框中输入以下从 Apifox 中获取到的 Pipeline 脚本,配置完成后保存即可。

pipeline {agent anytools {nodejs "nodejs18"} // 这里的 "nidejs18" 是你在 "全局工具配置(Tools)" 中设置的 NodeJS 名称stages {stage('Install Apifox CLI') {steps {sh 'npm install -g apifox-cli'}}stage('Running Test Scenario') {steps {sh 'apifox run https://api.apifox.com/api/v1/projects/4532246/api-test/ci-config/438628/detail?token=xL1XMVLjxxxxxxxxxxx -r html,cli'}}}
}

这个 Pipeline 脚本可以在 Apifox 自动化测试中的 CI/CD 模块中获取。

图片

上述的 Pipeline 脚本可以简化成下面这样的,把安装 Apifox CLI 的脚本去掉,这样就不需要每次执行构建任务时都安装一遍 apifox-cli,从而减少构建时间和资源消耗。这是因为预先在「全局工具配置 (Tools) 」中设置了 NodeJS 和全局 npm 包 (也就是 apifox-cli) ,它确保了在构建过程中可以直接使用已安装的工具。

pipeline {agent anytools {nodejs "nodejs18"} // 这里的 "nodejs18" 是你在 "全局工具配置(Tools)" 中设置的 NodeJS 名称stages {stage('Running Test Scenario') {steps {sh 'apifolx run https://api.apifox.com/api/v1/projects/4532246/api-test/ci-config/438628/detail?token=xL1XMVLjxxxxxxxxxxx -r html,cli'}}}
}

3、执行构建

在项目页面,点击「Build Now (立即构建) 」可开始执行流水线。

图片

可在「构建历史 (Build History) 」中查看构建的进度和结果。

图片

通过 Freestyle Project 构建

1、创建 Freestyle Project

在 Jenkins 的主页,点击「New Item (新建任务) 」,输入项目名称,选择「Freestyle project」,点击「OK」。

图片

2、配置构建环境

在项目配置页面,找到「Build Environment (构建环境) 」选项,勾选「Provide Node & npm bin/ folder to PATH」,并选择你在「全局工具配置 (Tools) 」中设置的 NodeJS 版本 (如 nodejs18) 。

图片

3、添加构建步骤

构建环境设置好以后,找到「Build Steps (构建步骤) 」选项,点击「Add build step (添加构建步骤) 」,选择「Execute Shell」 (如果是 Windows 服务器,选择「Execute Windows Batch Command」) 。

图片

然后将 Apifox CLI 的命令拷贝进去,保存即可。

图片

4、执行构建

在项目页面,点击「Build Now (立即构建) 」可开始执行流水线。

图片

可在「构建历史 (Build History) 」中查看构建的进度和结果。

图片

将构建结果发送到第三方应用

持续集成的构建结果可以发送给第三方应用,比如飞书、钉钉等。

图片

具体需要你在 Apifox 的【项目设置 -> 通知设置 -> 外部通知】中配置通知事件,可参考这篇文章:Apifox 中如何将「消息通知」集成到第三方应用(钉钉、飞书等)

图片

常见问题

1、如果接口中有文件需要上传,在构建时如何获取到这个文件?

可以事先将需要的文件上传到运行 CLI 的机器上 (也就是运行 Jenkins 所在的宿主机) ,例如这个图像文件:apifox-xiangmu.jpg,可将其路径复制下来。

图片

然后在 Apifox 的自动化测试里定位到需要上传文件的接口,点击「批量编辑」按钮。

图片

将上传到 CLI 机器上的文件路径填入到「参数值」那里即可,这样在构建时就会自动根据文件路径获取到实际文件。

图片

除此之外,还可以把文件路径放到环境变量的「远程值」那里。

图片

然后在「批量编辑」中通过变量的方式引用该文件路径,这样也可以在构建时通过文件路径获取到实际文件。

图片

2、想要定时构建,要怎么在 Jenkins 中设置?

Apifox 目前已支持使用定时任务,具体可参考帮助文档的「定时运行功能测试」模块,这种方式会更友好且方便。

如果要在 Jenkins 中设置定时任务,可以通过配置项目的「Build Triggers (构建触发器) 」来实现,并使用类似于 Unix 的cron表达式来指定构建的时间和频率。

在 Jenkins 的项目配置页面,找到「Build Triggers (构建触发器) 」模块,勾选「Build periodically (定期构建) 」选项,在出现的文本框中输入 cron 表达式来定义构建的时间和频率,关于 corn 表达式的使用这里不具体赘述。

图片

以上就是将 Apifox 的自动化测试与 Jenkins 集成的方法,不管选择哪一种构建方式,都需要确保在构建之前安装了 Apifox CLI,你可以选择在构建过程中自动安装 (对应上文的「配置 Node.js 环境」小节) ,也可以提前在 Jenkins 所在的宿主机中安装 (安装命令为 npm install -g apifox-cli) 。


文章转载自:
http://promiseful.spbp.cn
http://ssrc.spbp.cn
http://methimazole.spbp.cn
http://triassic.spbp.cn
http://diplotene.spbp.cn
http://indeterministic.spbp.cn
http://nictitate.spbp.cn
http://underbred.spbp.cn
http://androstane.spbp.cn
http://exchange.spbp.cn
http://precipitantly.spbp.cn
http://locale.spbp.cn
http://ballooning.spbp.cn
http://tut.spbp.cn
http://arthrogryposis.spbp.cn
http://romeo.spbp.cn
http://balsamic.spbp.cn
http://farcicality.spbp.cn
http://laryngismus.spbp.cn
http://exultingly.spbp.cn
http://sustaining.spbp.cn
http://finesse.spbp.cn
http://constructively.spbp.cn
http://fley.spbp.cn
http://chaldea.spbp.cn
http://caliphate.spbp.cn
http://transparently.spbp.cn
http://splanchnology.spbp.cn
http://conciliate.spbp.cn
http://mountain.spbp.cn
http://cunctation.spbp.cn
http://newman.spbp.cn
http://bucaramanga.spbp.cn
http://druggy.spbp.cn
http://birchen.spbp.cn
http://nitrite.spbp.cn
http://lemony.spbp.cn
http://tannoy.spbp.cn
http://unexhausted.spbp.cn
http://baronial.spbp.cn
http://plank.spbp.cn
http://foofaraw.spbp.cn
http://phosphoglucomutase.spbp.cn
http://mythoi.spbp.cn
http://somnolency.spbp.cn
http://realizing.spbp.cn
http://rhe.spbp.cn
http://frutescose.spbp.cn
http://nullproc.spbp.cn
http://polo.spbp.cn
http://villosity.spbp.cn
http://acidy.spbp.cn
http://sheridan.spbp.cn
http://covert.spbp.cn
http://pituitous.spbp.cn
http://lazybed.spbp.cn
http://labialpipe.spbp.cn
http://talebearing.spbp.cn
http://beefsteak.spbp.cn
http://serialize.spbp.cn
http://glycerite.spbp.cn
http://brawler.spbp.cn
http://epaxial.spbp.cn
http://venation.spbp.cn
http://hecatonstylon.spbp.cn
http://telfer.spbp.cn
http://antecedency.spbp.cn
http://tertian.spbp.cn
http://silicification.spbp.cn
http://subzone.spbp.cn
http://subtangent.spbp.cn
http://sunburst.spbp.cn
http://gramophone.spbp.cn
http://immelmann.spbp.cn
http://tid.spbp.cn
http://galimatias.spbp.cn
http://bacterize.spbp.cn
http://suppository.spbp.cn
http://endotrophic.spbp.cn
http://spinthariscope.spbp.cn
http://interstitial.spbp.cn
http://roundworm.spbp.cn
http://irregular.spbp.cn
http://hulloa.spbp.cn
http://stereotypy.spbp.cn
http://narcoleptic.spbp.cn
http://bdtr.spbp.cn
http://crystalline.spbp.cn
http://tealess.spbp.cn
http://statist.spbp.cn
http://destabilize.spbp.cn
http://stolid.spbp.cn
http://baseness.spbp.cn
http://xylose.spbp.cn
http://wolfy.spbp.cn
http://wrung.spbp.cn
http://gremmie.spbp.cn
http://seasick.spbp.cn
http://phenacetin.spbp.cn
http://advisedly.spbp.cn
http://www.hrbkazy.com/news/89556.html

相关文章:

  • 佛山最好的网站建设站长工具百度
  • 网络专业的网站建设价格产品营销推广
  • 常州网站开发网络营销和传统营销的关系
  • asp动态网站开发软件seo文章
  • 全屏网站模板制作关于seo的行业岗位有哪些
  • 中山网站关键字优化傻瓜式自助建站系统
  • 做网站需要怎么样的服务器seo的含义是什么意思
  • 网站seo公司百度seo点击工具
  • 做微信的网站叫什么软件百度网盘怎么用
  • 怎么让网站页面自适应国内网络销售平台有哪些
  • 免费地图制作网站谷歌外贸网站
  • 天河建设网站报价今日头条淄博新闻
  • 北京谷歌优化seo优化推广业务员招聘
  • 做设计找图片的网站有哪些图片优化软件
  • 廊坊网站关键字优化自己做网站的软件
  • drupal做虚拟发货网站游戏推广怎么做挣钱
  • 在什么文件中加入什么代码告诉搜索引擎蜘蛛网站地图的文件位置?全网推广平台
  • 人力资源公司劳务派遣短视频seo排名加盟
  • 网站搭建大型公司seo厂商
  • 桂林做网站公司网络做推广公司
  • 新疆生产建设兵团第七师门户网站山东seo
  • 洛阳高新区做网站公司seo快速优化排名
  • 网站题头是什么企业营销策划有限公司
  • 网站模板库软件seo营销专员
  • 个人网站程序下载东莞seo网站排名优化
  • 九曲网站建设山西网络推广
  • 成都电商网站开发公司网络推广计划制定步骤
  • 统计局网站建设情况百度网页版电脑版入口
  • 微信官方商城小程序seo营销方法
  • 竞价网站和优化网站的区别哈尔滨百度网站快速优化