02 2022 档案
摘要:1、实例方法 实例方法既可以调用静态方法也可以调用类方法。 # 定义一个类 class A(object): # 类属性 count = 0 def __init__(self): self.name = '孙悟空' # 实例方法 # 在类中定义,以self为第一个参数的方法都是实例方法 # 实例方
阅读全文
摘要:1、类属性 (1)类属性的访问 类属性就是 类对象 所拥有的属性,它被 该类的所有实例对象 所共有。 类属性可以使用 类对象 或 实例对象 访问。 # 定义一个类 class Dog(object): # 定义一个类方法 tooth = 10 # 创建对象 wangcai = Dog() xiaoh
阅读全文
摘要:1、Python中的多态 (1)多态的定义 多态是一种使用对象的方式,子类重写父类方法,不同的子类对象调用相同的父类方法,可以产生不同的执行结果。 概括的说,多态指的是一类事物可以有多种形态呈现。 (2)多态的好处 增加了程序额可扩展性,只要觉有相同的特征,就可以创建一个新的类,使用者无需更改原有类
阅读全文
摘要:1、什么是断言 对于测试来讲,不管是功能测试,自动化测试,还是单元测试,一般都会预设一个正确的预期结果,而在测试执行的过程中会得到一个实际的结果。 测试的成功与否就是拿实际的结果与预期的结果进行比较,这个比的过程就是断言(assert)。 2、Pytest断言 与Unittest不同,Pytest使
阅读全文
摘要:Pytest预期失败需要使用@pytest.mark.xfail()标记。 1、@pytest.mark.xfail()标记的作用 期望测试用例是失败的,但是会运行此测试用例,并且也不会影响其他测试用例的的执行。(即xfail标记并不会影响用例的运行) 如果预期失败的测试用例执行失败的则结果是xfa
阅读全文
摘要:1、Pytest中的Mark介绍 Mark主要用于在测试用例/测试类中给用例打标记,实现测试分组功能,并能和其它插件配合设置测试方法执行顺序等。 在实际工作当中,我们要写的自动化用例会比较多,而且不会都放在一个.py文件里。 如下图,现在需要只执行红色部分的测试方法,其它方法不执行。 2、Mark的
阅读全文
摘要:Pytest失败重试就是,在执行一次测试脚本时,如果一个测试用例执行结果失败了,则重新执行该测试用例。 前提: Pytest测试框架失败重试需要下载pytest-rerunfailures插件。 安装方式:pip install pytest-rerunfailures。 Pytest实现失败重试的
阅读全文
摘要:自动化测试执行过程中,我们常常出现这种情况:因为功能阻塞,未实现或者环境有问题等等原因,一些用例执行不了, 如果我们注释掉或删除掉这些测试用例,后面可能还要进行恢复操作,这时我们就可以配置跳过这些用例。 Pytest测试框架中存在两个跳过测试的方法:skip和skipif 。 1、无条件跳过skip
阅读全文
摘要:1、Python支持多层继承 故事继续:N年后,徒弟老了,想要把所有技术传承给自己的徒弟。 (1)多层继承实现 # 1.创建师父类,属性和方法 class Master(object): def __init__(self): self.kongfu = '[古法煎饼果子配方]' def make_
阅读全文
摘要:1、重写 在子类中如果有和父类同名的方法,则通过子类实例去调用该方法时,会调用子类中的该方法而不是父类的方法,这个特点我们成为叫做方法的重写(覆盖:override)。 故事继续:徒弟掌握了师父和学院派技术后,自己潜心钻研出自己的独门配方的一套全新的煎饼果子技术。 # 1.创建师父类,属性和方法 c
阅读全文
摘要:1、继承的概念 在Python中,如果两个类存在父子级别的继承关系,子类中即便没有任何属性和方法,此时创建一个子类对象,那么这个子类对象会拥有父类中所有属性和方法的使用权,这就是在Python中的继承概念。 在Python测继承中,我们一般会抽取出一类事物中,所具有相同的特征属性和行为到一个类中,这
阅读全文
摘要:Python对于类的成员没有严格的访问控制限制,这与其他面向对象的编程语言是有所区别的。 关于私有方法其实和私有属性差不多,有如下要点: 1、通常我们约定,两个下划线开头的方法是私有方法。 2、类内部可以访问私有方法。 3、类外部不能直接访问私有方法,也就是不同通过对象.方法名直接调用。 4、类外部
阅读全文
摘要:1、私有成员变量介绍 (1)私有成员变量概念 在Python面向对象中,把类的某些属性,如果在使用的过程中,不希望被外界直接访问,就可以将该属性设置为私有的,即只有当前类持有,然后暴露给外界一个访问的函数,来实现间接的访问对象属性,这就是类中数据的封装。 如果类中的属性不想被外界直接访问,则可以在属
阅读全文
摘要:1、封装的概念 封装特性之一,可以把复杂的信息,流程,包起来,内部处理,让使用者不去关注细节, 只关心什么时候能直接使用, 隐藏对象的属性和实现细节,仅对外提供公共访问方式。 2、封装体现 前面我们学习方法时,就提起过,将具体功能定义到方法中,就是一种封装。学习类和对象时,也提过将方法和属性定义在类
阅读全文
摘要:1、烤地瓜 (1)需求 1)被烤的时间和对应的地瓜状态: 0-3分钟:生的。 3-5分钟:半生不熟。 5-8分钟:熟的。 超过8分钟:烤糊了。 2)添加的调料: 用户可以按自己的意愿添加调料。 (2)步骤分析 需求涉及一个事物: 地瓜,故案例涉及一个类:地瓜类。 1)地瓜的属性: 被烤的时间。 地瓜
阅读全文
摘要:属性即是特征,比如:洗衣机的宽度、高度、重量等等。 对象属性既可以在类外面添加和获取,也能在类里面添加和获取。 1、类外面添加对象属性 语法: 对象名.属性名 = 值 体验: haier1.width = 500 haier1.height = 800 2、类外面获取对象属性 语法: 对象名.属性名
阅读全文
摘要:1、self的作用 self指的是调用该函数的对象(是一个实例)。Python中self等价于Java中的this。 首先明确的是self只有在类中的方法中才会有,独立的函数或方法是不必带有self的。 例如: # 定义方法 def showTime(name): print(f'大家好我是{nam
阅读全文
摘要:1、理解类和对象 (1)类和对象的关系 思考:洗衣机洗衣服描述过程中,洗衣机其实就是一个事物,即对象,洗衣机对象哪来的呢? 答:洗衣机是由工厂工人制作出来。 思考:工厂工人怎么制作出的洗衣机? 答:工人根据设计师设计的功能图纸制作洗衣机。 归纳:图纸 → 洗衣机 → 洗衣服。 (2)总结: 在面向对
阅读全文
摘要:1、面向对象编程的概念 Python从设计之初就已经是一门面向对象的语言,正因为如此,我们肯定听过Python中一切皆对象的说法。 面向对象编程(Object-oriented Programming,简称 OOP),是一种程序设计思想。 面向对象编程把对象作为程序的基本单元,一个对象包含了数据(属
阅读全文
摘要:1、os模块介绍 os模块提供了多数操作系统的功能接口函数。当os模块被导入后,它会自适应于不同的操作系统平台,根据不同的平台进行相应的操作。 在Python编程时,os模块可以处理文件和目录这些我们日常手动需要做的操作,例如:显示当前目录下所有文件、删除某个文件、获取文件大小等等。 在Python
阅读全文