在 Autodesk Maya 等 Python 环境中使用 Nose 运行单元测试?
我想开始为我的 Maya 脚本创建单元测试。 这些脚本必须在 Maya 环境内运行并依赖于 maya.cmds
模块命名空间。
如何从 Maya 等运行环境内部运行 Nose 测试?
I'd like to start creating unit tests for my Maya scripts. These scripts must be run inside the Maya environment and rely on the maya.cmds
module namespace.
How can I run Nose tests from inside a running environment such as Maya?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
使用 Maya 安装中包含的 mayapy 可执行文件而不是标准的 python 可执行文件。
为了完成这项工作,您需要以编程方式运行鼻子。 创建一个名为
runtests.py
的 Python 文件并将其放在测试文件旁边。 在其中包含以下代码:由于 mayapy 加载自己的 pythonpath,因此它不知道nose 所在的 site-packages 目录。 os.environ 用于在脚本内手动设置。 您也可以选择将其设置为系统环境变量。
从命令行使用 mayapy 应用程序运行
runtests.py
脚本:您可能需要导入
maya.standalone
,具体取决于您的测试的用途。Use the mayapy executable included in your maya install instead of the standard python executable.
In order for this work you'll need to run nose programmatically. Create a python file called
runtests.py
and put it next to your test files. In it, include the following code:Since mayapy loads its own pythonpath, it doesn't know about the site-packages directory where nose is. os.environ is used to set this manually inside the script. Optionally you can set this as a system environment variable as well.
From the command line use the mayapy application to run the
runtests.py
script:You may need to import the
maya.standalone
depending on what your tests do.