学习Python的第一课(简单的单元测试)
由于有C#开发基础,感觉学习Python应该不难,主要是一些语法了,再加上现在互联网这么发达。
感觉还是要有思路,否则学什么也只能是什么。 话不多说,简单发下这几天的学习成果吧;
第一次写博客,大家不要见笑啊 简单的语法就不多说了,随便搜搜就可以得到。()
单元测试来了: 要做两个测试:
# 用于判断质数
import math
def isPrime(n):
print ("验证数字"+str(n)+"是否质数开始")
print ("开平方:"+str(round(math.sqrt(n))))
if(n<=1):
return False;
for i in range(2,round(math.sqrt(n))):
#只需要判断到数的开平方数字即可
if(n % i==0): print (n/i)
return False;
return True;
# 用于判断一个12位的数字,最后一位是前11位除以7的余模
def isBarcode(n): print ("验证数字"+n+"是否符合规则开始")
if(len(n)!=12):
return False;
ncount=int(n[0:11])#取前11位
endNumber=int(n[-1]) #取最后1位
print (ncount)
print (endNumber)
if(endNumber==ncount % 7):
return True;
else:
print (ncount % 7)
return False;
#这个文件保存为count.py。(名字随便起的了)
#下面开始验证 #保存为test.py
from count import isBarcode
from count import isPrime
import unittest
class Test(unittest.TestCase):
print ("--Test--")
def setUp(self):
print ("--start--")
#先来两个正确的号码
def test_case(self):
self.assertTrue(isBarcode("126112611262"),"it is not Barcode")
self.assertTrue(isPrime(157),"it is 质数")
def tearDown(self):
print ("--End--")
print ("测试一下看显示在什么位置")
if __name__=="__main__":
unittest.main()
在代码中我们看到有这样的一句代码:
if __name__=="__main__":
unittest.main() 很有好奇的感觉,网上搜搜这是什么意思,
见 http://www.cnblogs.com/xuxm2007/archive/2010/08/04/1792463.html,感谢这位仁兄 读了几遍,终于读懂,果然很强! 说白了就是写一些代码,给自己用的,类似于private是不是?又担任着模块的入口(个人理解)。
看运行结果吧:
>>> ================================ RESTART ================================
>>> --unnitest:main模块
--Test--
测试一下看显示在什么位置
--start--
验证数字126112611262是否符合规则开始
12611261126
2 验证数字157是否质数开始
开平方:13
--End-- .
----------------------------------------------------------------------
Ran 1 test in 0.045s
OK
>>> #哈,说明验证通过了! 但是不知道大家是不是发现多了一个字符串"
--unnitest:main模块",这个是我自己加的了,开源的东西就是好,随便玩;
就在C:\Python33\Lib\unittest下面的main.py增加了一行代码:
from . import loader, runner
from .signals import installHandler
__unittest = True
print ("--unnitest:main模块")#这是新增加的
##好了,我们做个出错的单元测试吧,157改成156
结果就是这样的了:
>>> ================================ RESTART ================================
>>> --unnitest:main模块
--Test--
测试一下看显示在什么位置
--start--
验证数字126112611262是否符合规则开始
12611261126
2
验证数字156是否质数开始
开平方:12
78.0
--End--
F
======================================================================
FAIL: test_case (__main__.Test)
----------------------------------------------------------------------
Traceback (most recent call last): File "C:\Python33\test.py", line 11, in test_case self.assertTrue(isPrime(156),"it is not 质数") AssertionError: False is not true : it is not 质数
----------------------------------------------------------------------
Ran 1 test in 0.052s FAILED (failures=1)
>>> #出错了!!!!!!!!156不是个质数啊;再来一次:这次把126112611262换成126112611261,156保持不变
>>> ================================ RESTART ================================
>>>
--unnitest:main模块
--Test--
测试一下看显示在什么位置
--start--
验证数字126112611261是否符合规则开始
12611261126
1
2
--End--
F
======================================================================
FAIL: test_case (__main__.Test)
----------------------------------------------------------------------
Traceback (most recent call last): File "C:\Python33\test.py", line 10, in test_case self.assertTrue(isBarcode("126112611261"),"it is not Barcode") AssertionError: False is not true : it is not Barcode
##结束;呀呀呀,第一个提示之后第二个不执行啦?!(怎么回事?,可以做2个单元测试吗?求解)
----------------------------------------------------------------------
Ran 1 test in 0.033s
FAILED (failures=1)
>>> #我用的IDLE (Python GUI),弹出提示比较慢,很多代码还是手敲;不过我感觉这也是它的魅力吧
#感谢虫师,正是参考了你的书才能模仿出这样的代码(关于selenium的),我学Python也是要做自动化测试(嘿嘿)
#很多东西还得进一步摸索,一些原理也不是很懂,还得加油!
#写在C罗的葡萄牙进4强的当天,马上就是比利时VS威尔士,希望贝尔可以和C罗来一场较量,哈哈。
学习Python的第一课(简单的单元测试)的更多相关文章
- Python作业第一课
零基础开始学习,最近周边的同学们都在学习,我也来试试,嘿嘿,都写下来,下次不记得了还能来看看~~ Python作业第一课1)登陆,三次输入锁定,下次不允许登陆2)设计一个三级菜单,菜单内容可自行定义, ...
- 留念 C语言第一课简单的计算器制作
留念 C语言第一课简单的计算器制作 学C语言这么久了. /* 留念 C语言第一课简单的计算器制作 */ #include<stdio.h> #include<stdlib.h ...
- web前端学习python之第一章_基础语法(二)
web前端学习python之第一章_基础语法(二) 前言:最近新做了一个管理系统,前端已经基本完成, 但是后端人手不足没人给我写接口,自力更生丰衣足食, 所以决定自学python自己给自己写接口哈哈哈 ...
- web前端学习python之第一章_基础语法(一)
web前端学习python之第一章_基础语法(一) 前言:最近新做了一个管理系统,前端已经基本完成, 但是后端人手不足没人给我写接口,自力更生丰衣足食, 所以决定自学python自己给自己写接口哈哈哈 ...
- 初学Python(第一课)
今天整理一下关于Python初学者的基础知识部分的第一课,因为之前学习过C,所以过于基础的知识就不详细记录了. Python相对于C\C++来说,在语法方面已经很简单了:甚至对于JavaScript也 ...
- Python入门第一课——Python的起源、发展与前景!
我们在做任何一件事情之前,我们都会通过各种渠道去搜集事情的信息,了解事情的来龙去脉,学习一门编程语言也是如此,只有知根知底,我们才能有明确的方向和目标,以及底气去完成这件事情,今天我带大家来看看Pyt ...
- 记录学习Python的第一天
这是我的第一篇博客,也是我学Python的第一天. 写这篇博客主要目的是为了记下我学习Python的过程以及所学到的知识点.我所学的是Python3版本,我所学的内容有如下几点: 1.python3中 ...
- 一个Js开发者学习Python的第一天
原文地址:小寒的博客 https://www.dodoblog.cn/blogs/5bf6b8fa0c09883d0f8aad13 作为一个有着足足两年半学习经验和一年半开发经验的js开发者,看着js ...
- 学习python的第一个小目标:通过requests+xlrd实现简单接口测试,将测试用例维护在表格中,与脚本分开。
小白的学习方式:通过确定一个小目标来想办法实现它,再通过笔记来加深印象. 面对标题中的小目标我陷入了思考....嗯,首先实现利用xlrd库来取出想要的用例 首先用表格准备好用例,如图下: 先试下取nu ...
随机推荐
- hdu 1051 (greedy algorithm, how a little modification turn 15ms to 0ms) 分类: hdoj 2015-06-18 12:54 29人阅读 评论(0) 收藏
the 2 version are essentially the same, except version 2 search from the larger end, which reduce th ...
- 手把手教你用python抓网页数据
http://www.1point3acres.com/bbs/thread-83337-1-1.html
- 《大象-Think In UML》读书笔记1
大音希声,大象希行. 什么是面向过程?什么是面向对象? 面向过程归纳为结构化程序设计.DFD图.ER模型.UC矩阵等,而面向对象则被归纳为继承.封装.多态.复用等具体的技术.事实上,上述的所有技术都只 ...
- Visual Studio 编译项目失败,提示找不到文件
博客地址:http://blog.csdn.net/FoxDave 今天碰到了一个蠢问题,虽然咱们正常情况下是遇不到的,但这确实是个应该注意的地方,所以简单记录一下. Visual Studio ...
- js 网站顶部导航栏
(function(){ var map = { 'index' : 0, 'gift_code' : 1, 'base_info' : 1, 'band_phone': 1, 'unlink_pho ...
- 100个直接可以拿来用的JavaScript实用功能代码片段
目录如下: 1.原生JavaScript实现字符串长度截取2.原生JavaScript获取域名主机3.原生JavaScript清除空格4.原生JavaScript替换全部5.原生JavaScript转 ...
- block的内部实现
主要内容: 一.block相关的题目 二.block的定义 三.block的实现 四.捕获自动变量值 五.block存储区域 六.截获对象 一.block相关的题目 这是一篇比较长的博文,前部分是bl ...
- IOS网络开发(一)
1 简易的聊天工具 1.1 问题 Socket的英文原义是孔或者插座的意思,通常也称作套接字,用于描述IP地址和端口,是一个通信链的句柄,本案例使用第三方Socket编程框架AsyncSocket框架 ...
- pytho day6 <正则表达式、常用模块、反射>
本节介绍: 一:正则表达式: 正则表达并不是python 独有的.在各个语言里都有该语法的介绍.正则表达是处理字符串的强大的处理工具.拥有自己的独特的 处理方法.和处理引擎.虽然性能没有python ...
- [转载]MCU DSP ARM 嵌入式 之间的区别
2016-06-28 10:31:24) 嵌入式"这是个概念,准确的定义没有,各个书上都有各自的定义.但是主要思想是一样的,就是相比较PC机这种通用系统来说,嵌入式系统是个专用系统,结构精简 ...