如何在Ubuntu中进行Python单元测试
在Ubuntu上可使用Python内置unittest模块进行单元测试,步骤包括确认Python环境、编写继承unittest.TestCase的测试类、运行测试文件、用discover批量发现测试、通过venv创建虚拟环境隔离依赖,并可将测试集成到CI/CD流程实现自动化。
在Ubuntu上做Python单元测试,其实比很多人想象的要简单。Python自带的unittest模块就能搞定大部分需求,而且跟系统环境配合得很默契。下面就把完整的操作流程拆开来讲,从环境检查到测试运行,一步都不落下。

第一步:确认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,再按需升级,这路径最稳。
IntelliJ IDEA 是 JetBrains 推出的专业集成开发环境,重点服务于 Java、Kotlin 与 JVM 项目开发。软件集成代码补全、静态检查、重构、调试、测试、版本控制及构建工具,并可借助插件扩展语言和框架支持。
JetBrains PyCharm 是面向 Python 开发者的集成开发环境,提供智能补全、代码检查、重构、调试、测试、版本控制及虚拟环境管理功能。Mac 版兼容 Intel 与 Apple 芯片,核心功能可免费使用。
JetBrains WebStorm 是面向 JavaScript、TypeScript 和现代 Web 技术的专业集成开发环境,可智能理解项目结构,提供代码补全、重构、错误检查、运行调试、测试及 Git 工具。
JetBrains IntelliJ IDEA 是以 Java、Kotlin 和 JVM 项目为核心的专业集成开发环境,提供智能补全、代码检查、安全重构、调试、测试、版本控制及构建工具集成。统一发行版的核心功能可免费用于商业和非商业项目,
PhpStorm 是 JetBrains 面向 PHP 与现代 Web 开发打造的专业集成开发环境,提供代码补全、静态检查、重构、调试、测试、数据库、版本控制及前端语言支持。Windows 用户可直接下载安装程序,
PyCharm 是 JetBrains 推出的 Python 集成开发环境,提供智能代码补全、错误检查、重构、调试、测试、Git、终端及 Jupyter Notebook 支持。统一版安装后可体验 30 天 Pro 功能,













