python - 什么是更 Pythonic 的方法来测试我的部分代码?

标签 python windows testing

我在 Windows 10 上,Python 2.7.13 通过 Anaconda 安装。最近我一直在写很多脚本来从文件读取/写入数据到其他文件,移动它们,并用 matplotlib 做一些可视化。我的工作流程一直在 Sublime Text 旁边打开一个 Anaconda Prompt,我将单独的行复制/粘贴到我的工作区以测试一些东西。这感觉不像是“最佳实践”,尤其是因为我无法复制/粘贴带有缩进的多行,所以我必须手动将它们写出两次。我真的很想找到一个更好的方法来解决这个问题。您建议更改什么?

最佳答案

软件测试有多种类型,它们的复杂性和测试内容各不相同。一般来说,利用所谓的单元测试是一种很好的做法。单元测试是编写测试组的方法,其中每个测试负责测试一小部分代码。通过在每次测试中仅测试项目的各个部分,您可以非常细致地了解项目的哪些部分工作正常,哪些部分工作不正常。它还允许您的测试是可重复的、源代码控制的和自动化的。通常,为其编写测试的每个“单元”都是单个可调用项,例如类的函数或方法。

为了充分利用单元测试,您的函数和方法需要是单一责任实体。这意味着他们应该只执行一项任务和一项任务。这使得测试它们变得更加容易。 Python 的标准库有一个构建包,适当命名为 unittest执行此类测试..

我会开始查看 unittest 包的文档。它提供了有关单元测试以及如何在 python 代码中使用该包的更多说明。您还可以使用 coverage包以确定通过单元测试测试了多少代码。

希望对您有所帮助。

关于python - 什么是更 Pythonic 的方法来测试我的部分代码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53011288/

相关文章:

python - Python中列表的模式匹配

c# - 无法将 WM_INPUTLANGCHANGEREQUEST 发送到某些控件

javascript - Protractor 处理异常;异步弹出; Javascript

c# - MSTest 抽象类

Python:在 pandas GroupBy 对象上有效地使用 apply

python scikit错误-没有名为sklearn的模块

windows - 从 Silverlight 电话应用程序访问未启用 silverlight 的 Web 服务

windows - 是否有 Windows API 调用可以告诉我是否在 64 位操作系统上运行?

Java 注释 - 代码简化

python - 如何将 Pandas 数据框单元格的内容与前一个单元格(或其他预先指定的距离)进行比较