相关疑难解决方法(0)

尝试相对导入超出顶级包

这是我的文件夹结构:

Mopy/ # no init.py !
   bash/
     __init__.py
     bash.py # <--- Edit: yep there is such a module too
     bass.py
     bosh/
       __init__.py # contains from .. import bass
       bsa_files.py
     ...
   test_bash\
     __init__.py # code below
     test_bosh\
       __init__.py
       test_bsa_files.py
Run Code Online (Sandbox Code Playgroud)

test_bash\__init__.py我有:

import sys
from os.path import dirname, abspath, join, sep
mopy = dirname(dirname(abspath(__file__)))
assert mopy.split(sep)[-1].lower() == 'mopy'
sys.path.append(mopy)
print 'Mopy folder appended to path: ', mopy
Run Code Online (Sandbox Code Playgroud)

test_bsa_files.py:

import unittest
from unittest import TestCase

import bosh

class TestBSAHeader(TestCase):
    def …
Run Code Online (Sandbox Code Playgroud)

python python-import python-2.7 relative-import python-unittest

22
推荐指数
1
解决办法
4万
查看次数

在哪里保持单元测试?

可能重复:
Python单元测试在哪里?

单元测试是保存在与代码相同的文件中,同一目录中的单独文件还是完全不同的目录中?

python unit-testing code-organization

16
推荐指数
2
解决办法
1973
查看次数

Python doctest是否消除了对单元测试的需求?

我所参与的项目的开发人员认为,doctests与单元测试一样好,并且如果一段代码被证明,则不需要进行单元测试.我不相信这是事实.任何人都可以提供一些可靠的,理想上引用的例子来支持或反对doctests取代单元测试需求的论点吗?

谢谢-Daniel

编辑:任何人都可以提供一个参考,表明doctesting不应该取代单元测试?

python doctest unit-testing

12
推荐指数
3
解决办法
3064
查看次数

测试python包bin脚本的最佳实践

myproject/
    bin/
        myscript
    mypackage/
        __init__.py
        core.py
        tests/
            __init__.py
            test_mypackage.py
    setup.py
Run Code Online (Sandbox Code Playgroud)

测试脚本myscript的最佳方法是什么?

从SO研究来看,似乎我发现的唯一答案是在测试中编写一个名为test_myscript的测试,并使用像

import subprocess

process = subprocess.Popen('myscript arg1 arg2')
print process.communicate()
Run Code Online (Sandbox Code Playgroud)

在我的测试用例中运行脚本然后测试结果.有没有更好的办法?或者针对不同方式的任何其他建议?我应该将测试套件放在bin/tests或mypackage/tests中吗?

python testing

11
推荐指数
1
解决办法
550
查看次数

Python组织小项目/脚本

我是python的新手,我不确定一些事情.

  1. 类应该在单独的文件中吗?
  2. 独立脚本是否有主方法?如果是这样,这是如何工作的,因为我有一个不被调用的主要方法
  3. 单元测试目录通常放在哪里,它如何"包含"它正在测试的文件?

python

3
推荐指数
1
解决办法
152
查看次数