自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(22)
  • 收藏
  • 关注

原创 httprunner3.x 测试报告

httprunner3.x版本的接入了pytest框架,所以可以使用pytest所又的插件;对比httprunner2.x的报告展示各有优缺点,个人觉得2.x的报告还是挺不错的,看起来也很舒服的。测试报告生成:首先就是html报告:这个插件貌似你在安装httprunner3.x版本时就已经默认安装了,可以直接理解成内置html报告,如果显示没有安装,使用命令安装即可:(venv) F:\VSCODETESTING\demo> pip install pytest-html...

2021-03-29 23:52:48 1177

原创 httprunner3.x 测试用例关联及运行

测试用例关联hhttprunner中不仅有hook机制,还有用例关联操作,引用内置的RunTestCase类,主要用于在测试步骤中引用其他测试用例 Step( RunTestCase('request login functions') .call(TestCaseLogin) .export(*['token'])RunTestCase(name):初始化,可自定义的name名称,必填项.call(类

2021-03-27 22:04:33 1120 1

原创 httprunner3.x hook机制

接口自动化测试中,难免会出现前置条件和后置条件的处理问题,unittest框架中使用最多的是setUp() 、tearDown() ;pytest中使用最多的是在夹层 conftest.py 文件中定义函数加@pytest.fixture()装饰器来处理;而httprunner中使用的是hook机制来处理前置后置。在 .py文件的测试步骤的 teststeps中新增关键字 setup_hook 和 teardown_hook:import pytestfrom httprunn...

2021-03-26 19:36:27 995 1

原创 httprunner3.x 参数化数据驱动

httprunner3.x中的参数化我们需要引入pytest和处理参数化的函数:import pytestfrom httprunner import Parameters源码介绍 Parameters 中的使用方法:def parse_parameters(parameters: Dict,) -> List[Dict]: """ parse parameters and generate cartesian product. Args: paramete

2021-03-25 23:57:50 591 4

原创 httprunner3.x python语言编写测试用例

httprunner是采用yaml/json文件编写测试用例,然后运行,但是3.x后引入了pytest框架,我们即便使用yaml和json文件,最后的执行也是转成.py文件执行。所以3.x版本推荐直接编写代码,相对来说,代码编写比文件编写要好太多,因为httprunner3.x的语法关联性特别强;以下就是针对代码编写用的一些常用操作。附上示例代码:from httprunner import (HttpRunner, Config, Step, RunRequest, RunTestCase)

2021-03-24 20:27:40 1332

原创 httprunner3.x .har文件处理运行

–httprunner中引用的是yaml/json写测试用例,但是有些时候一个一个的写比较繁琐,为了减少繁琐事务,应用.har文件转成yaml/json文件运行测试用例。项目工程目录:har中的文件可以直接从Charles或者Fiddler中抓取后导出放到har文件夹中:har文件夹中的.har文件我们要转成yaml/json文件,具体命令我们可以使用帮助命令查看下 har2case -h:F:\TESTING\apiWebStudent\demo>har2case -husage:

2021-03-23 19:17:25 1079

原创 httprunner3.x安装及运行

–httprunner是一个开源框架,只需编写维护一份 YAML/JSON 脚本,从1.x到现在的3.x也在不断地优化更新,3.x版本继续继承优秀的request库并增加了pytest框架、allure报告、locust性能等,集接口、性能、自动化测试为一体的多种需求测试,当然也肯定是支持持续集成的。安装httprunner: pip3 install httprunner更新httprunner: pip3 install -U httprunner检查安装版本命令:httprunne

2021-03-23 18:06:31 1565

原创 web自动化测试清除可视化界面

–设置无界面浏览器,适用于linux服务器上作持续集成,因为linux不支持可视化界面,不去除的话会启动失败。设置无界面浏览器,必须要先引包操作:用哪个浏览器就引用哪个指定包,chrome、firexfox、edge、opera、ie;safari浏览器适用于mac电脑,但是运行坑较多,官网建议使用appimu,不过你也可以试试,实践是检验真理的唯一标准from selenium.webdriver.chrome.options import Optionsfrom selenium.web

2021-03-18 11:00:00 490

原创 web自动化测试POM设计模式

页面对象模型:Page object modelsPage Object是一种设计模式,已在测试自动化中流行,以增强测试维护并减少代码重复。页面对象是面向对象的类,测试只要需要与该页面的UI进行交互,便会使用该页面对象类的方法。好处是,如果页面的UI更改了,则测试本身不需要更改,只需更改页面对象中的代码即可。页面对象设计模式优点:测试代码和页面特定代码之间有清晰的区分, 提高可维护性集中管理元素对象代码可复用性强,成本低模式层级设计分三层:页面层:主要封装一些定位方法、等待方法…操作

2021-03-17 12:48:00 1190

原创 web自动化测试js处理日期控件

–js处理日期控件方法元素定位中我们会碰到一些日历控件,针对像有readonly这种的我们就可以使用js或者jQuery提供的方法来处理它,当然,如果你jQuery玩的特别好,那元素定对你来说就更是毛毛雨了。下面以12306网站为栗子:从截图中可以看到是有raadonly的,readonly去掉后我们就可以使用send_keys进入输入数据操作了。js写不好,我们可以在浏览器Console控制台下操作,因为有自动补充语句功能过,可以在这边操作完了复制到代码中运行…我使用了getElemen

2021-03-13 13:39:37 672

原创 web自动化测试下拉选择框Select

下拉框选项操作:Select针对下拉框选项,可以直接获取下拉框中的值,然后再循环获取匹配,也可以直接通过元素定位直接操作,针对select/option这样下拉选择框,如图展示:,我们可以直接使用webdriver中的Select类去处理首先是引如Select类(两种引包方法):from selenium.webdriver.support.select import Selectfrom selenium.webdriver.support.ui import Se...

2021-03-12 19:47:30 3929

原创 web自动化测试JavaScript 弹出框处理

JavaScript警报,提示和确认js之:Alerts弹框:import timefrom selenium import webdriverfrom selenium.webdriver.support.wait import WebDriverWaitfrom selenium.webdriver.support import expected_conditions as ECfrom selenium.webdriver.common.desired_capabi...

2021-03-11 19:50:51 810

原创 web自动化测试页面加载

Page loading strategy :页面加载策略Selenium WebDriver加载页面时,它遵循正常的pageLoadStrategy。默认情况下页面加载会花费大量时间下载资源(例如图像,css,js)。有些时候我们不需要下载css、图像等,所以WebDriver推荐设置pageLoadStrategy来优化。首先第一种设置页面加载方法:需要引入指定包:from selenium.webdriver.chrome.options import Option...

2021-03-10 18:06:25 360

原创 web自动化测试页面等待

Waits 等待WebDriver因为是异步触发元素或事件,有些时候脚本可能是间接性的,也有可能是断断续续的;又加浏览器和WebDriver脚本之间的存在竞争条件问题,因此我们需要引入等待包,让脚本运行不会出现阻塞或失败。使用等待时,我们需要引入等待包:ui和wait里面都有WebDriverWait类,目前两种引包使用都没问题的;区别的话就是:ui模块里面引入的类就是wait下的WebDriverWait类 。from selenium.webdriver.suppo...

2021-03-09 23:19:27 360

原创 web自动化测试键盘操作事件

–Keyboard,键盘事件键盘操作是通过使用低级界面执行的,该界面允许我们向网络浏览器提供虚拟化的设备输入…–键盘操作的必须要引的包from selenium.webdriver.common.keys import KeyssendKeys遇到修饰符键,可以在sendKey中输入,模拟键盘按键的操作更多键盘操作请点击WebDriver支持的全部键盘点击键列表。import timefrom selenium import webdriverfrom selenium.we

2021-03-08 16:49:04 403

原创 web自动化测试鼠标点击事件

–鼠标表示鼠标事件。 鼠标操作是通过使用低级界面执行的,该界面允许我们向Web浏览器提供虚拟化的设备输入操作。–鼠标动作操作方法详细介绍如下:click_and_hold移动到该元素,然后在给定元素的中间单击(不释放)import timefrom selenium import webdriverfrom selenium.webdriver.common.action_chains import ActionChainswith webdriver.Chrome() as

2021-03-07 14:27:15 1422 1

原创 解决Mac电脑报错:You don‘t have permission to access that port.

启动django服务的时候报了一堆英语:You have 18 unapplied migration(s). Your project may not work properlyuntil you apply the migrations for app(s): admin, auth, contenttypes,sessions. Run ‘python manage.py migrate’ to apply them.使用了谷歌在线翻译下:您有18个未应用的迁移。 在为应用程序应用迁移

2021-03-07 00:15:42 4241 1

原创 web自动化测试浏览器操作

WebDriver中提供了一系列的浏览器操作,使用户能更好的操作浏览器,更好的进行自动化操作。下面对一些浏览器操作方法进行了介绍和使用,希望能帮助到你…导航启动浏览器后,您要做的第一件事就是打开您的网站driver.get('https://www.baidu.com/')获取当前url使用以下方法从浏览器的地址栏中读取当前URL注意current_url后面是不带括号的,使用的话是会报错的from selenium import webdriverdriver = we

2021-03-06 17:01:13 461

原创 web自动化测试元素定位

ID定位driver.find_element_by_id("kw").send_keys('你好')NAME定位driver.find_element_by_name("wd").send_keys('name')CLASS_NAME定位driver.find_element_by_class_name("s_ipt").send_keys('class_name')TAG_NAME定位这个是行不通的,因为重复的标签太多了,无法定位准确from selenium imp

2021-03-05 10:41:55 472

原创 web自动化测试元素定位方法

–web自动化测试元素定位方法使用WebDriver时要学习的最基本技术之一是如何在页面上查找元素。WebDriver提供了许多内置的选择器类型,其中包括通过ID、NAME、CLASS_NAME、TAG_NAME等属性查找元素的方法WebDriver中八种不同的元素定位方法:from selenium import webdriverfrom selenium.webdriver.common.by import Bydriver = webdriver.Edge(executable_p

2021-03-04 10:37:15 542 1

原创 web自动化测试环境配置及浏览器介绍

web自动化是代码与浏览器之间进行的交互,由代码发送命令来驱动浏览器执行相应的操作。python的环境,python3.0版本selenium库的安装浏览器的驱动下载安装

2021-03-03 11:15:40 284

原创 Tkinter ->Spinbox控件的基本使用

–Spinbox控件也是一种输入控件,它是允许用户用鼠标点击uo/down按钮,或是上箭头/下箭头达到某一数值区间内的增减数值,也可以直接输入数值import tkinter as tkwin = tk.Tk()win.title('Spinbox')win.geometry('300x100')"""from_=10 范围的开始值to=30 范围的末端值increment=2 每次点击增长或减少的值得量state

2021-03-01 19:28:31 1557 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除