py2app:如何使用捆绑的python解释器运行测试?

时间:2013-11-01 20:06:33

标签: python macos py2app

我使用py2app打包我的应用程序。关于我的应用的一些快速说明:

  • 它使用一个特殊的python可执行文件(即非系统python),py2app包含在bundle中。
  • 我使用py2app配方功能明确地从site-packages.zip中排除了一些包。

过去,我的应用套装有时会出现问题,因为我忘了从site-packages.zip中排除某些软件包。一旦我发现问题,这很容易解决,但我没有快速发现它,因为有问题的包主要工作。该问题仅在测试碰巧在有问题的依赖项中运行特定子模块的特殊情况后才显示出来。

为了避免将来出现这样的问题,我想使用py2app在我的包中包含的完全相同的解释器来运行测试套件。为了实现这一点,我需要在应用启动时以某种方式自动创建的适当环境设置(包括PYTHONPATHDYLD_LIBRARY_PATH等)。

仅仅使用./dist/MyBundle.app/Contents/MacOS/python来运行我的测试似乎没有做到这一点。在完全构建的应用程序包本身上运行测试的推荐方法是什么?

1 个答案:

答案 0 :(得分:1)

您可以使用py2app 0.7中引入的--extra-scripts选项来包含第二个脚本,该脚本在应用程序包中启动测试并使用它来运行测试。

我同意有一种方法可以在应用程序环境中运行脚本,如果你在https://bitbucket.org/ronaldoussoren/py2app的py2app存储库中为此提出问题会很好吗?