我使用py2app来打包我的应用程序。关于我的应用程序的一些快速说明:
- 它使用一个特殊的 python 可执行文件(即非系统 python),py2app 包含在包中。
- 我使用 py2app 配方功能明确地从 site-packages.zip 中排除了一些包。
过去,我的应用程序包有时会出现问题,因为我忘记从 site-packages.zip 中排除某些包。一旦我发现了这个问题,这很容易解决,但我并没有很快发现它,因为有问题的包大部分都有效。该问题仅在测试发生在有问题的依赖项中执行特定子模块的特殊情况后才出现。
为了避免将来出现此类问题,我想使用 py2app 包含在我的包中的完全相同的解释器来运行测试套件。为此,我需要在应用程序启动时自动创建适当的环境设置(包括PYTHONPATH
、DYLD_LIBRARY_PATH
等)。
仅仅./dist/MyBundle.app/Contents/MacOS/python
用来运行我的测试似乎并不能解决问题。在完全构建的应用程序包本身上运行测试的推荐方法是什么?