pytest-xdist分布式测试的原理 前言 xdist的分布式类似于一主多从的结构,master机负责下发命令,控制slave机:slave机根据master机的命令执行特定测试任务 在xdist中,主是master,从是workers 大致原理 xdist会产生一个或多个workers,workers都通过master来控制 每个worker负责执行完整的测试用例集,然后按照master的要求运行测试,而master机不执行测试任务 pytest-xdist分布式测试的流程 第一步:创建w…
如果你还想从头学起Pytest,可以看看这个系列的文章哦! https://www.cnblogs.com/poloyy/category/1690628.html 前言 平常我们功能测试用例非常多时,比如有1千条用例,假设每个用例执行需要1分钟,如果单个测试人员执行需要1000分钟才能跑完 当项目非常紧急时,会需要协调多个测试资源来把任务分成两部分,于是执行时间缩短一半,如果有10个小伙伴,那么执行时间就会变成十分之一,大大节省了测试时间 为了节省项目测试时间,10个测试同时并行测试,这就是一…
pytest是什么 pytest是python的一款测试框架,拥有unittest的功能并比它更丰富. allure是什么 有非常多的优秀的测试框架,但却是有非常少优秀的报告工具可以展示非常清楚的用例执行过程和结果. allure是一款开源的,专门用来展示测试结果的工具,目的是希望团队内部每一个人都可以看到非常清楚的测试结果. allure可以与非常多的著名测试框架做集成. 像java语言,可以与junit4,junit5,TestNG测试框架集成. python语言,可以与pytest,beh…
如果想从头学起pytest,可以去看看这个系列的文章! https://www.cnblogs.com/miki-peng/category/1960108.html 前言​ ​ 目前有两种纯测试的测试框架,就是unittest和pytest. ​ unittest这个已经是老框架了并且广为人知,很多人都是用它来做接口自动化或web自动化.它是python内嵌的测试框架,是标准库,即python自带的,安装python以后可以直接导入.unittest提供了test cases.test sui…
在之前,我分享过unittest系列,后来有很多人问我,能不能出pytest的教程,正好最近在整理pytest相关的资料,那么,就趁着这个机会,去和大家分享一下pytest系列. pytest是一个非常成熟的全功能的Python测试框架.那么他有什么优点呢. pytest优点 入门简单,文档丰富 支持单元测试,功能测试 支持参数化,重复执行,部分执行,测试跳过 兼容其他测试框架(nose,unittest 等) 支持生成html报告 可集成CI环境(Jenkins 等) 第三方插件丰富,良好的自…
如果你还想从头学起Pytest,可以看看这个系列的文章哦! https://www.cnblogs.com/poloyy/category/1690628.html 前言 pytest配置文件可以改变pytest的运行方式,它是一个固定的文件pytest.ini文件,读取配置信息,按指定的方式去运行 非test文件 pytest里面有些文件是非test文件 pytest.ini:pytest的主配置文件,可以改变pytest的默认行为 conftest.py:测试用例的一些fixture配置 _…
pytest系列(一)中给大家介绍了pytest的特性,以及它的编写用例的简单至极. 那么在实际工作当中呢,我们要写的自动化用例会比较多,不会都放在一个py文件里. 如下图所示,我们编写的用例存放在不同的py文件当中. 当我们想只运行诸多py文当中的部分用例,怎么办呢? 比如自动化工作当中,选择test_a,test_33,test_000这3个用例来运行的话,如何过滤呢? pytest.mark一下 在pytest当中,先给用例打标记,在运行时,通过标记名来过滤测试用例. 步骤1:给用例打标签…
如果你还想从头学起Pytest,可以看看这个系列的文章哦! https://www.cnblogs.com/poloyy/category/1690628.html 前言 目前有两种纯测试的测试框架,pytest和unittest unittest应该是广为人知,而且也是老框架了,很多人都用来做自动化,无论是UI还是接口 pytest是基于unittest开发的另一款更高级更好用的单元测试框架 出去面试也好,跟别人说起来也好,pytest的逼格明显高于unittest 为什么要用Pytest p…
如果你还想从头学起Pytest,可以看看这个系列的文章哦! https://www.cnblogs.com/poloyy/category/1690628.html 前言 pytest 可以支持自定义标记,自定义标记可以把一个 web 项目划分多个模块,然后指定模块名称执行 譬如我可以标明哪些用例是window下执行的,哪些用例是mac下执行的,在运行代码时候指定mark即可   上代码 #!/usr/bin/env python # -*- coding: utf-8 -*- ""&…
如果你还想从头学起Pytest,可以看看这个系列的文章哦! https://www.cnblogs.com/poloyy/category/1690628.html 前言 pytest允许在多个级别启用测试参数化: pytest.fixture() 允许fixture有参数化功能(后面讲解) @pytest.mark.parametrize 允许在测试函数或类中定义多组参数和fixtures pytest_generate_tests 允许定义自定义参数化方案或扩展(拓展) 参数化场景 只有测试…
如果想从头学起pytest,可以去看看这个系列的文章! https://www.cnblogs.com/miki-peng/category/1960108.html mark标记 ​ 在实际工作中,我们要写的自动化用例会比较多,也不会都放在一个py文件中,如果有几十个py文件,上百个方法,而我们只想运行当中部分的用例时怎么办? ​ pytest提供了一个非常好用的mark功能,可以给测试用例打上各种各样的标签,运行用例时可以指定运行某个标签.mark功能作用就是灵活的管理和运行测试用例. ​…
如果你还想从头学起Pytest,可以看看这个系列的文章哦! https://www.cnblogs.com/poloyy/category/1690628.html 前言 pytest中可以用python的assert断言,也可以写多个断言,但一个失败,后面的断言将不再执行 安装插件 pip3 install pytest-assume -i http://pypi.douban.com/simple/ --trusted-host pypi.douban.com assert多重断言 def…
pytest是python语言中一款强大的单元测试框架,用来管理和组织测试用例,可应用在单元测试.自动化测试工作中. unittest也是python语言中一款单元测试框架,但是功能有限,没有pytest灵活. 就像:苹果电脑mac air 和mac pro一样.都是具备同样的功能,但是好用,和更好用. 本文包含以下几个内容点: 1)pytest的简单示例 2)pytest的安装 3)pytest的特征.与unittest的区别. 4)  pytest如何自动识别用例. 5)pytest框架中,…
如果你想从头学习Jmeter,可以看看这个系列的文章哦 https://www.cnblogs.com/poloyy/category/1746599.html 为什么要做分布式 Jmeter 本身的局限性 一台压力机的 Jmeter 默认最大支持 1000 左右的并发用户数(线程数),再大的话,容易造成卡顿.无响应等情况,这是受限于 Jmeter 其本身的机制和硬件配置(内存.CPU等) 由于 Jmeter 是 Java 应用,对 CPU 和内存的消耗较大,在需要模拟大量并发用户数时,单机很容…
前言 我们每天写完自动化用例后都会提交到 git 仓库,随着用例的增多,为了保证仓库代码的干净,当有用例新增的时候,我们希望只运行新增的未提交 git 仓库的用例.pytest-picked 插件可以实现只运行未提交到git仓库的代码. 安装 pip3 install pytest-picked 使用示例 $ pytest --picked $ pytest --picked=first $ pytest --picked --mode=branch $ pytest --picked --mo…
如果你还想从头学起Pytest,可以看看这个系列的文章哦! https://www.cnblogs.com/poloyy/category/1690628.html allure 和 pytest 相关环境安装 # allure pip3 install allure-pytest -i http://pypi.douban.com/simple/ --trusted-host pypi.douban.com #pytest pip3 install pytest -i http://pypi.…
假设现在有 192.168.1.100(jmeter 控制器 C ).192.168.1.101(jmeter负载机 B)两台机器进行分布式测试,各个步骤如下 1. C 和B 安装jmeter,并运行bin目录下的jmeter-server.sh 2. project/src/test/jmeter/ 下放jmeter.properties,并设置多机负载 #---------------------------------------------------------------------…
UI 测试是一种测试类型,也称为用户界面测试,通过该测试,我们检查应用程序的界面是否工作正常或是否存在任何妨碍用户行为且不符合书面规格的 BUG.了解用户将如何在用户和网站之间进行交互以执行 UI 测试至关重要,通过执行 UI 测试,测试人员将尝试模仿用户的行为,以查看用户将如何与程序进行交互,并查看网站的运行情况是否如预期的那样,是否有缺陷. 在上次的自动化测试系列(二)中为大家大体介绍了API测试的概念及在猪齿鱼中的实践展开,本文主要围绕UI测试进行概念介绍及Choerodon中的实践展开.…
前言:随着自动化测试越学越深,深深觉得有太多的东西需要总结. 1.记录下学习中遇到的坑,当做学习笔记.2.有前人路过看到文章中比较落后的做法,请务必一定要指教.(因为是初学者视角,很多东西只是走通而已,不足的地方多的去了,无论谁的指教都会让我受益匪浅)3.因为我就是一个初学者,所以我打算详细的记录操作步骤,争取和我一样的初学者看着这篇文章就可以成功搭建测试环境. 项目背景:我负责的自动化web测试框架已经搭建完成了.框架主要主要使用了:语言:python测试框架:pytestweb自动化:sel…
原文:ASP.NET MVC+EF框架+EasyUI实现权限管理系列(17)-注册用户功能的细节处理(各种验证) ASP.NET MVC+EF框架+EasyUI实现权限管系列 (开篇)   (1):框架搭建    (2):数据库访问层的设计Demo    (3):面向接口编程   (4 ):业务逻辑层的封装    (5):前台Jquery easyUI实现   (6):EF上下文实例管理   (7):DBSession的封装   (8):DBSession线程内唯一    (9):TT摸版的学习…
一.设计思路 在国内市场上,IE内核的浏览器占据了绝大部分的市场份额,那么此次框架封装将进行IE系列的浏览器进行多线程并发执行分布式测试的封装. 运行时主进程与多线程关系如下:…
上一篇文章我们说到了jmeter命令行运行但是是单节点下的, jmeter底层用java开发,耗内存.cpu,如果项目要求大并发去压测服务端的话,jmeter单节点难以完成大并发的请求,这时就需要对jmeter进行分布式测试: 1:先说说分布式测试原理 处理过程: 一:调度机master启动以后,会拷贝本地的jmx文件分发到远程的slave机器上: 二:slave机器拿到脚本以后启动命令行模式去执行脚本,对于每台slave机器拿到的脚本都是一样的,所以如果jmx脚本为50个线程跑3分钟,那么实际…
1.在OpenStack 圈子中,有这么一句名言:”不要让朋友在生产环境中运行DevStack.但是初学者在没有掌握OpenStack CLI的情况下用devstack安装测试环境还是不错的.本系列文章后期也会切换到OpenStack CLI.os: ubuntu-16.04 amd64,安装前执行:egrep '(vmx|svm)' /proc/cpuinfo在bios里面将VT-X(cpu虚拟化)或VT-D(io资源虚拟化)选项打开才能真正使用.openstack 第16个版本是Pike(2…
jmeter用了一年多,也断断续续写了一些相关的博客,突然发现没有写过分布式测试的一些东西,这篇博客就介绍下利用jmeter做分布式测试的一些技术点吧,权当参考... 关于jmeter的介绍和元件作用,之前的博客介绍过,很多其他同行的博客也够详细的,这里不做介绍,对jmeter不甚了解的可以参考之前的博客:jmeter:菜鸟入门到进阶系列 jmeter官方文档:用户手册 jmeter源码:Apache JMeter 一.为什么要使用分布式测试 按照一般的压力机配置,jmeter的GUI模式下(W…
From: http://www.testclass.net/pytest/test_api/ 背景 我们现在需要测试v2ex网站的查看论坛节点信息的api.具体如下: 节点信息 获得指定节点的名字,简介,URL 及头像图片的地址. https://www.v2ex.com/api/nodes/show.json Method: GET Authentication: None 接受参数: name: 节点名(V2EX 的节点名全是半角英文或者数字) 例如: https://www.v2ex.c…
本博文的主要内容有 一.zookeeper编程入门系列之利用zookeeper的临时节点的特性来监控程序是否还在运行   二.zookeeper编程入门系列之zookeeper实现分布式进程监控 三.zookeeper编程入门系列之zookeeper实现分布式共享锁 我这里采用的是maven项目,这个很简单,不会的博友,见我下面写的这篇博客 Zookeeper项目开发环境搭建(Eclipse\MyEclipse + Maven) 这里,推荐用下面的eclipse版本(当然你若也有myeclips…
unittest是python自带的单元测试框架,它封装好了一些校验返回的结果方法和一些用例执行前的初始化操作,使得单元测试易于开展,因为它的易用性,很多同学也拿它来做功能测试和接口测试,只需简单开发一些功能(报告,初始化webdriver,或者http请求方法)便可实现. 但自动化测试中我们常常需要根据不同需求挑选部分测试用例运行,并且我们希望用例克服环境不稳定的局限,即运行失败后自动重新运行一次,如果成功就认为是环境问题导致第一次失败,还有我们经常希望测试用例可以并发执行等等,这些unitt…
TPC-C解析系列02_OceanBase如何做TPC-C测试 http://www.itpub.net/2019/10/08/3333/   导语: 蚂蚁金服自研数据库OceanBase登顶TPC-C引起业内广泛关注,为了更清楚的展示其中的技术细节,我们特意邀请OceanBase核心研发人员对本次测试进行技术解读,共包括五篇: 1)TPC-C基准测试介绍2)OceanBase如何做TPC-C测试3)TPC-C基准测试之SQL优化4)TPC-C基准测试之数据库事务引擎的挑战5)TPC-C基准测试…
前言 pytest 带有很多参数,可以使用 pytest --help  来查看帮助文档,下面介绍几种常用的参数: 无参数 读取路径下所有符合规则的文件,类,方法,函数全部执行.使用方法如下:  pytest 或者 py.test  -v 参数 打印详细运行日志信息,一般在调试的时候加上这个参数,终端会打印出每条用例的详细日志信息,方便定位问题.使用方法如下:  pytest -v  不加-v不加-v的对比: -s 参数 带控制台输出结果,当你的代码里面有 print 输出语句,如果想在运行结果…
首先非常感谢虫师的文章受益匪浅 http://www.cnblogs.com/fnng/category/345478.html 今天,花了半天时间进行分布式的测试,真是纠结啊!! RT 1.在公司用JMETER无路如何要让控制机还有代理机在同一个网段上 2.即使违反某些公司的规定,也要关闭防火墙!! 这两样做到了,基本上分布式测试就完成了百分之九十了!!我不唬你们的!!我花了两天时间了. 呜呜.测试新人.请大家多多赐教. 联系方式: 新浪微博:娇娇的无我 QQ:837955487 大家多交流哈…