针对 zc.recipe.testrunner 运行非蛋化产品

发布于 2025-01-08 12:42:11 字数 230 浏览 0 评论 0原文

我有一些旧产品仍然可以与 Plone 4.1 一起正常工作,

这些产品之前使用 bin/instance test 命令运行了单元测试。 由于产品很旧,因此它们没有包装为 Egg,而是通过 products buildout 指令使用。

zc.recipe.testrunner 是否以某种方式找到这些产品并且能够执行它们的单元测试?

I have some old products which still work fine with Plone 4.1

These products have unit tests run earlier with bin/instance test command.
Since the products are old, they are not packaged as eggs, but used thru products buildout directive.

Does zc.recipe.testrunner somehow find these products and is it able to execute their unit tests?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

聽兲甴掵 2025-01-15 12:42:11

不可以,zc.recipe.testrunner 无法运行非蛋化产品。我认为蛋化你的产品而不是尝试一些炼金术会花费更少的时间。

No, zc.recipe.testrunner can't run non-eggified products. I think it would take less time to eggify your products rather then trying some alchemic trick.

淡看悲欢离合 2025-01-15 12:42:11

如果您确实确实需要这样做,请将以下内容添加到您的测试运行程序部分:

products = ${instance:products}
initialization =
    import OFS.Application
    import Products
    Products.__path__ = getattr(Products, '__path__', []) + \
        [p.strip() for p in """${:products}""".split('\n') if p.strip()]
    OFS.Application.import_products()
    import App.config
    App.config._config = None

这应该被视为最后的手段,并且在几乎所有情况下,最好创建一个合适的鸡蛋来替换产品。

If you really, really need to do this, add the following to your testrunner section:

products = ${instance:products}
initialization =
    import OFS.Application
    import Products
    Products.__path__ = getattr(Products, '__path__', []) + \
        [p.strip() for p in """${:products}""".split('\n') if p.strip()]
    OFS.Application.import_products()
    import App.config
    App.config._config = None

This should be considered a last resort and in almost every case, it is preferable to create a proper egg to replace the product.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文