php - Faker 污染 VRT 如何使用相同的随机数据运行 VRT 测试,因此找不到视觉差异
问题描述
我在很多项目中使用faker。最近我被介绍到 VRT(视觉回归测试),这个过程在部署之前拍摄站点的快照,然后在部署之后立即拍摄,并提醒用户布局的任何变化。我是一个品牌的唯一 FED 开发人员,并且需要能够在 VRT 流程第二次运行时重复来自 faker 的随机结果。如果我不这样做,VRT 过程将毫无用处,因为我返回的结果太多,无法全部测试。
有谁知道我可以继续使用faker进行正在进行的开发但以某种方式捕获随机种子进行渲染,保留它并重新运行它以进行第二次VRT测试的方法?所以第二次所有的文本都会以同样的方式显示。我们使用詹金斯。
也许有一种方法可以调用 faker 来传递一个特定的随机数,这样我们就可以使用 jenkins 来运行一个传递唯一随机数的构建?因此,我们将使用“yarn run VRT-compile”而不是“yarn run compile”,并且“yarn run VRT-compile”将传入相同的随机数。我该怎么做?
所以这就是我们发现的结果:事实证明,利用 jenkins,我们能够添加自定义 php 文件来处理 faker 种子变量,并将其添加/删除到项目中,然后再为我们想要的构建运行 yarn compile。我们向 PatternLab 我们的前端模板系统创建的 faker 插件提交了一个 PR,以便他们在本机添加此功能到插件中,但尚未收到回复。
解决方案
推荐阅读
- python - 如何在 selenium 中使用相对路径来保存报告?
- javascript - 什么是 webpack 的机制来确定应该包含包的哪一部分
- javascript - NodeJS API POST请求未通过
- c# - “如何使windows窗体与Microsoft Office通信?”
- java - 放置在单独的测试类中时代码不执行
- angular - 使用 Angular HttpClient 通过代理发送请求
- api - 有没有办法只查找/显示 IG 用户在特定位置(即巴厘岛)标记的帖子?
- c# - EF Core 会更新添加的实体并再次添加(使用不同的键)会影响之前添加的实体吗?
- python - 有没有办法检查符号是否是 Python 中的有效运算符?
- matlab - matlab中是否有任何功能可以创建固定系列?