如何在我的黄瓜和茉莉花测试之间共享一个夹具?
我可以使用一个 jasmine 服务器集成测试创建一个夹具,该测试可与其他 jasmine 服务器集成测试一起使用。但是(我猜是因为不同的“镜子”?)我不能在黄瓜测试中使用相同的夹具。Mongo 集合没有 jasmine 服务器集成测试创建的数据。
一种选择是将状态保存到平面文件或 nock 中,类似于流星之外的东西。但是,为测试夹具引用一个公共集合(在同一个镜像上?)会简单得多。这可能吗?
如何在我的黄瓜和茉莉花测试之间共享一个夹具?
我可以使用一个 jasmine 服务器集成测试创建一个夹具,该测试可与其他 jasmine 服务器集成测试一起使用。但是(我猜是因为不同的“镜子”?)我不能在黄瓜测试中使用相同的夹具。Mongo 集合没有 jasmine 服务器集成测试创建的数据。
一种选择是将状态保存到平面文件或 nock 中,类似于流星之外的东西。但是,为测试夹具引用一个公共集合(在同一个镜像上?)会简单得多。这可能吗?
您可以将 package-fixture 模式用于固定装置来实现您的要求。见这里:https ://github.com/meteor-velocity/velocity#fixtures--test-data
您使用包描述符中的标志创建的任何包debugOnly
都不会在生产中捆绑。
一切皆有可能。但是,我不建议让测试相互依赖。正如维基百科所说:
理想情况下,每个测试用例都独立于其他测试用例。
您的测试应该独立的几个原因:
目前Velocity 为您的应用程序的测试镜像实例硬编码端口 5000,但我知道有努力使该端口可配置(这必须由测试框架本身支持)。
对此的总结答案是:不支持使用测试工具之间的共享运行时状态(尽管两者都可以从同一个夹具包中执行代码)。我要使用的用法不是传统模式,并且涉及测试之间的某种依赖关系。
为了得到我想要的东西,我必须编写自己的工具。我想要的基本上是一个围绕 nock 的包装器,通过在打开集成的情况下记录我的 e2e 测试的结果来帮助我生成测试装置。