Python连载22-调试&单元测试
一、调试技术
(1)调试流程:单元测试->集成测试->交测试部
(2)分类:i.静态调试(说白了就是看代码,看看有没有错);ii.动态测试
1.pdb调试
相关连接:https://blog.csdn.net/xc_zhou/article/details/80921483
作者:周小董
2.pycharm调试
含有两种模式:(1)run/debug模式
断点:程序的某一行,程序在debug模式下,进行调试
例子:
#debug模式
def SayHello(name):
print("I want to say hello with your,{0}".format(name))
print("Hello,{0}".format(name))
print("Done....")
if __name__=="__main__":
print("****"*10)
name = input("Please input your name:")
print(SayHello(name=name))
print("@@@"*10)
下面将进行调试:
(1)pycharm有两个按钮run和debug
run是直接运行我们的代码,debug就是调试我们的代码

(2)我们要调试某一行,那就在那一行的行号位置单击一下,代表的意思就是我们如果点击debug,程序就会执行到这个位置暂停。

(3)点击debug按钮之后,在界面下面会跳出来debugger小窗,这里会是调试过程中显示程序内部变量给我们看的地方。

(4)我们暂停到这一行,还要接着执行下去,有两种按钮step over和step into。step over是执行这一行到下一行停止的意思。step into也是执行这一行到下一行停止的意思,区别在于,得看这一行是不是内含代码了。

(5)我们举个例子
我们点击step into,就会调到这个界面,意思就是看一下我们这个input语句是怎么运行的,我们知道这一行肯定没错,因此看它也没用。

(6)因此我们点击step out,跳出这个界面回到我们刚才的界面我们点击step over,我们执行这条语句就行,不用进去看代码

(7)我随笔输入了几个字母如标示1,然后刚才那条语句后面给我显示出来了标示2(debugger中也显示了,我没截图而已,从哪里看都行),然后程序向下走了一步。

(8)这时候我们点击step into,(之所以不点击是step over,是因为这条语句,里面是一个函数,我们想看看它具体怎么执行的,有没有什么错误。当然点击step over也行,他就直接把函数给执行完了,但是我们的目的就是要看看程序具体如何执行,所以才进去),看一下,果然不出所料所料,程序进入到函数里面去了,后面就是一步一步调试了。

3.单元测试
推荐文档:
https://wiki.python.org/moin/PyUnit
二、源码:
d21_2_debug_and_unit_test
地址:https://github.com/ruigege66/Python_learning/blob/master/d21_2_debug_and_unit_test
2.CSDN:https://blog.csdn.net/weixin_44630050(心悦君兮君不知-睿)
3.博客园:https://www.cnblogs.com/ruigege0000/
4.欢迎关注微信公众号:傅里叶变换,后台回复”礼包“,获取大数据学习资料

Python连载22-调试&单元测试的更多相关文章
- python错误处理/调试/单元测试/文档测试
一.错误处理 1.错误处理 try: ... except Exception1: ... except Exception2: ... finally: ... 如果在try中发生错误,那么exce ...
- 在Python中进行自动化单元测试的教程
From: https://www.jb51.net/article/64119.htm 一.软件测试 大型软件系统的开发是一个很复杂的过程,其中因为人的因素而所产生的错误非常多,因此软件在开发过程必 ...
- 提高你的Python能力:理解单元测试
对于程序开发新手来说,一个最常见的困惑是测试的主题.他们隐约觉得“单元测试”是很好的,而且他们也应该做单元测试.但他们却不懂这个词的真正含义.如果这听起来像是在说你,不要怕!在这篇文章中,我将介绍什么 ...
- [转] python程序的调试方法
qi09 原文 python程序的调试方法 本文讨论在没有方便的IDE工具可用的情况下,使用pdb调试python程序 源码例子 例如,有模拟税收计算的程序: #!/usr/bin/python de ...
- [置顶] 如何在Python IDLE中调试Python代码?
好久没有用Python了,居然忘记了怎么在Python IDLE中调试Python代码.百度了一下,然后还是写下来吧,以免以后又忘记了. 1. Set break point in the sourc ...
- 二十二. Python基础(22)--继承
二十二. Python基础(22)--继承 ● 知识框架 ● 继承关系中self的指向 当一个对象调用一个方法时,这个方法的self形参会指向这个对象 class A: def get(s ...
- Python必会的单元测试框架 —— unittest
用Python搭建自动化测试框架,我们需要组织用例以及测试执行,这里博主推荐Python的标准库——unittest. unittest是xUnit系列框架中的一员,如果你了解xUnit的其他成员,那 ...
- Python帮助函数调试函数 用于获取对象的属性及属性值
Python帮助函数调试函数 用于获取对象的属性及属性值 刚接触Python,上篇 <Python入门>第一个Python Web程序--简单的Web服务器 中调试非常不方便,不知道对象详 ...
- Python连载13-shutile模块(续)和zipfile模块
一.shutil模块(续) 1.函数:upack_archive() (1)用法:解包操作 (2)格式:shutil.unpack_archive("归档文件地址“,”解包之后的地址“) ( ...
随机推荐
- 实时聊天-websocket与ajax的区别于联系
Ajax是什么? Ajax,即异步JavaScript和XML,是一种创建交互式网页应用的网页开发技术.通过在后台与服务器进行少量数据交换,Ajax可以使网页实现异步更新,这意味着可以在不重新加载整 ...
- mysqlslap详解--MySQL自带的性能压力测试工具(转)
本文的参考博客地址为:https://blog.csdn.net/fuzhongfaya/article/details/80943991 和 https://www.cnblogs.com/davy ...
- OpenGL光照2:材质和光照贴图
本文是个人学习记录,学习建议看教程 https://learnopengl-cn.github.io/ 非常感谢原作者JoeyDeVries和多为中文翻译者提供的优质教程 的内容为插入注释,可以先跳过 ...
- Python分页爬取数据的分析
前言 文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理. 作者: 向右奔跑 PS:如有需要Python学习资料的小伙伴可以加点击下方链 ...
- Excel的VBA小练习
从我学生时代就知道EXCEL,但是对VBA了解那可真是中学认知了,但是很遗憾,那时没太研究,就像BASIC一样,那时的视野层面认为代码没有大括号什么的,看着也麻烦,其实是没有编程经验,所以看着不适应, ...
- 安全意识第三期丨关于高速ETC办理的这些新骗局,速看!
近期,最火爆的莫过于ETC了. 不仅各大银行,甚至微信和支付宝都推出了办理服务. 虽说更加便捷了,却也带来了安全隐患. 下面这个案例,大家一定要注意,已经有很多车主“中招”,落入了骗子的圈套. 注意: ...
- Android Activity 开发常用技巧整理
1.设置 Activity 背景色为透明 在style.xml里面声明: <style name="TranslucentActivityStyle" parent=&quo ...
- 搭建RTMP直播流服务器
最近项目比较紧张,所以没什么时间写博客,正好这几天没什么事,赶紧记录下自己最近所学. 环境配置 服务器选用 服务器我选择的是小鸟云 ,原因很简单,他的个人用户有3个月免费使用时间. 服务器环境 Win ...
- scala 语法速查
摘自官网 variables var x = 5 Good x = 6 Variable. val x = 5 Bad x = 6 Constant. var x: Double = 5 Expl ...
- MySQL基础之数据管理【3】
MySQL中的多表联查 --查询emp的id username age depName create table emp( id int unsigned auto_increment key, us ...