首先在本地启动 Spartacus instance, 比如执行b2c.bat
:
进入文件夹:projects/storefrontapp-e2e
yarn install
:
然后yarn cy:open
最后就可以开始测试了:
有的时候,如果我本地启动的 SAP Spartacus 服务器的端口不是 4200,比如说是 4299,那么 Cypress 会报一个 warning:Cypress could not verify that this server is running:
需要修改 cypress.json 配置文件里的 baseUrl:
更改之后问题消失:
有的时候需要等到下列 radio input 从 disable 变成 enabled 状态才校验时,可以把校验代码包装在 cy.get.then 的回调函数里:
注意:有的时候 cypress 报了错误,但是当前行并不是引起错误的根源,比如下图的错误消息:
找不到带有 cx-payment-type 的元素:
但实际上是因为前一步执行失败了,因此才导致本步骤期望的页面没有显示出来。
可以在 require-logged-mands.ts 文件里加上打印语句,查看 cypress 测试用户的创建逻辑:
注意
b2c.bat 运行使用的 API endpoint 需要和 cypress.json 配置文件里的 endpoint 相一致,不然在用户登录时会出现认证错误。
-12-28
如果遇到 cy.visit("/") 超时 timeout 错误,先用 Cypress 启动的浏览器窗口访问一下 Spartacus,确保并无问题。
-1-14
CDC 集成出错:vendor/cdc/b2c/b2c-scenarios.e2e-spec.ts
更多Jerry的原创文章,尽在:“汪子熙”: