小编Maj*_*jor的帖子

运行具有典型测试目录结构的unittest

即使是简单的Python模块,非常常见的目录结构似乎是将单元测试分成它们自己的test目录:

new_project/
    antigravity/
        antigravity.py
    test/
        test_antigravity.py
    setup.py
    etc.
Run Code Online (Sandbox Code Playgroud)

例如,看看这个Python项目如何.

我的问题是,实际运行测试的常用方法什么?我怀疑这对除了我以外的所有人都是显而易见的,但你不能只是python test_antigravity.py从测试目录运行,因为import antigravity它将失败,因为模块不在路径上.

我知道我可以修改PYTHONPATH和其他搜索路径相关的技巧,但我不能相信这是最简单的方法 - 如果你是开发人员,那就没关系,但是如果他们只是想检查测试,那么期望用户使用是不现实的通过.

另一种选择只是将测试文件复制到另一个目录中,但它看起来有点愚蠢,并且忽略了将它们放在一个单独的目录中的重点.

那么,如果您刚刚将源代码下载到我的新项目中,您将如何运行单元测试?我更喜欢一个能让我对用户说的答案:"运行单元测试做X."

python unit-testing

641
推荐指数
13
解决办法
18万
查看次数

确定字节序的最Pythonic方法是什么?

我正在努力找到解决我的代码运行的机器是big-endian还是little-endian的最佳方法.我有一个有效的解决方案(虽然我没有在大端机器上测试它)但它看起来有点笨重:

import struct
little_endian = (struct.pack('@h', 1) == struct.pack('<h', 1))
Run Code Online (Sandbox Code Playgroud)

这只是将"本机"双字节包与little-endian包进行比较.有更漂亮的方式吗?

python endianness

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

标签 统计

python ×2

endianness ×1

unit-testing ×1