Mag*_*nus 6 python nose cython
当玩鼻子并尝试将它与cython结合时,我无法完全按照我喜欢的方式工作.代码组织如下:
.
??? setup.py
??? src
??? calc
? ??? factorial.py
? ??? __init__.py
? ??? tests.py
??? cycalc
??? tests.py
??? triangle.pyx
Run Code Online (Sandbox Code Playgroud)
每个tests.py包含2个测试,一个成功,一个失败.运行的结果setup.py nosetests是只calc/tests.py运行.如果我在此运行之后运行nosetests3 src/cycalc了两个测试cycalc/tests.py.但是,如果我清理所有构建文件,它会失败,因为cycalc/triangle.pyx尚未内置到共享库中.
然后我尝试添加文件src/cycalc/__init__.py,现在setup.py nosetests拿起cycalc/tests.py但它找不到所需的模块,它被放入src.
如何安排我的cython源代码和测试以setup.py nosetests找到它需要的一切?
为了nose自动运行测试,您应该将它们添加到包含所有测试的名为测试的文件夹中。像这样:
.
|-setup.py
|-src
|---calc
|------factorial.py
|------__init__.py
|---cycalc
|------triangle.pyx
|------__init__.py
|-tests
|---__init__.py
|---test_calc.py
|---test_cycalc.py
Run Code Online (Sandbox Code Playgroud)
这样,两个测试都会自动运行,所有内容都在同一路径中。如果删除构建的文件,则需要运行python setup.py build测试才能再次运行。
| 归档时间: |
|
| 查看次数: |
319 次 |
| 最近记录: |