SAP 电商云 Spartacus Schematics 开发环境搭建-阿里云开发者社区

开发者社区> -开发者助手-> 正文

SAP 电商云 Spartacus Schematics 开发环境搭建

简介: SAP 电商云 Spartacus Schematics 开发环境搭建
+关注继续查看

Prerequisites

全局安装 angular 原理图:npm install -g @angular-devkit/schematics-cli。 确保 Angular CLI 是最新的: npm install -g @angular/cli@latest


单元测试

要运行所有原理图单元测试:


$ ./node_modules/ts-node/dist/bin.js ./tools/schematics/testing.ts 并选择测试所有原理图选项。


要为特定库运行原理图测试:


导航到您要测试的库/项目 - 例如 $ cd 功能库/asm

运行 $ yarn test:schematics。 请注意,在测试项目/原理图时,要运行的命令是 $ yarn test。


原理图已经有单元测试来覆盖它们设计用来执行的迁移任务。 但是,您可能想要测试您添加的新原理图配置是否会产生预期的结果,当用户将在原理图的帮助下执行迁移而不在应用程序上运行完全迁移时,这将非常耗时。 测试新配置的一种便捷方法是临时修改原理图单元测试用例,并使用将使用新配置的示例。 在您评估您的迁移方案按预期进行后,您可以恢复您在单元测试中所做的更改。


以下几点提供了如何实现这一目标的指导。


假设您正在处理构造函数弃用任务,在这种情况下,您将打开 projects/schematics/src/migrations/mechanism/constructor-deprecations/constructor-deprecations_spec.ts。

image.png首先要更改的是 MIGRATION_SCRIPT_NAME。如果您正在测试 v3 的迁移任务,您需要将 MIGRATION_SCRIPT_NAME 常量的值更改为 migration-v3-constructor-deprecations-03(注意名称中的 v3)。image.png要查看迁移脚本的确切名称,您可以转到 projects/schematics/src/migrations/migrations.json 并将您正在测试的脚本名称复制粘贴到规范文件中。

image.png接下来,您可以挑选一个使用类作为输入的测试(从客户的角度来看,该类是一个组成的测试类,表示为字符串)。测试的输出也是一个类,通过原理图修改(基本是预期的结果);同样,此类也表示为字符串。因此,在构造函数弃用的情况下,您可以修改例如


ADD_AND_REMOVE_PARAMETER_VALID_TEST_CLASS 常量以匹配您的输入。然后,您可以只使用 console.log() 结果并在控制台中手动断言迁移的代码。


执行之前的 class 源代码和执行之后期望的源代码:

image.png为了节省一些时间,建议使用上一步中的常量来描述(或拟合)测试。要运行测试,请按照本节开头的步骤进行操作。


另一个好处是它消除了终端中的大量噪音,这在使用 console.log() 结果时特别有用。


Update schematics

将 Spartacus 升级到新的主要版本(例如,从 3.x 到 4.0)时,Spartacus 迁移机制会自动修复新版本中修改或删除的代码。


当您处理功能或错误,或对 Spartacus 源代码进行任何其他更改时,您需要更新原理图作为完成定义的一部分。 通过将这些更新迭代地作为 DoD 的一部分对源代码进行每次更改,您就不必在开发周期结束时花费大量时间升级迁移机制,因此,它更容易 为新的主要版本准备 Spartacus 库。


版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
基于Pacemaker的PostgreSQL一主多从读负载均衡集群搭建
基于Pacemaker的PostgreSQL一主多从读负载均衡集群搭建 简介 PostgreSQL的HA方案有很多种,本文演示基于Pacemaker的PostgreSQL一主多从读负载均衡集群搭建。
2555 0
uiz
Mac下 go环境搭建
Mac下 go环境搭建
1324 0
怎么设置阿里云服务器安全组?阿里云安全组规则详细解说
阿里云服务器安全组设置规则分享,阿里云服务器安全组如何放行端口设置教程
8373 0
tomcat源码编译和环境搭建
关于tomcat源码的编译和环境搭建自己也是拖了一段时间,今天还是硬着头皮来做一做,还是有所收获。 tomcat源码的编译还是首选ant,作为apache的顶级项目ant,可以参见下面的链接进行下载,下载一个二进制运行包即可。
1066 0
【阿里云ACE】北京同城会 | 线下WORKSHOP 小白秒变大神搭建博客圆满完成
零基础小白也想上手实践?想体验用ECS搭建云上博客?想结识更多对ECS感兴趣的开发小伙伴?想获得阿里云限量周边?5月30号阿里云ACE同城会北京会长张维带你玩转ECS,快速搭建云上博客。
93 0
ADF_ADF Faces系列2_使用JSF开发基于Ajax的用户界面:ADF Faces富客户端组件简介(Part2)
2013-05-01 Created By BaoXinjian 一、摘要 待整理 待整理 待整理 待整理 待整理 待整理 Thanks and Regards ERP技术讨论群: 288307890 技术交流,技术讨论,欢迎加入 Technology Blog Create...
604 0
ADF_ADF Faces系列1_使用JSF开发基于Ajax的用户界面:ADF Faces 富客户端组件简介(Part1)
2013-05-01 Created By BaoXinjian 一、摘要 待整理 待整理 待整理 待整理 待整理 待整理 Thanks and Regards ERP技术讨论群: 288307890 技术交流,技术讨论,欢迎加入 Technology Blog Create...
720 0
2450
文章
0
问答
来源圈子
更多
+ 订阅
文章排行榜
最热
最新
相关电子书
更多
《2021云上架构与运维峰会演讲合集》
立即下载
《零基础CSS入门教程》
立即下载
《零基础HTML入门教程》
立即下载