Selenium 2自动化测试实战3(函数、类和方法)
一、函数、类和方法
1.函数
在python中通过def关键字来定义函数

创建一个add()函数,此函数接收两个参数a,b,通过print()打印a+b的结果。调用add()函数,并且上传两个参数3,5给add()函数
通过add()函数不会直接打印结果,而是将处理结果通过return关键字返回,如下图所示

有时我们在调用add()函数的时候不想传参,这时可以为add()函数设置默认参数,如下图所示

如果调用时不传参,那么add()函数就使用默认参数进行计算,如果传参则计算参数的值
2.类和方法
2.1在python中用class关键字来创建类,代码如下所示
class A(object):
def add(self,a,b):
return a+b count = A()
print(count.add(3,5))#输出结果为8
上面创建了一个A类(在python3中object为所有类的基类,所有类在创建时默认继承object,所以不声明继承object也可以),在类下面创建了一个add()方法,方法的创建同样使用关键字def,唯一不同的是,方法的第一个参数必须是存在的,一般命名为“self”,但是在调用这个方法时不需要为这个参数传值。
一般在创建类时会首先声明初始化方法__init__()
注意:init的两侧是双下划线,当调用该类时,可以用来进行一些初始化工作
class A():
def __init__(self,a,b):
self.a= int(a)
self.b= int(b) def add(self):
return self.a+self.b count=A('4',5)
print (count.add()) #输出结果为9
当调用A类时首先会执行它的__init__()方法,所以需要对其传参,初始化所做的事情就是将输入的参数类型转换为int类型,这样可以在一定程度上保证程序的容错性。而add()方法可以直接拿初始化方法__init__()的self.a和self.b两个数进行计算,所以,我们在调用A类下面的add()方法时,不需要再进行传参
2.2继承
class A():
def add(self,a,b):
return a+b
class B(A):
def sub(self,a,b):
return a-b print (B().add(3,5)) #输出结果为8
首先,我们创建了一个A类,在其下面创建add()方法用于计算两个数之和,接着创建B类,继承A类,并且又创建了sub()方法用于计算两数之差。因为B类继承了A类,所以B类自然也拥有了A类,所以,B类也有了add()方法,从而可以直接通过B类调用add()方法。
本文仅供个人学习,详情可参考 虫师的<Selenium 2自动化测试实战>
Selenium 2自动化测试实战3(函数、类和方法)的更多相关文章
- 《Selenium 2自动化测试实战 基于Python语言》中发送最新邮件无内容问题的解决方法
虫师的<Selenium 2自动化测试实战 基于Python语言>是我自动化测试的启蒙书 也是我推荐的自动化测试入门必备书,但是书中有一处明显的错误,会误导很多读者,这处错误就是第8章自动 ...
- Selenium 2自动化测试实战
Selenium 2自动化测试实战 百度网盘 链接:https://pan.baidu.com/s/1aiP3d8Y1QlcHD3fAlEj4sg 提取码:jp8e 复制这段内容后打开百度网盘手机Ap ...
- Selenium 2自动化测试实战36(更易读的测试报告)
一.更易读的测试报告 1.知识点:python的注释. 1.一种叫comment,为普通的注释2.另一种叫doc string,用于函数,类和方法的描述.在类或方法的下方,通过三引号("&q ...
- Selenium 2自动化测试实战13(设置元素等待)
一.设置元素等待 若在加载某个元素时延迟而造成的ElementNotVisbleException的情况出现,那么就会降低自动化脚本的稳定性,可以通过设置元素等待改善这种问题造成的不稳定. webdr ...
- python接口自动化测试二十一:类和方法
# 类和方法 class Count(): def __init__(self, aaa, bbb): # 初始化 # 可以放公共的参数 print('实例化的时候,会执行init的内容') self ...
- Selenium 与自动化测试 —— 《Selenium 2 自动化测试实战》读书笔记
背景 最近在弄 appium,然后顺便发现了 Selenium 框架和这本书,恰好这本书也介绍了一些软件测试&自动化测试的理论知识,遂拿过来学习学习.所以本文几乎没有实践内容,大多都是概念和工 ...
- Selenium 2自动化测试实战39(Page Object设计模式)
Page Object设计模式 Page object是selenium自动化测试项目开发时间的最佳设计模式之一,主要体现在对界面交互细节的封装. 1.认识page object优点如下:1.减少代码 ...
- Selenium 2自动化测试实战35(HTML测试报告)
HTML测试报告 显然,一份漂亮的测试报告展示自动化测试成果只有一个简单的log文件是不够的.HTMLTestRunner是python标准库unittest单元测试框架的一个扩展,它生成易于使用的H ...
- Selenium+Python自动化测试实战(2)元素定位
1.Selenium2 的原理 第一篇分享简单介绍了基于Python开发的Selenium2的环境配置,这篇主要讲一下基本用法.首先讲一下Selenium2的基本原理.基本上知道了这个东西是怎么回事, ...
随机推荐
- CentOS7使用阿里云的yum源
替换成阿里云的yum源速度更快一些,替换很简单,简单记录一下步骤 1.备份原来的yum源 sudo cp /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repo ...
- init container
init container与应用容器在本质上是一样的, 但它们是仅运行一次就结束的任务, 并且必须在成功执行完成后, 系统才能继续执行下一个容器, 可以用在例如应用容器启动前做一些初始化工作,当in ...
- [uboot] (番外篇)global_data介绍(转)
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明.本文链接:https://blog.csdn.net/ooonebook/article/det ...
- 使用IDEA搭建一个Spring + Spring MVC 的Web项目(零配置文件)
话不多说,直接上代码: 注解是Spring的一个构建的一个重要手段,减少写配置文件,下面解释一下一些要用到的注解: @Configuration 作用于类上面,声明当前类是一个配置类(相当于一个Spr ...
- Qt5多线程
方法一:重写run函数 一.线程执行过程: 1.在工程中自定义一个类mythread继承与QThread: 2.重写run函数: 3.创建线程对象: 4.写按钮槽函数: ui界面加入一个按钮 给按钮添 ...
- Django + pyecharts 实现数据可视化
1 创建django项目 :Visualization and APP :Demo >>django-admin startproject Visualization >>p ...
- 【leetcode】1257. Smallest Common Region
题目如下: You are given some lists of regions where the first region of each list includes all other reg ...
- web前端_css01
CSS 指层叠样式表 (Cascading Style Sheets),样式定义如何显示 HTML 元素,样式通常存储在样式表中,外部样式表通常存储在 CSS 文件中 <!DOCTYPE htm ...
- AngularJS基础语法
1.ng-app 决定了angularjs的作用域范围,你可以如下使用: <html ng-app> … </html> 来让angularjs渲染整个页面,也可以使用 < ...
- python之timeit模块
timeit模块: timeit 模块定义了接受两个参数的 Timer 类.两个参数都是字符串. 第一个参数是你要计时的语句或者函数. 传递给 Timer 的第二个参数是为第一个参数语句构建环境的导入 ...