云网站服务器_国内数据云存储_移动云数据库服务器主机-搜集站云

数据库_网页访问数据库_代金券

小七 141 0

在实习期间,物联网安全,我学到了自动化测试是持续集成的关键。对于基于SAPUI5/OpenUI5的应用程序,可以使用Karma插件、UI5插件和puppeter插件运行自动单页接受(OPA)测试。在本文中,我将展示如何使用Jenkins共享库Piper(也称为Project Piper)和Docker映像,使用这些插件在Jenkins管道中运行OPA测试。我按照本文中的步骤将Piper库导入到我的Jenkins项目中:https://blogs.sap.com/2017/11/21/continuous-delivery-with-jenkins-pipelines/我添加了Piper库所需的插件:https://sap.github.io/jenkins-library/jenkins/requiredPlugins/此外,我还将这些插件添加到我的Jenkins项目中:管道实用步骤节点JS太棒了Groovy Laval分配插件Groovy后期构建Groovy远程控制插件配置为代码插件–Groovy脚本扩展Docker管道HTTP POST插件Kubernetes插件管道管道:Groovy管道:Github Groovy库管道:共享Groovy库管道:通过HTTP检索共享Groovy库矩阵Groovy执行策略插件我在Jenkins管道中包含了一个具有以下结构的web应用程序:src公司…..网状物包.jsonkarma.conf.json文件网络应用测试集成安排页所有旅程.js……opaTests.qunit.html文件opaTests.qunit.js文件单元testuite.qunit.html测试套件.qunit.js

在Jenkins管道中运行OPA测试需要无头浏览器。Puppeteer是Google提供的一个插件,大数据提供,它帮助运行一个无头googlechrome浏览器实例。无头浏览器运行时没有接口,这有助于在管道中进行前端测试。在运行OPA测试之前,我在Jenkins管道的一个步骤中安装了这个插件因果报应.conf.js必须添加到web文件夹中。在这个配置文件中,云服务器厂商,我定义了测试框架和用于运行OPA测试的浏览器。

我将环境变量CHROME\u BIN设置为puppeter的可执行路径。当Karma试图启动googlechrome浏览器时,它会查找浏览器环境变量以找到浏览器的安装位置。我将框架设置为"ui5"。这个插件可以用来测试SAPUI5和UI5项目。我定义了一个名为"Chrome\u without\u security"的自定义浏览器,它是一个无头的Google Chrome浏览器包.json文件中,我定义了运行Karma和OPA测试的NPM命令。我通过执行命令"npm run OPA"或"npm run karma"来运行OPA测试。

我创建了一个Docker映像并将其推送到SAP Docker注册表。在这个Docker图片中,我安装了puppeter插件和googlechrome浏览器的依赖项。我还安装了Karma命令行界面(CLI),因为我必须执行命令"Karma start"。我相信通过将这些依赖项添加到Docker映像中,测试过程会更快,因为我不需要每次运行OPA测试时都安装所需的所有依赖项。我只在需要更新时才重新安装这些依赖项。这是我的Docker映像的Docker文件:

有关我如何在SAP Docker注册表中创建Docker映像的更多详细信息,我按照以下链接中的说明操作:https://jam4.sapjam.com/groups/bj6jHmbsTtR3CSKav2gwYY/overview\u page/z18IxsQR6qbnS31OqBWDYP

如前所述,我将SAP Piper Jenkins库导入我的Jenkins项目。我遵循了这篇博文中的步骤:https://blogs.sap.com/2017/11/21/continuous delivery with jenkins pipelines/。在Jenkins配置中,我将导入的Piper库命名为"Piper library os"。此名称是可变的,需要将Piper库导入到Jenkinsfile中。我在Jenkinsfile部分对此进行了解释。

另外,大数据网站,我还提供了Docker凭据,以使用我创建的SAP Docker映像。在Jenkins项目配置中(路径:Jenkins>Manage Jenkins>Configure System),我添加了Docker凭证:

我点击"Add",输入了我的SAP用户名和密码。我将Docker凭据的ID设置为"dockerCredentials"。在Jenkinsfile中,这个ID作为参数传递给命令docker.with注册表(..). 这允许我提取在SAP Docker注册表中创建的Docker映像。

在我的Jenkins文件中,好评返现,我执行了以下操作:

我使用以下命令导入了Piper库:@library('Piper-library-os')。名称Piper library os是我导入Piper库时在Jenkins配置中提供的名称。我将Docker注册表设置为SAP Docker注册表。我输入了创建Docker映像时获得的端口号。此外,我还指定了从SAP Docker注册表访问Docker映像的凭据:docker.with注册表(‘https://docker.wdf.sap.corp:[port number],'dockerredentials')我使用了Piper命令dockerExecute和SAP Docker映像的名称作为参数docker.wdf.sap文件.corp:[端口]/[图像名称]。我在"web"文件夹下运行Jenkins管道。我使用dir命令('./[path to web folder]')来完成这个任务。我安装了Karma、puppeter和UI5插件:sh'npm install Karma Karma chrome launcher Karma coverage puppeter Karma-UI5–save dev'。我安装了@openui5 resources。这些是运行UI时添加到resources文件夹的UI资源:sh'npm install@openui5/sap.m@openui5/sap.ui.core–保存产品我通过执行以下命令来运行OPA测试:sh'npm run OPA'。