python - 在 Autodesk Maya 等 Python 环境中使用 Nose 运行单元测试?

标签 python unit-testing environment nose maya

我想开始为我的 Maya 脚本创建单元测试。这些脚本必须在 Maya 环境中运行并依赖于 maya.cmds 模块命名空间。

如何从 Maya 等运行环境中运行 Nose 测试?

最佳答案

使用 maya 安装中包含的 mayapy 可执行文件,而不是标准的 python 可执行文件。

为了完成这项工作,您需要以编程方式运行 nose。创建一个名为 runtests.py 的 python 文件并将其放在您的测试文件旁边。在其中,包括以下代码:

import os
os.environ['PYTHONPATH'] = '/path/to/site-packages'

import nose
nose.run()

由于 mayapy 加载了它自己的 pythonpath,它不知道 nose 所在的站点包目录。 os.environ 用于在脚本中手动设置。您也可以选择将其设置为系统环境变量。

从命令行使用 mayapy 应用程序运行 runtests.py 脚本:

/path/to/mayapy.exe runtests.py

您可能需要导入 maya.standalone,具体取决于您的测试。

import maya.standalone
maya.standalone.initialize(name='python')

关于python - 在 Autodesk Maya 等 Python 环境中使用 Nose 运行单元测试?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/639744/

相关文章:

python - 使用 unicode 字符漂亮地打印 numpy ndarrays

python - matplotlib imshow() 的默认行为

python - Unittest 采用 1 个位置参数,但给出了 2 个

python - 我的用户配置文件中的Ubuntu 16.04默认python环境是Anaconda Python2,无法运行guake "anaconda2/bin/python2: No module named guake"

bash - 无法从 vscode 终端克隆

python - 删除包含 Pandas 中空元组列表的行

python - heroku 服务器上的 django makemigrations 和 migrate 不创建表

android - Mono for Android - 使用 Visual Studio 进行单元测试

ruby - RSpec 规范伪造类常量的最佳实践或解决方法

ios - Swift/Xcode - 如何设置开发者环境配置