0-3

django安装--python3 -m pip install django

接口--就是一个类,下面定义了一些方法

request---是做web接口的一个库--pip install request

json格式相当于是字典格式的字符串如{1:2}---"{1:2}"

接口测试返回的是数据--get请求可以不带参数,post请求要带参数

接口测试eg:

 

 

 循环字典的方法:

zidian = {name:zhangsan, password:12345}

         for key,value in zidian.item() ----.item()就是代表按键值对方式读取

跨目录引包aaa文件夹下的account.py文件--方法如下

import sys

sys.path.append('\\aaa')

print (sys.pat)  ---就可以查看是否加到环境变量里去里

from aaa.account import add   ----add是方法--这就引包成功了

xpath运用:

find_element_by_xpath('//div[@id=''kw]/span/form/input[@id='wd']/form/input')  ----类似绝对路径的查找方式

find_element_by_css('form#form>span>input[maxlenth=''255]')---form表单有一个id为form的元素--css更好

修改html页面字体文案的方法如图,先定位再修改

 

 定位元素另外一种书写格式--一般不建议用

 

 driver.currrent_url ---当前页面地址

判断一个元素是否显示出来:is_displayed()--返回的是true或者false

result = driver.find_element_by_id('kw').is_displayed()

  print(result)

解决编码问题的万能办法:引入包:--相当于把系统编码类型转换成utf-8

import sys

reload(sys)

sys.setdefaulttencoding('utf-8')

模拟鼠标点击操作要先引包

from selenium.webdriver.common.action_chains import ActionChains

right_click=driver.find_element_by_id('kw')

ActionChains(driver).context_click(right_click).perform()  ------执行鼠标右击需要用context_lick(),perform就是提交的动作

键盘事件--要先引包

from selenium.webdriver.common.keys import keys

driver.find_element_by_id('kw').send_keys('Keys,BACK_SPACE')  ---Keys是必须要有的

验证信息:

1种title:

title = driver.title

print(title)

now_url = driver.current_url

print(now_url)

2种,通过页面上出现文字验证  ---一般不用if断言

user = find_element_by_id('kw').text  

print(user)

if user == 'zhukang'

  print('ok')

else:

print('erro')

等待:显示等待--等待某个元素,建议用隐式等待

 

 隐式等待--每个元素都会等待10s

 

 find_elements_by_id()---复数形式--例如复选框有多个

 

 多表单切换一个是通过id,也可以通过xpath,建议是xpath

 

 

 6课---多窗口切换

1,获取当前窗口句柄:  driver.current_window_url

2,获取所有窗口句柄:driver.window_handles

3,切换窗口的方法:driver.switch_to_window()----括号里写跳转的窗口

上传文件可以用过send_key--比如邮箱中添加附件,先定位上传按钮的元素如name为file

driver.find_element_by_name('file').send_key('D:\\upload_file.txt')

如果上传是windows窗口,f2定位元素就不行,可以借助工具Autoit,分号;代表注销类似python的#

eg:

 

 

 

 文件的下载

 

 

 

 cookie:

 

 

 

 cookie是写在服务器端的

滚动条:--进行翻页

 

 close()--是指关闭一个

quit()---全部退出

8课--model

1,函数封装的时候如果报错driver没有被定义,则应该函数括号里面应该都传个driver的参数

2,多个用户登陆,想都公用一个登陆函数,这时就应该参数化,用tex和for循环

 

 

 

通过cxv或者xls打开 

ou

 

 xml方式读取--标签可以随便配置的,属性也是自己定义的,标签对中间可以放东西比如文本,标签对有层级关系但并无影响--xml是用来存储数据的,html是用来展示前端页面的

 

 

 

 

 

 

 

 

3,跨目录方法:

impory sys

sys.path.append('\跨目录文件名如pub')

from pub import public  ----pulic是pub文件下的py文件----如果还是运行失败就应该在pub下面创建一个_init_.py的空文件--表示可以被python调用的目录

10课ide,嵌套在浏览器里,可以录制和导出不同语言

verify Title---验证,验证失败里还是会继续走下一步

assertText---断言,断言失败里就停止运行

11课unittest单元测试框架--作用:1,用于测试的组织和执行测试用例,比较规范 2,测试结果预期和实际结果比较 3,提供丰富的日志,成功和失败日志

单元测试都是通过 unnitest.main()方法去执行的-且定义的函数是以testxx(self)开头的且带self,定义的类必须是 class Test(unittest.Testcase):书写方式

 

 代码可以通过selenium ide录制脚本

eg:

 

 class Count:---类,下面一般有def  _init_ (self,*arg) 初始化方法,有点像单元测试set up() 方法,这样类下面的函数就不用传其他参数,只用一个self即可

 

 if __name__ == '__main__' 作用是下面的方法别人看不见也不同调用,只能在这个页面用 

单元测试特点:

测试用例必须是以test开头的方法,类一定要继承单元测试TestCount(unittest.TestCase),测试套件就是装测试用例的容器

 

 

 

 

组织测试用例--根据每个功能写一个测试类,分文件,

discover---执行两个测试文件:1,导入测试的模块,用测试集--不推荐 2,用discover方法

1,当前目录下的要执行的测试文件

 

 2,不同目录不能被执行的时候,可以在别的目录加上_init_.py文件

unittest.main()--的执行顺序

12课htmltestrunner--测试报告--先去下载,就是一个py文件--要放到python的目录下面,用的时候要引包

 

 测试报告要加内部注释更好

报告要生成新的时间--最好用 time.strftime("%y_%m_%d %H:%M:%S")

 

 

 

 13课。自动发邮件功能---定时跑--先引包 和email的格式和头部

1,以html文本形式展示

 

 2,种,以附件形式展示

 

 

 

 

可以直接定义一个发送邮件的函数,这样就直接调用即可

 

 

 

 找到最新的报告--发送出去--sort

os模块是执行本地的一些操作,如本地的一些exe文件,os.listdir---获取当前一些文件目录

 

 14课,grid作用主要是多浏览器多平台,可以分为多节点去控制

15课需要再研究

 appium

 

转载于:https://www.cnblogs.com/star77/p/11435272.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值