创build一个依赖于docker for node.js模块的testing是否可以接受?

我目前有一个模块需要在不同的场景下进行testing。

但是为了改进testing,我有很多文件复制和child-process执行。

也许Docker是运行testing的一个很好的解决scheme,但是这会增加对Docker的依赖。

另外我还没有看到依赖于docker的软件包。

那么对于一个npm包,发布一个依赖docker的testing包是否可以接受呢?

我首先想想你的目标受众 – 用户下载你的模块的可能性是否已经安装了Docker?

如果您的模块已经与Docker相关,那么假设大多数用户已经拥有Docker。 如果是处理React路由的util,可能不是。

您还应该考虑testing某些难以testing的function与testing它们所产生的难度或复杂性的影响。

对于绝大多数使用npm模块的人来说,他们很less运行testing。 运行testing是为积极开发和贡献模块的人而保留的。

可能适合您的问题的一个常见方法是在项目中包含Docker设置和testing,但将其从实际模块本身中排除。 在模块的package.json中,可以包含一个files属性, 该属性定义发布模块时应该包含哪些文件 。

使用这种方法,您可以以适合您的方式设置和运行testing – 如果需要的话可供任何有用的贡献者使用 – 但不会给日常用户带来额外的设置而不必负担。