08 2021 档案
摘要:代码 import json print(json.dumps("机器猫")) 结果 原因 #这时候其实输出的并不是中文,而是ASCII中对应的机器猫的字符码 #原因:json.dumps序列化时候对中文默认使用的ascii编码,想要输出真正的中文需要指定ensure_ascii=False 修改
阅读全文
摘要:前言 上网发现接口自动化有时候会遇到SSLError: certificate verify failed发现很有意思于是记录下来 代码 import urllib.requestweburl = "https://www.douban.com/"webheader = { 'Accept': 't
阅读全文
摘要:参数化 参数化时候,可以使用@allure.title给用例不同标题 测试代码 import allure import pytest data = [ ("name1", "123456", "name1 登录成功"), ("name2", "123456", "name2 登录失败"), ("n
阅读全文
摘要:前言 Fiddler怎么进行重复的操作呢 步骤 1.replay功能调用 (1、Reissue Requests:重发选中的请求(快捷键:r) (2、Reissue Unconditinally:无条件重发选中的请求(快捷键:u) (3、Reissue and eidt:重发并编辑,会打开一个加了断
阅读全文
摘要:前言 怎么修改接口的返回数据呢 步骤 1. 抓包,找到要拦截的请求,然后在AutoResponder中Add Rule: 2. 在Rule Editor中的第二栏选择“Create New Response...”: 3. 点击Save,会弹出一个窗口,在弹窗中选择Raw栏,将抓包抓到的请求对应的R
阅读全文
摘要:前言 Fillder怎么过滤想要的数据呢 未勾选时fiddler不显示指定请求(即抓取所有请求)在开发/测试中是非常有用的,尤其是你在这边只想看某个服务器下的请求,那边有程序或者网站却在自动频繁发送求情,这真的是一件很烦人的事。 Filters介绍 Filters使用 一,Fiddler域名过滤 1
阅读全文
摘要:command 列表 generate serve open plugin 这里只讲第一个和第三个 generate 命令行参数 作用 生成 allure 的html 报告 语法格式 generate [options] allure 结果目录 注:allure 结果目录就是运行 pytest 命令
阅读全文
摘要:前言 平时写测试用例也会划分优先级 同样,allure 也提供用例级别,在 allure 报告可以清晰看到不同级别用例的缺陷数量 用例等级介绍 allure 提供的枚举类 等级介绍 blocker:阻塞缺陷(功能未实现,无法下一步) critical:严重缺陷(功能点缺失) normal: 一般缺陷
阅读全文
摘要:前言 前面几篇文章主要介绍了allure的特性,这篇文章我们就来讲下allure的标记用法 有时候我们写pytest的时候,会用到 @pytest.mark 但并不会显示在allure报告上 而allure也提供了三种类型的标记装饰器,它们是可以显示在allure报告上的 allure的标记装饰器
阅读全文
摘要:响应断言 响应断言界面介绍 Apply to 有四个应用范围 main sample and sub sample main sample only(默认) sub-sample only jmeter variable 一般默认勾选 main sample only 就足够了,因为我们一个请求,实
阅读全文
摘要:JSON 断言 JSON 断言界面介绍 字段说明 Assert JSON Path exists:需要断言的 JSON 表达式 Additionally assert value:如果要根据值去断言,请勾选 Match as regular expression:如果要根据正则表达式去断言,请勾选
阅读全文
摘要:前言 上一篇文章介绍了两种allure的特性 @allure.description() :添加测试用例描述,一共三种方式哦! @allure.title():指定测试用例标题,默认是函数名哦! 这一篇幅,我们主要来讲解最后三个常见特性,主要是为了将allure报告和测试管理系统集成,可以更快速的跳
阅读全文
摘要:这篇文章主要介绍了python requests包的request()函数中的参数-params和data的区别介绍 如下所示: import requests url='http://www.baidu.com' #下面使用requests.request(method, url, **kwarg
阅读全文
摘要:实例 在实际编码的过程中经常遇到header的Content-Type的类型主要是application/json格式,我这里也没有考虑到与application/x-www-form-urlencoded区别还按照以前方式来写代码,每次请求都会提示"缺少必要参数",我这里明明已经传入body数据为
阅读全文
摘要:1、应尽量避免在 where 子句中使用!=或<>操作符,否则将引擎放弃使用索引而进行全表扫描。2、对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引。3、应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索引而进
阅读全文
摘要:前言 上一篇文章介绍了两种allure的特性 @allure.step() 装饰器:可以设置测试步骤,让测试用例的执行过程更加详细 allure.attach() 函数:可以设置需要显示在allure报告的附件,包含了多种类型,可以通过allure.attachment_type查看支持的类型 这一
阅读全文
摘要:简单直接上代码 import unittestimport HTMLTestRunnerfrom unittest1.test_D import *from unittest1.test_E import *if __name__ == '__main__': # suite=unittest.Te
阅读全文
摘要:前言 我们在写用例的时候,单个脚本的用例好执行,那么多个脚本的时候,如何批量执行呢?这时候就需要用到unittet里面的discover方法来加载用例了。 加载用例后,用unittest里面的TextTestRunner这里类的run方法去一次执行多个脚本的用例。 一、新建测试项目 1.pychar
阅读全文
摘要:前言 allure除了支持pytest自带的特性之外(fixture、parametrize、xfail、skip),自己本身也有强大的特性可以在pytest中使用 @allure.step allure报告最重要的一点是,它允许对每个测试用例进行非常详细的步骤说明 通过 @allure.step(
阅读全文
摘要:事务 在性能测试里,衡量一个系统的好坏,主要是看单位时间内,系统可以处理多少个业务量。各个系统的业务量不一定,为了方便使用统一指标来衡量业务的性能。用事务来代表业务操作,一个事务可以代表一个业务,也可以代表多个业务,事务是用户定义的,想测试什么业务的性能就把该业务添加到事务里 TPS/QPS Tra
阅读全文
摘要:官方介绍 Allure Framework是一种灵活的轻量级多语言测试报告工具,不仅可以以简洁的Web报告形式非常简洁地显示已测试的内容,也允许参与开发过程的每个人从日常测试中提取最大程度的有用信息 从开发/质量保证的角度来看,Allure报告可以缩短常见缺陷的生命周期:可以将测试失败划分为bug和
阅读全文
摘要:背景 在写接口或功能自动化case的时候,会遇到一些case有先后执行顺序的场景。比如:注册->登陆,先调用注册接口在数据库里面生成用户名和密码,然后使用登陆接口验证登陆。 在pytest里,如果注册和登陆分别是两个testcase,默认执行执行顺序是从前到后的。 例子 有一个pytest的测试ca
阅读全文
摘要:背景 使用pytest进行断言判断的时候,为了用例的精准性,经常会多个方面进行断言,比如如下: 断言1:断言响应的http的状态 断言2:断言响应返回的code值 断言3:断言响应返回的json中的data字段是否符合预期。 如果使用原生python的assert,就会遇到一个断言失败则全部失败的情
阅读全文
摘要:Python中 sys.argv[]的用法简明解释 因为是看书自学的python,开始后不久就遇到了这个引入的模块函数,且一直在IDLE上编辑了后运行,试图从结果发现它的用途,然而结果一直都是没结果,也在网上查了许多,但发现这个问题的比较详细的解释只有一个版本,大部分都是转载和复制的。给的都是简明p
阅读全文
摘要:前言 pytest配置文件可以改变pytest的运行方式,它是一个固定的文件pytest.ini文件,读取配置信息,按指定的方式去运行。 ini配置文件 pytest里面有些文件是非test文件 pytest.ini pytest的主配置文件,可以改变pytest的默认行为 conftest.py
阅读全文
摘要:前言 平常在做功能测试的时候,经常会遇到某个模块不稳定,偶然会出现一些bug,对于这种问题我们会针对此用例反复执行多次,最终复现出问题来 自动化运行用例时候,也会出现偶然的bug,可以针对单个用例,或者针对某个模块的用例重复执行多次 环境前提 Python 2.7、3.4+或PyPy py.test
阅读全文
摘要:首先给出自己实践后的结果: _CSVRead:是依靠线程实现参数化,每个线程使用不同的参数; CSV Data Set Config:是依靠循环次数实现参数化,每次使用不同的参数。 为了对比,创建两个相同的HTTP请求 A.使用函数助手配置如下(后面简称A): B.使用CSV Data Set Co
阅读全文
摘要:背景 在编写接口case的时候,我们常遇到一个这样的问题: 测试环境不稳定偶发接口超时(和服务无关,纯粹是环境问题),然后执行接口case也因此偶发失败。比如同一个接口case跑五次,其中有两次失败,另外三次都是成功的,这种偶发性的环境问题就需要我们手动重跑(还不一定能够通过)。有没有一个比较好的机
阅读全文

浙公网安备 33010602011771号