enum_accessfrom enum import Enum # 创建 class HttpStatus(Enum): OK = 200 BAD_REQUEST = 400 FORBIDDEN = 403 NOT_FOUND = 404 REQUEST_TIMEOUT = 408 SERVICE_UNAVAILABLE = 500 # value 访问使用元组() print(HttpStatus(200)) # HttpStatus.OK
reduce() 方法接收一个函数作为累加器(accumulator),数组中的每个值(从左到右)开始合并,最终为一个值。 概念:对数组中的所有元素调用指定的回调函数。该回调函数的返回值为累积结果,并且此返回值在下一次调用该回调函数时作为参数提供。 语法: array1.reduce(callbackfn[, initialValue]) 参数: 参数 定义 array1 必需。一个数组对象。 callbackfn 必需。一个接受最多四个参数的函数。对于数组中的每个元
Python测试应用与公具 今天跟大家分享一个Python与测试相关的话题,主要介绍Python中的标准库 unittest及第三方测试工具pytest及mock。介绍了它们的基本使用。 环境准备 一台Windows机器,或一台Linux机器,亦或一台Mac 安装Python,版本为2.7.x或3.5.x 要有pip工具(Python2),Python3不做要求 unittest unittest是Python标准库中用于单元测试的模块。单元测试用来对最小可测试单元进行正确性检验,帮助我们在上线之前发现
这是第七篇,也是这个基础入门系列的最后一篇内容,简单介绍如何采用 unittest模型编写测试用例。
文章背景: 最近在学习华为云在线课程Python应用篇,其中有个章节是程序调试。在代码编写过程中,需要不断地调试代码,使其满足我们的开发要求。下面首先介绍程序调试的几种方法,然后介绍单元测试。
在做自动化测试特别是接口测试的过程中,我们经常碰到这样的例子,几个用例步骤,操作完全一样,仅仅是数据和结果不一样。常规的做法是每套数据写一个测试用例。
1. unittest核心要素 unittest介绍 测试框架,不仅仅用于单元测试 python自动的测试包 用法和django.test.TestCase类似 1.1【知道】unittest介绍和核心要素 image.png 1.2【掌握】unittest核心要素的使用 """ 1. 测试用例 2. 容器,容器添加测试用例 3. 运行容器中的测试用例 """ import unittest # 测试类,继承于unittest.TestCase class MyTest(unittest.TestC
test case是单元测试中的最小个体。它检查特定输入的响应信息。unittest提供了一个基础类:TestCase,用来创建test case。 test suite是test case的合集,通常用test suite将test case汇总然后一起执行。 test runner是一个执行器,它可以执行case并提供结果给用户。它可以提供图形界面、文本界面或者返回一个值表示测试结果。 1、unittest官方文档:中文https://blog.csdn.net/ljl6158999/article/details/80994979 2、用法:
说到 Python 的单元测试框架,想必接触过 Python 的朋友脑袋里第一个想到的就是 unittest[1]。的确,作为 Python 的标准库,它很优秀,并被广泛用于各个项目。但你知道吗?其实在 Python 众多项目中,主流的单元测试框架远不止这一个。
上面的函数虽然解决了问题,但是显然不够完美,假设在大部分的调用里,基本都只是求x的2次幂,但是这个时候我在调用的时候依旧每次都得传n,这就显得有点多余。有没有什么方法可以让我调用的时候少些一个入参呢?
这种存储计算结果以备再次使用称之为:Memoization(这个词,不知道怎么翻译好)
Python 3.8 是 Python 编程语言的最新主要版本, 它包含许多新功能和优化。
手写一个迭代器,不要傻了,在你连函数都不会定义的情况下,我教你手写一个迭代器那是作死。
本文是廖雪峰的Python教程的笔记,主要是摘抄一些重点,以及自己想到的一些重点。所以我把他划分到转载里。
1、如果函数定义中已经有了一个可变参数,后面跟着的命名关键字参数就不再需要一个特殊分隔符*了。
写了一个Unittest+Python+execl的一个接口自动化,在参数化的时候遇到了一个问题。具体的“坑”如下
本篇还是回归到我们最初始的话题,想必大家都忘记了,没关系看这里:传送门 没错最初的话题就是登录,由于博客园的登录机制改变了,本篇以我找到的开源免费的登录API为案例,结合 unittest 框架写 2 个用例。同样我们先来看一下接口文档。
先以一个大牛的一段关于Python Metapgramming的著名的话来做开头:
使用HTMLTestRunner的Run方法执行用例,用例调用Excel读取方法,将测试数据导入到unittest用例中执行,测试结果返回给HTMLTestRunner。
有的错误是程序编写有问题造成的,比如本来应该输出整数结果输出了字符串,这种错误我们通常称之为bug,bug是必须修复的。
当代码出现有规律的重复的时候,你就需要当心了,每次写3.14 * x * x不仅很麻烦,而且,如果要把3.14改成3.14159265359的时候,得全部替换。
在python程序中,使用函数之前需要先定义(声明)函数,然后才能调用它。只要按函数定义的形式,向函数传递必需参数,就可以调用它完成相关功能并取得函数返回结果。
都说程序员的三大浪漫是:操作系统、编译原理、图形学;最后的图形学确实是特定的专业领域,我们几乎接触不到,所以对我来说换成网络更合适一些,最后再加上一个数据库。
在进行接口测试时,经常会遇到不同接口间传递参数的情况,即一个接口的某个参数需要取另一个接口的返回值;
定义函数的时候,我们把参数的名字和位置确定下来,函数的接口定义就完成了。对于函数的调用者来说,只需要知道如何传递正确的参数,以及函数将返回什么样的值就够了,函数内部的复杂逻辑被封装起来,调用者无需了解。
下载地址:http://tungwaiyip.info/software/HTMLTestRunner.html
power(x,n),x和n就是位置参数,调用函数时,传入的两个值按照位置顺序依次赋给参数x和n。
、简直是神器啊 (๑• . •๑)今天在翻莫烦大大的博客时,看到他提到一个工具,便去看了下,第一感受是,太好用了、爱不释手。
默认值指示如果在函数调用期间未给出参数值,则函数参数将采用该值。默认值是使用表单关键字名称=值的赋值 (=) 运算符分配的。
2、创建MockTest_reset_mock.py文件(创建PeopleTest测试类)。
通过@staticmethod装饰器即可把其装饰的方法变为一个静态方法,什么是静态方法呢?其实不难理解,普通的方法,可以在实例化后直接调用,并且在方法里可以通过self.调用实例变量或类变量,但静态方法是不可以访问实例变量或类变量的,一个不能访问实例变量和类变量的方法,其实相当于跟类本身已经没什么关系了,它与类唯一的关联就是需要通过类名来调用这个方法
在Python的单元测试(一)中,我们讲了单元测试的概念以及一个简单的单元测试例子。
tuple 是一个元素不可变的列表,如果尝试对 tuple 中的某个元素进行修改,会报错。
上面的函数虽然解决了问题,但是显然不够完美,假设在大部分的调用里,基本都只是求x的2次幂,但 是这个时候我在调用的时候依旧每次都得传n,这就显得有点多余。有没有什么方法可以让我调用的时 候少些一个入参呢?
可以看出,在定义函数时,在参数前面加入一个*,就可以使得函数内部得到一个tuple数组。
TestCase测试子类IOLoop-基于异步代码。 UnitTest框架是同步的,因此测试方法返回时必须完成测试。这意味着异步代码不能以与通常完全相同的方式使用,必须进行调整。要使用协同程序编写测试,请使用龙卷风。测试gen_测试而不是tornado.gen.coroutine 此类还提供(已弃用)stop()和wait()更多手动测试方法。测试方法本身必须调用self-Wait(),异步回调应调用self-Stop()表示完成。 默认情况下,为每个测试构建新的IOLoop,并且可以用作self-io_ Loop。如果要测试的代码需要一个全局IOLoop,那么子类应该重写get_new_IOLoop返回它。
在上一篇Pytest系列文章:Pytest之收集用例及命令行参数,主要介绍Pytest用例收集规则及常用的命令行参数。
SyntaxError: invalid syntax 因为没有符合语法要求,导致报错。 解决办法: 语法错误的原因主要是代码的风格,例如: 左括号或者右括号没有配对; 左括号或者右括号没有放在语句的正确位置; 缺少冒号:在 if,for,class 后面必须要有冒号; 双引号或者单引号没有配对; 变量名称,函数名称,类名称,模块名称,函数参数名称不能与关键字冲突; 某些关键字后面必须要有括号,例如 return; TypeError: 'int' object is not callable
可以有零个或多个 elif 部分,以及一个可选的 else 部分。 关键字 ‘elif’ 是 ‘else if’ 的缩写,适合用于避免过多的缩进。 一个 if … elif … elif … 序列可以看作是其他语言中的 switch 或 case 语句的替代。
上一篇通过简单的案例给小伙伴们介绍了一下unittest断言,这篇我们将通过结合和围绕实际的工作来进行unittest的断言。这里以获取城市天气预报的接口为例,设计了 2 个用例,一个是查询北京的天气,一个是查询
二分查找要求:线性表是有序表,即表中结点按关键字有序,并且要用向量作为表的存储结构。
在写代码的时候,避免不了遇到各种各样的错误,遇到错误,BUG,我们需要尽快的解决,才能不拖累工作的进度,我们一般都会百度错误如何解决,但是遇到一些针对性错误以及百度方法不管用的情况下,就需要了解错误处理机制了。
一种方式是可以通过数据库来获取,但是通过这次接口测试,我发现读取数据库有一个缺点:速度慢
根据现实生活中的猜数字游戏的游戏规则,运用Python语言模拟实现猜数字游戏的的基本功能,请学员们参考真实的猜数字游戏规则和如下的程序运行效果图进行代码编写,以实现“数字猜猜猜”小游戏的基本功能。游戏规则介绍如下:
这是一个可以在线运行 GScript 脚本的网站,其本质原理是接收用户的输入源码从而在服务器上运行的服务;这简直就是后门大开的 XSS 攻击,为保住服务器我设置了运行 API 的后端服务的用户权限,这样可以避免执行一些恶意的请求。
上式的 x 就是square函数的 参数。每次运行的时候,需要提供这个值,否则得不到结果。
断言 断言的功能与用法 断言的功能–assert 用于判断一个表达式,在表达式条件为false的时候触发异常 用法 assert expression, message 参数 expression:表达式,一般是判断相等,或者判断是某种数据类型的bool判断的语句 message:具体的错误信息 返回值 无返回值 代码(学生信息库升级) # coding:utf-8 """ 学生信息库 """ class NotArgError(Exception): def __init__(self
如果你选用python做自动化测试,那么python测试框架的相关知识你必须要了解下。
领取专属 10元无门槛券
手把手带您无忧上云