自动化之路
文章平均质量分 70
CrissChan
前京东测试架构师、阿里云MVP、华为云MVP、中国商业联合会互联网应用工作委员会智库专家、中关村智联软件服务业质量创新联盟软件测试标准化技术委员会委员、极*客时间命题专家,极*客时间《接口测试入门课》作者、《研发效能实践指南》副主编、拉钩教育《软件测试第一课》作者,NCUT软件体系结构实验室特邀企业导师、《接口测试方法论》《持续测试》《京东质量团队转型实践》图书作者、《测试敏捷化白皮书》特邀编委、《DB51T1998-2015移动智能终端应用软件(APP)产品通用技术要求及测试规范》编委、多次受邀参与TID、NCTS、MAD、MPD、TICA、DevOpsDys等技术峰会以及参出品人。
展开
-
Jacoco的覆盖率原理
虽然JVMTI提供了强大的功能,但是需要注意的是,并非所有的JVM实现都支持JVMTI的所有特性。Probe探针在不影响原来的指令执行流程的前提下插入到两个指令之间,每一个探针都插入在程序的control flow的边中,如果探针被执行了,我们可以确定这个边上的代码就会被执行。JUMP(conditional):反转操作码的语义,然后在条件跳转指令后加探针,然后在探针后添加GOTO指令跳转到原本的位置(这是因为字节码是顺序执行的,所以需要添加一个goto,完成无条件跳转的。原创 2024-07-03 16:14:54 · 298 阅读 · 0 评论 -
LlamaIndex废弃了ParamTuner,可以用RayTuneParamTuner和AsycParamTuner替换
一些实现细节可以参见https://github.com/run-llama/llama_index/blob/main/llama-index-legacy/llama_index/legacy/param_tuner/base.py。LlamaIndex在0.10.x中的llama-index-experimental-param-tuner中设计了ParamTuner,在后面的版本中提供了AsyncParamTuner和RayTuneParamTuner替换。原创 2024-05-30 11:33:10 · 124 阅读 · 0 评论 -
通过Llama Index实现大模型的SQL生成的三种方法详解
llamaindex提供的三种text2sql的方法真的不同的问题都有其更加擅长的方向,并没有一个可以全盘解决问题的技术方案,所以具体选择哪一种还是需要根据面对的问题而定。原创 2024-04-10 10:46:46 · 893 阅读 · 0 评论 -
软件测试是质量需求的交付实践
最近反复被测试有用吗?测试必须测试工程师完成吗?为什么要做自动化测试?自动化测试的价值是什么?等等一系列的问题不断地拷问,索性就把这段时间的思考记录下来了。原创 2024-01-11 22:53:36 · 211 阅读 · 0 评论 -
OpenAI如何让ChatGPT遵守了伦理道德的底线
AI的伦理道德是探讨AI带来的伦理道德问题及风险、研究解决AI伦理问题、促进AI向善、引领人工智能健康发展的一个多学科研究领域。AI的伦理领域所涉及的内容非常丰富,是一个哲学、计算机科学、法律、经济等学科交汇碰撞的领域。原创 2023-05-29 13:29:48 · 2828 阅读 · 0 评论 -
如何测试一个AI系统?
如上是智能系统和非智能系统测试中的最显著不同的部分以及对应的方法和实践,但是针对文章开头的四个主要领域的智能系统还是有一些显著差异的,这些显著差异是应用领域的场景不同所导致的,我们会在后续继续学习和研究。原创 2023-03-16 23:56:23 · 3248 阅读 · 4 评论 -
测试左移和右移:不是左右逢源而是左右突击
在迭代进行过程中,需要通过开卡、验卡实践完成测试左移的实践落地,团队中开发工程师准备实现一个故事卡片的时候,会将测试工程师、产品经理集合到一起,按照故事卡片上的验收条件详细讲解自己对故事的理解以及如何实现的,在这时如果产品经理发现故事卡片有遗漏的验收条件那么就需要及时补充,测试工程师站在自己对需求的理解、对系统全局的认识以及对上下游依赖的基础之上补充验收条件中缺失的内容,这种快速的集合讨论就是开卡动作(英文叫做KickOff,简称KO)。随着持续测试实践的广泛应用,测试的左移和右移被越来越多的提及。原创 2022-12-23 08:51:13 · 298 阅读 · 0 评论 -
持续测试促进质量和效能双丰收
自动化测试的目的是结果验证,如果测试失败说明了被测试系统有些不满足预期内容,但是持续测试保障的是风险预防,通过DevOps每一个阶段都进行质量保障活动,通过层层质量保障最后交付一下优秀的系统,通过自动化的效率提升从而达到交付一个又快又好的系统(JKK)的目的。因此可以看出软件测试和质量保障是解决不同问题而存在的,那么质量保障和软件测试也不是说完全无关的,在实践中,质量保障工程师以协同不同团队工作为主,通过不断的度量从而督促各个团队的持续改进,而开发工程师、测试工程师共同为100%的又快又好的交付系统负责。原创 2022-08-24 14:22:48 · 82 阅读 · 0 评论 -
sonar.exclusions 配置如何生效
1、sonar.exclusions后配置一定要用**/*Criss*.java格式完成配置2、多个类需要用英文逗号分隔原创 2021-11-02 16:03:24 · 4311 阅读 · 0 评论 -
项目交接:测试应该如何衔接
很多公司都有一些项目的交接问题存在,有从商务外包团队将项目交接给公司自建团队的,也有因为公司的一些组织架构的调整导致的项目交接。(有些公司叫项目闭环,为什么叫闭环我其实也不清楚啊,就是本来A团队在AA部门做AAA项目,调整后就是A团队在BB部门做AAA项目的一部分或者全部)不管因为什么,如果发生了项目交接,你做为项目承接团队中测试工程师,要如何完成测试部分的交接呢?我们都是知道很多项目连代码都是一团乱麻,就更别提测试了,那么面对一团乱麻的项目,我们应该如何开始承接对应的测试呢?第一步:是否有测试资产.原创 2021-06-16 13:13:25 · 806 阅读 · 6 评论 -
自定义http头
HTTP自定义头自定义HTTP标头通常用于提供可能与Web开发人员相关的其他信息,或用于故障排除目的。这些标题通常首先开始X-,但是,我们将进一步讨论命名约定。这篇文章应该有助于您更好地全面了解自定义HTTP标头实际是什么,它们有用的原因以及如何定义它们。自定义标头非常适合故障排除,信息用途,甚至在服务器端实现特定逻辑。例如,我非常喜欢利用'msg'字段来配合400~599错误编号来提供额外的错误消息。如果资产是从缓存传递的,则自定义标头返回HIT,如果是从源服务器传送,则返回MISS。使用自.原创 2021-05-21 11:34:01 · 3223 阅读 · 0 评论 -
专治选择困难症——bandit算法
选择是一个技术活著名鸡汤学家沃.滋基硕德曾说过:选择比努力重要。我们会遇到很多选择的场景。上哪个大学,学什么专业,去哪家公司,中午吃什么,等等。这些事情,都让选择困难症的我们头很大。那么,有办法能够应对这些问题吗?答案是:有!而且是科学的办法,而不是“走近科学”的办法。那就是bandit算法!bandit算法来源于人民群众喜闻乐见的赌博学,它要解决的问题是这样的[1]:一个赌徒,要去摇老虎机,走进赌场一看,一排老虎机,外表一模一样,但是每个老虎机吐钱的概率可不一样,他不知道每.转载 2020-09-30 11:34:20 · 801 阅读 · 0 评论 -
手把手教你搭建一个灰度发布环境
引言灰度发布,又称金丝雀发布。金丝雀发布这一术语源于煤矿工人把笼养的金丝雀带入矿井的传统。矿工通过金丝雀来了解矿井中一氧化碳的浓度,如果一氧化碳的浓度过高,金丝雀就会中毒,从而使矿工知道应该立刻撤离。 ——《DevOps实践指南》对应到软件开中,则是指在发布新的产品特性时通过少量的用户试点确认新特性没有问题,确保无误后推广到更大的用户使用群体。集成灰度发布的流水线在DevOps中是一个非常重要的工具和高效的实践,然而笔者在入职以前对流水线和灰度发布知之甚少。在了解一个新东西时,先从逻辑上打通转载 2020-09-30 11:32:41 · 2227 阅读 · 0 评论 -
调用serverchan发送微信消息:每人每天发送上限500条,相同内容5分钟内不能重复发送,
#!/usr/bin/env python# -*- coding: utf-8 -*-# @Time : 2019/9/17 4:20 PM# @Author : Criss Chan# @Site : https://blog.csdn.net/crisschan# @File : serverchan.py# @Software: PyCharm# @instruction:调用serverchan发送微信消息:每人每天发送上限500条,相同内容5分钟内不能重复发送,原创 2020-05-20 13:19:59 · 1042 阅读 · 0 评论 -
Battle接口测试训练系统的1分钟快速说明
下载和启动服务访问入口:(http://127.0.0.1:12356/)示例系统python3.6及其以上运行的,安装好python后,需要安装如下安装包pip install bottlepip install beaker系统按照一种类似对战游戏的模式设计。系统运行方法,讲代码下载到您自己的电脑上后,输入如下的命令: python __init__.py在你的命令行中,你就可以看到对应的了系统成功运行的接口方法,并且有访问ip地址以及端口的说明。1.1 首页接口描述:访问主页原创 2020-05-11 15:58:58 · 636 阅读 · 0 评论 -
PostMan是一款不可多得的发包工具
1、下载首先说明,下载地址:https://www.getpostman.com/apps选择你的平台安装文件,进行下载。2、开始亲密接触打开软件,输入被测接口的url地址,点击“Params”设置请求参数,选择请求方法,如“GET”,“POST”。点击“Send”。一个简单的请求过程就完成了。发送完请求后,可以查看接口返回的json信息。下面来介绍一些常用功能和使用技巧。...原创 2020-03-19 14:07:56 · 1971 阅读 · 0 评论 -
PIP的报错Could not fetch URL https://pypi.org/
问题:pip安装报错Could not fetch URL https://pypi.org/simple/beaker/: There was a problem confirming the ssl certificate: HTTPSConnectionPool(host='pypi.org', port=443): Max retries exceeded with url: /simp...原创 2020-03-12 09:31:24 · 4635 阅读 · 1 评论 -
说说分层测试中HTTP的API测试工具
无论在谁的分层测试理论中,接口级别的测试都是不可或缺的一层,无论是三角形分层测试模型,还是菱形分层测试模型。API测试工具和手段都是重要的分层测试的落地实践部分,同时也会作为集成测试一部分存在。在API测试中主要关注的除去功能正确性外还有可靠性、性能、鲁棒性和安全性。本文将提供一些API测试工具的摘要,涵盖开源和商业解决方案,测试团队可以根据自己的需求进行选择。Postman官方网址:...原创 2020-02-26 10:32:52 · 727 阅读 · 0 评论 -
Git删除仓库中的文件和文件夹
很多时候我们会讲一些错误提交放到仓库中,又想在仓库中删除,本地保留。那么你知道怎么做吗?删除文件那就用命令git rm删掉,并且git commit:$ git rm readme.md$ git commit -m "remove readme.md"现在,文件就从版本库中被删除了。删除文件夹我们以删除python的venv文件夹为例:git rm -r --cached v...原创 2020-02-24 10:49:04 · 2940 阅读 · 2 评论 -
pipreqs:生成python项目的requirements
项目开发的时候,总是要搭建和部署环境,这时,就需要一个python第三方包的list,一般叫做requirements.txt。如果项目使用virtualenv环境,直接使用pip freeze即可,但是如果项目的依赖没有维护,就会很麻烦,这时我们就需要一个叫pipreqs的工具,可以帮助我们自动生成requirements.txt文件。但是如果我们直接使用pip的下面命令生成对应的该文件$ pi...原创 2020-02-24 10:15:49 · 1105 阅读 · 0 评论 -
浏览器测试乱炖
这个测试考验浏览器的渲染网页和解析JS的速度,与网速无关,与FLASH等插件无关,只与操作系统,浏览器内核,CPU,内存带宽有关。CSS渲染速度、常规页面性能、Javascript解析速度、大页面加载速度及HTML页面加载速度。考察方面如下 资源占用: CPU、 Memory、 Disk原创 2012-01-04 13:41:35 · 1193 阅读 · 0 评论 -
selenium python 测试google脚本
from selenium import webdriverfrom selenium.common.exceptions import TimeoutExceptionfrom selenium.webdriver.support.ui import WebDriverWait # available since 2.4.0from selenium.webdriver.原创 2013-01-06 12:39:17 · 1188 阅读 · 0 评论 -
python selenium chrome notepad++ 搭建自动化测试平台
需要的工具:1、python 2.7 下载地址http://www.python.org/getit/2、setuptools-0.6c11.win32-py2.7 下载地址http://pypi.python.org/pypi/setuptools3、pip-1.2.1.tar.gz 下载地址 http://pypi.python.org/pypi/pip/1.2.1原创 2013-01-06 12:41:34 · 2510 阅读 · 0 评论 -
XPath语法
XPath 是XML的查询语言,和SQL的角色很类似。以下面XML为例,介绍XPath 的语法。 xml version="1.0" encoding="ISO-8859-1"?>catalog> cd country="USA"> title>Empire Burlesquetitle> artist>Bob Dylanartist> price转载 2013-01-06 12:49:41 · 679 阅读 · 0 评论 -
selenium python 访问cstc测试管理系统
#-*- coding: utf-8 -*-from selenium import webdriverfrom selenium.common.exceptions import TimeoutExceptionfrom selenium.webdriver.support.ui import WebDriverWaitfrom selenium.webdriver.suppor原创 2013-01-06 12:58:29 · 1010 阅读 · 0 评论 -
浏览器性能对比测试方法与评价模型研究
1、 引言浏览器是检查、传递和展现万维网上信息资源的一个软件[1],运行客户电脑上,用来显示WEB服务器或文件系统中的HTML文件。[2]信息资源有可能是网页、图片、视频等,但每一个信息资源都由一个URI(Uniform Resource Identifier)标示。[3]一个完整的浏览器由排版引擎和用户界面两部分构成,这两部分也称为浏览器的逻辑结构。[4]随着浏览器技术的不断成熟,几种成熟浏原创 2013-01-06 13:38:45 · 2883 阅读 · 0 评论 -
Web系统前端性能评价方法研究
1、引言随着网络的日益发展,B/S架构的不断完善,网站开发技术的日趋简便,使得建设一个Web系统越来越容易,生命周期越来越短。根据中国互联网信息中心(CNNIC)发布的《第27次中国互联网发展状况调查统计报告》显示截至2010年12月,中国的网站数(域名注册者在中国境内的网站数包含了境内接入和境外接入)已经达到的191万个。Web系统的页面数和单个页面的字节数等互联网资源数却又大幅度的增长。[原创 2013-01-06 13:46:10 · 2312 阅读 · 0 评论 -
selenium录制百度3D地图
这两天突发奇想,用selenium操作百度的3d地图,发现百度用了很诡异的技术,初次载入百度的3d地图的时候,是一张整张图片,等到对地图有任何操作的时候(鼠标移入地图区域或者移动了地图)才会对地图进行坐标的标注。开始怎么样都不可能操作地图里面的建筑,后来通过先向右移动一下地图,让其产生坐标,然后再选取其中的坐标。用selenium IDE的脚本如下。具体不多说了详见脚本。原创 2011-06-17 09:30:00 · 1446 阅读 · 0 评论 -
Selenium Grid How it Works
To understand Selenium Grid you first need to understand how the standard Selenium web testing tool works.Traditional Selenium SetupTo understand Selenium Grid you first need to understand how转载 2013-01-06 12:40:43 · 951 阅读 · 0 评论 -
基于开源工具的测试平台搭建
1、 简介随着web系统的越来越复杂,规模越来越庞大,使得软件测试在软件质量保证环节变得越来越重要。近些年来,商业化的软件测试工具越来越多,使用越来越繁琐,价钱越来越昂贵,这无疑对中小型公司的web产品的质量保证的成本越来越高。笔者通过研究众多的windows平台的开源测试工具,比对这些工具的优越性和差异性,最后设计了包含自动功能测试、前端性能评价、性能测试、故障诊断以及测试管理系统在内的一原创 2013-01-06 12:56:08 · 4714 阅读 · 0 评论 -
浏览器表标准符合性测试实践
1.现状分析 目前,浏览器市场60%以上的份额仍然被国外浏览器占据,随着国家相关部委对国产软件发展的大力支持,以及国内浏览器核心技术的日益发展,这种情况将逐渐好转。本文基于某“核高基”重大专项课题中对浏览器的测试要求,介绍了浏览器性能测试的测试指标和评测方法,期望通过测试促进国产浏览器的性能优化,提高其整体质量,获得市场主动权。2.测试依据 本文基于某核高基重大专项课题原创 2013-01-11 10:42:55 · 1305 阅读 · 0 评论 -
Android性能测试工具Emmagee介绍
Emmagee介绍Emmagee是监控指定被测应用在使用过程中占用机器的CPU、内存、流量资源的性能测试小工具。开源地址:https://github.com/NetEase/Emmagee支持SDK:Android2.2以及以上版本为什么开发Emmagee?1、现有免费的android性能测试工具并不能满足我们的需求 当前android市场上也有很多免费的工具转载 2013-03-22 11:43:11 · 3027 阅读 · 2 评论 -
Selenium实战——.Net下的自动化测试搭建
更新:响应各位朋友的需求,现在将代码推到了GitHub服务器上,今后也将会在此基础上更新,然后再次感谢各位的支持~~~~地址如下:https://github.com/zhaoyan42/SeleniumInAction.git这篇文章,其实我酝酿了好一阵子。作为一个开发人员,搞这个事情总归有点狗拿耗子的感觉。各位看官手下留情,西红柿和鸡蛋留着回去炒个菜别朝我来。博客我不常写,转载 2013-03-22 12:37:48 · 1494 阅读 · 1 评论 -
lr参数化——500户并发迭代1次 循环取5条数据
lr参数化——500户并发迭代1次 循环取5条数据比如vuser1、vuser2、vuser3..........,vuser500shuju1,shuju2,shuju3,shuju4,shuju5想实现vuser1取shuju1,vuser2取shuju1,vuser3取shuju1,vuser4取shuju1,vuser5取shuju1..........vuser100取shu转载 2013-05-29 13:00:53 · 1098 阅读 · 0 评论 -
AIX或UNIX下安装loadrunner的load generator负载生成器组件
1、在HP网站上下载load generator安装文件,解压后,拿出对应操作系统的安装程序包(以IBM AIX为例,应该使用IBM文件夹下的程序),将IBM文件夹上传至服务器某路径,如/tmp。2、在unix服务器上建立用户loadgen,创建路径/Load_Gen,使loadgen用户对/Load_Gen路径下的所有文件及文件夹具有读、写、执行权限。3、在图形界面中打开一个终端转载 2013-05-29 13:20:43 · 1486 阅读 · 0 评论 -
Load generator连接失败的解决办法!
环境:1.loadrunner control 一台物理机(win2008r2) 2.loadrunner agent 两台物理机(win2008r2)问题:loadrunner control 连接agent的时候 (win2008r2) 提示"Failed to connect to the load generator.Check the outpu转载 2013-05-29 13:29:39 · 3909 阅读 · 1 评论 -
win7下LoadRunner监控windows资源图报错
Monitor name :Windows Resources. Cannot connect to machineReason拒绝访问 1、 开启Remote Procedure Call(RPC)、Remote Procedure Call(RPC) Locator、Remote Registry、WMI Performance、Workstation服务转载 2013-05-29 13:35:44 · 1186 阅读 · 0 评论 -
基于安全协议的https的页面测试脚本
基于安全协议的https的页面测试脚本-本文出自天天软件测试社区(http://www.365testing.com/BBS/),原文地址:http://www.365testing.com/BBS/thread-20888-1-1.html 基于安全协议的https的页面测试脚本HTTPS(Secure Hypertext Transfer Protoc转载 2013-05-29 13:39:34 · 1535 阅读 · 0 评论 -
LoadRunner中对图的分析说明
(一)在Vusers(虚拟用户状态)中1.Running Vusers(负载过程中的虚拟用户运行情况)说明——系统形成负载的过程,随着时间的推移,虚拟用户数量是如何变化的,描述为(用户在几分钟左右到达了组在峰值多少个虚拟用户,负载的生成是大约每分钟增加几个用户,峰值负载持续为几分几秒)。2.Rendezvous(负载过程中集合点下的虚拟用户数)说明——随着时间的推移各个时间转载 2013-05-29 16:14:05 · 973 阅读 · 0 评论 -
LoadRunner负载测试报错(-26628/-27791)【转】
-26628在Vuser脚本编译执行无误情况下,在controller中进行并发操作,并发数设为10,只通过5个,失败的报错信息是: Action.c(15): Error -26628: HTTP Status-Code=403 (Access Forbidden) for "http://10.120.20.59/tjpm/"解决方案如下:分析原因可能是因为被测WEB服务器转载 2013-05-29 11:26:56 · 3915 阅读 · 0 评论