商城首页欢迎来到中国正版软件门户

您的位置: 首页 > 文章列表 > 编程开发 > 如何在Ubuntu中进行Python单元测试

如何在Ubuntu中进行Python单元测试

  发布于2026-07-04 阅读(0)

扫一扫,手机访问

在Ubuntu上做Python单元测试,其实比很多人想象的要简单。Python自带的unittest模块就能搞定大部分需求,而且跟系统环境配合得很默契。下面就把完整的操作流程拆开来讲,从环境检查到测试运行,一步都不落下。

如何在Ubuntu中进行Python单元测试

第一步:确认Python环境

Ubuntu系统通常默认带了Python,但版本可能不同。在终端里先看一眼:

python --version
# 或者
python3 --version

如果显示的是Python 2.x,而你打算用Python 3,那安装一下就好:

sudo apt update
sudo apt install python3

这一步没什么门槛,装完就齐活了。

第二步:写一个测试文件

创建个.py文件,比如test_my_module.py,然后写测试代码。下面是个最简单的例子:

import unittest

def add(a, b):
    return a + b

class TestAddFunction(unittest.TestCase):
    def test_addition(self):
        self.assertEqual(add(1, 2), 3)
        self.assertEqual(add(-1, 1), 0)
        self.assertEqual(add(-1, -1), -2)

if __name__ == '__main__':
    unittest.main()

这里定义了一个add函数,然后写了个测试类,继承unittest.TestCase。测试方法test_addition里用了assertEqual来验证结果是否符合预期。注意类名和方法名都有约定:类名通常带Test前缀,方法名以test_开头,这样unittest才能自动识别它们。

第三步:运行测试

终端里切到文件所在目录,直接跑:

python3 test_my_module.py

如果一切正常,你会看到类似这样的输出:

...
----------------------------------------------------------------------
Ran 3 tests in 0.001s

OK

跑3个测试点(因为assertEqual用了三次),全部通过。如果有失败的,unittest会给出详细差异,方便定位问题。

第四步:批量发现测试文件

项目大了之后,测试文件会越来越多。手动一个个跑显然不现实。这时候可以用discover命令:

python3 -m unittest discover

它会自动搜索当前目录及子目录下所有以test开头的文件(默认模式),然后一次性运行所有测试用例。省心省力。

第五步:用虚拟环境隔离依赖(推荐)

为了避免不同项目之间的包冲突,最好在虚拟环境里搞测试。Ubuntu上创建虚拟环境很简单:

python3 -m venv myenv
source myenv/bin/activate

激活后,终端前缀会变成(myenv),然后你随便装包、跑测试,都不会影响系统全局的Python环境。测试完了用deactivate退出。

第六步:把测试塞进CI/CD流程

单元测试的真正价值在于自动化——每次提交代码都能自动触发测试。可以把上面的命令写到CI配置文件里(比如GitHub Actions、GitLab CI等),这样多人协作时,谁改出了bug,测试一跑就现原形。

当然,如果你的项目需求更复杂,也可以考虑pytest这个第三方库,它语法更简洁、插件生态更丰富,但核心逻辑跟unittest是相通的。从基础做起,先跑通unittest,再按需升级,这路径最稳。

本文转载于:https://www.yisu.com/ask/26756464.html 如有侵犯,请联系zhengruancom@outlook.com删除。
免责声明:正软商城发布此文仅为传递信息,不代表正软商城认同其观点或证实其描述。

热门关注