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的基本原理.基本上知道了这个东西是怎么回事, ...
随机推荐
- 4G漏洞
4G VoLTE漏洞:可致用户地理位置和其它个人信息泄露 2017-08-05 LBS 首先要了解下,什么是VoLTE. VoLTE为英文Voice Over LTE的缩写,直译就是音频通过LTE网络 ...
- (持续更新中~~~)kafka--消息引擎与分布式流处理平台
kafka概述 kafka是一个分布式的基于发布/订阅模式的消息队列(message queue),一般更愿意称kafka是一款开源的消息引擎系统,只不过消息队列会耳熟一些.kafka主要应用于大数据 ...
- linux 查看cpu核心数
1.查看CPU个数 cat /proc/cpuinfo |grep "physical id"|sort|uniq|wc -l 2.查看每个物理CPU含有的核心个数 cat /pr ...
- Centos 7 Samba服务安装
Centos 7 Samba服务安装搭建Samba服务器是为了实现Linux共享目录之后,在Windows可以直接访问该共享目录. 查看是已安装samba包: rpm -qa | grep samba ...
- mysql 存储过程(二)
存储过程(Stored Procedure): 一组可编程的函数,是为了完成特定功能的SQL语句集,经编译创建并保存在数据库中,用户可通过指定存储过程的名字并给定参数(需要时)来调用执行. 优点(为什 ...
- ffmpeg函数03__av_seek_frame()
当需要把视频跳转到N秒的时候可以使用下面的方法:int64_t timestamp = N * AV_TIME_BASE; av_seek_frame(fmtctx, index_of_video, ...
- Gym - 101987G Secret Code (概率+数学积分)
题意:有A,B,C三个人要见面,每个人在[0,S]随机选择一个时间点作为见面时间,先到的那个人要等下一个人来了之后和他确认信息,然后马上就走. 例如,假如A先到,B其次,C最后到,那么A要等B到了之后 ...
- qt5--表格控件QTableWidget
需要 #include <QTableWidget> #include <QTableWidgetItem> #include "win.h" ...
- web前端_css02
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8" ...
- liunx系统中安装lua以及torch
一直在用pytorch,最近在做项目的时候,遇到了torch的开源代码,所以又开始不得不接触torch以及他所依赖的环境lua. liunx下lua环境的配置代码如下: ''' curl -R -O ...