Javascript 我应该如何编写好的快照测试?

Javascript 我应该如何编写好的快照测试?,javascript,testing,snapshot,lit-element,lit-html,Javascript,Testing,Snapshot,Lit Element,Lit Html,在编写快照测试时,我需要进行一系列的交互。例如,选择“商品”目录如下所示: const exploreMerchandiseCatalogAction = async element => { await aTimeout(2); element.service.send(hydrateEvent); await aTimeout(2); catalogSelectElement(element).click(); await aTimeout(2); mercha

在编写快照测试时,我需要进行一系列的交互。例如,选择“商品”目录如下所示:

const exploreMerchandiseCatalogAction = async element => {
  await aTimeout(2);
  element.service.send(hydrateEvent);
  await aTimeout(2);
  catalogSelectElement(element).click();
  await aTimeout(2);
  merchandiseCatalog(element).click();
};

但是我现在需要点击“添加选择”按钮,只有当选择中间列中的选项时,点击按钮才出现:

const addSelectionAction = async element => { /* snip! */ }
此功能需要选择商品目录,然后单击“电子产品”(例如)

应:

  • 执行此“操作”的函数将执行所有 要实现这一点,需要以前的步骤吗?(那么它是不可组合的, 但它是安全的)
  • 这个函数应该独立存在,并且它的 以确保您正确使用它
  • 这个函数应该抛出 如果出了什么问题,那就是一个错误
  • (可能的话,idk是如何做到这一点的 将工作)我应该使这一切都通过聪明的方式安全 返回签名类型和输入类型的使用
  • 选项1看起来像是附加图片一样的函数,但我不确定如何使它们安全地独立组合

    另一个相关链接:

    我应该采取方法1、2、3、4还是其他?为什么?