单个python文件的单元测试

单个python文件的单元测试,python,unit-testing,python-unittest,Python,Unit Testing,Python Unittest,我有一个带有main的python脚本,还有很多helper方法。如何为这些位于同一文件中的辅助方法编写单元测试。我在网上看到的很多例子都涉及到创建助手库,然后导入和测试。在我的情况下,它是一个文件 样本结构: /user/ |-- pythonscript.py 我想为pythonscript.py编写测试 示例pythonscript.py: def getSum(i ,j): return i+j def main(): summer = getSum(1,1)

我有一个带有main的python脚本,还有很多helper方法。如何为这些位于同一文件中的辅助方法编写单元测试。我在网上看到的很多例子都涉及到创建助手库,然后导入和测试。在我的情况下,它是一个文件

样本结构:

/user/
  |-- pythonscript.py
我想为
pythonscript.py
编写测试

示例
pythonscript.py

def getSum(i ,j):
    return i+j

def main():
    summer = getSum(1,1)

if __name__ == '__main__':
    main()

例如,我想在另一个文件中为类似
getSum
的方法编写测试。(我记得有一个测试仪,它会筛选
.py
文件,并根据附加
test
\u test
来识别需要测试的函数,但我似乎再也找不到了。)

听起来像是您在描述的,它可以遵循某些命名和路径约定。其中之一是将前缀为
test
的每个函数视为测试

对于您的场景,我建议在目录的根目录中创建一个名为
test\u pythonscript.py
的文件。在该文件中,您可以从
pythonscript.py
导入函数,然后测试它们:

#test_pythonscript.py
从pythonscript导入getSum
test_getSum():
断言getSum(1,2)==3

一旦作为依赖项安装了
pytest
,您就可以在项目的根目录下运行
pytest
,它应该能够发现上述测试。

,我获得
E导入错误:尝试在没有已知父包的情况下进行相对导入
:将
从.pythonscript
更改为
从pythonscript
。谢谢哦,我会修正我的答案