03 2019 档案
摘要:本文介绍Python中的函数,主要了解如何定义一个函数,如何调用一个函数。 如果上面你不写调用函数这行代码,你运行后,是没有打印输出的。我们这里来,结合前面的if语句来定义一个,两个数比较,判断最大的那个。 再升级一下,如何求三个数大小,这里有两个思路,多层嵌套if在一个函数里或者利用maxTwo(
阅读全文
摘要:本文介绍if else语句,不多说,直接看例子。 if elif else语句
阅读全文
摘要:本文介绍另外一种循环语句,for循环,直接看例子。 用for实现打印1到9的数字。 方法一:写入一个列表,然后遍历列表 # 这里介绍 for循环# 打印1到9 exampleList = [1,2,3,4,5,6,7,8,9] for eachNumber in exampleList: print
阅读全文
摘要:前面文章介绍的循环语句,这里开始介绍控制语句。直接看下面的demo.py例子 # 这里介绍 if语句 x = 5y = 8z = 4s = 5 if x < y: print('x is less than y') if x < y > z: print('x is less than y and
阅读全文
摘要:本文开始介绍循环语句,和其他编程语言一样,Python中有while循环和for循环,这里介绍while循环。 语法: while 条件表达式为真: 做一些事情 实际生活中有很多这样的循环场景,这里举例一个不太好的方法。例如,我需要增加一个文章的点击数。我们知道,国内的开发人员,在文章资讯,阅读数这
阅读全文
摘要:本文介绍变量,什么是变量呢,可以这样理解:变量是一个容器,这个容器可以用来存储值,而且可以被其他对象引用。 看看下面的demo.py # 这里介绍 变量 # 变量可以是数字var1 = 5print(var1) # 变量可以是字符var2 = 'hello'print(var2) # 变量可以是运算
阅读全文
摘要:本文来介绍下Python中的常见数学运算,其实和其他语言一样,加减乘除语法差不多,这里注意下Python中指数的表示方法。 # 这里介绍 常见的数学运算 # 加法print(5 + 8) # 减法print(9 - 5) # 乘法print(3 * 6) # 除法print(20/3) # 指数pr
阅读全文
摘要:本文介绍Python 3中的打印语句和字符串使用,具体练习请看下面的demo.py print ('Hello Python 3!') """文本讲打印语句和字符串打印语句,里面的消息可以用单引号或者双引号括起来。""" print('我喜欢“香蕉”') # 单引号里是可以写双引号的字符串 prin
阅读全文
摘要:本系列开始介绍Python3的基础教程,为什么要选中Python 3呢?之前呢,学Python 2,看过笨方法学Python,学了不到一个礼拜,就开始用Python写Selenium脚本。最近看到一些资料和课程,都是Python 3授课的,例如,大数据,机器学习,数据挖掘;还有一个目的,我想彻底地,
阅读全文
摘要:前面我们介绍了Python中的单元测试框架unittest,以后我们所有的测试类文件,都采用unittest来辅助我们进行debug和脚本开发。搞定了debug机制和确定了unittest来进行创建和管理我们的自动化测试脚本,接下来我们来考虑下,框架设计中一种很普遍的设计思想-POM(Page Ob
阅读全文
摘要:1.什么是自动化测试框架 简单来说,自动化测试框架就是由一些标准,协议,规则组成,提供脚本运行的环境。自动化测试框架能够提供很多便利给用户高效完成一些事情,例如,结构清晰开发脚本,多种方式、平台执行脚本,良好的报告去跟踪脚本执行结果。 框架具有以下一些优点: 1)代码复用 2)最大覆盖率 3)很低成
阅读全文
摘要:本文来介绍下Python中如何读取配置文件。任何一个项目,都涉及到了配置文件和管理和读写,Python支持很多配置文件的读写,这里我们就介绍一种配置文件格式的读取数据,叫ini文件。Python中有一个类ConfigParser支持读ini文件。 1. 在项目下,新建一个文件夹,叫config,然后
阅读全文
摘要:本文来介绍,如何把常用的几个webdriver的方法封装到自己写的一个类中去,这个封装过程叫二次封装Selenium方法。我们把打开站点,浏览器前进和后退,关闭和退出浏览器这这个方法封装到一个新写的类中去。 我们按照如下层次结构在PyCharm中新建两个包和两个.py文件: 上图,baidu_sea
阅读全文
摘要:本文介绍如何利用Selenium的方法进行截图,在测试过程中,是有必要截图,特别是遇到错误的时候进行截图。在selenium for python中主要有三个截图方法,我们挑选其中最常用的一种。 get_screenshot_as_file()相关代码如下:# coding=utf-8import
阅读全文
摘要:本文来介绍如何通过Selenium方法去处理网页Alert弹窗,和处理iframe类似,都是通过switch_to方法。这里还是没有找到合适的alert弹窗网站,我们就自己创建一个吧,前面文章介绍了如何通过执行JS来增加一个弹窗。 相关脚本代码如下: # coding=utf-8import tim
阅读全文
摘要:本文来介绍如何处理driver在多窗口之间切换,想一下这样的场景,在页面A点击一个连接,会触发在新Tab或者新窗口打开页面B,由于之前的driver实例对象在页面A,但是你接下来的脚本是操作页面B的元素,这样就造成了找不到元素的报错。本来介绍selenium中switch_to.window()方法
阅读全文
摘要:本文介绍如何通过Selenium方法来获取某一个元素的text属性值。在很多自动化测试脚本中,需要多次获取元素的text值,拿过来进行对比和匹配。例如,在一个登陆界面,如果不输入用户名和密码,直接点击登录,肯定会有相关错误提醒。这个错误,我们需要通过selenium抓取出来,和需求说明文档中的描述去
阅读全文
摘要:继续来介绍一个Selenium中页面title断言方法。 相关脚本代码如下: # coding=utf-8 import time from selenium import webdriver driver = webdriver.Chrome() driver.maximize_window()
阅读全文
摘要:本文来学习下如何通过Selenium方法,设置符合不同测试场景浏览器窗口大小。例如,你有一台机器,最大支持1366*768,你完全可以利用这个机器测试不同分辨率下的场景。 相关测试脚本代码如下: # coding=utf-8import timefrom selenium import webdri
阅读全文
摘要:前面文章介绍了如何获取当前页面的URL的值,本文介绍如何获取当前页面的title,这个也可以作为测试结果的依据,通过得到的title和预期的值对比,可以支持我们判断页面跳转正确。 相关脚本代码如下: # coding=utf-8import timefrom selenium import webd
阅读全文
摘要:本文介绍如selenium方法打开一个新的tab,我们知道在浏览器里,我们按住 ctrl+ t 就可以新打开一个tab。所以我们学习如何利用webdriver中send_key 的方法去触发ctrl+t的效果。我们利用火狐浏览器来演示。 相关代码如下: 主要是调用了keys模块下相关方法,可以通过这
阅读全文
摘要:本文介绍如何通过webdriver方法获取当前测试页面的URL。获取当前URL有什么用处呢,一般URL可以帮助我们判断跳转的页面是否正确,或者URL中部分字段可以作为我们自动化测试脚本期待结果的一部分。 相关脚本代码如下: # coding=utf-8import timefrom selenium
阅读全文
摘要:本文来介绍上如何,利用webdriver中的方法来演示浏览器中地址栏旁边的前进和后退功能。 相关脚本代码如下: # coding=utf-8import timefrom selenium import webdriver driver = webdriver.Chrome()driver.maxi
阅读全文
摘要:本文介绍,如何通过webdriver方法获取浏览器的版本号。看起来这个功能很鸡肋,不管怎么说,还是学习下,特别是在发送自动化测试报告的时候,还是可以通过这个方法来告诉别人,执行过的脚本是通过什么浏览器,什么版本跑的吧。 相关脚本代码如下: # coding=utf-8import timefrom
阅读全文
摘要:前面介绍了,XPath, id , class , link text, partial link text, tag name, name 七大元素定位方法,本文介绍webdriver支持的最后一个方法:by_css。css和XPath类似,也需要掌握一些语法,才能写出正确的,完整的css选择表达
阅读全文
摘要:在前面的基础篇的最后一篇,我们用到了输入字符和点击按钮这样的操作。用send_keys()来输入字符串到文本输入框这样的页面元素,用click()来点击页面上支持点击的元素。有时候,我们需要清除一个文本输入框内的文字,然后重新输入新的字符串,那边清除这个方法如何实现呢。 调用webdriever中c
阅读全文
摘要:本文介绍如何通过节点中name的值来定位这个web元素。还是来看百度首页搜索输入框,通过name的值来定位。 相关脚本代码: # coding=utf-8 from selenium import webdriver driver = webdriver.Chrome()driver.maximiz
阅读全文
摘要:正常情况下windows的命令行执行python脚本命令: python 脚本名.py 我这样做了,看截图可以看到,并没有期待中那样有一堆高大上的信息输出,反而毛都没有!!!! 于是,我想起了度娘,但是她并没有给我鱼,甚至连渔都没给我!!!! 经过一番折腾,回到了起点... 最后! 在pycharm
阅读全文