自动化测试框架

接口自动化测试框架:jmeter + ant + jenkins(一)

冷暖自知 提交于 2019-12-03 14:15:18
  为了提高回归效率及保证版本质量,很多公司都在做自动化测试,特别是接口自动化。接口自动化测试框架很多,有写代码的,也有不写代码的,我觉得没有谁比谁好 , 只要适用就好。   今天给大家分享一个不写代码的接口自动化测试框架: jmeter + ant + jenkins,原理:jenkins驱动ant执行,ant驱动jmeter执行,这个框架在一些公司应用得还不错哦。虽然不需要写代码,但是jmeter接口脚本必须熟练 , 请 参考: https://www.cnblogs.com/tianyu2018/p/11704604.html   这里为了演示方便,就用 windows环境,linux版:jmeter + ant + jenkins,请参考: https://www.cnblogs.com/uncleyong/p/10766480.html Jmeter:可以做接口测试,也能做压力测试,而且是开源软件; Ant: 是基于 Java的构建工具,完成脚本执行并收集结果生成报告,可以跨平台,Jenkins:是持续集成工具 这样 将这三者结合起来可以搭建一套 Web HTTP接口测试的持续构建环境,实现接口自动化测试, 框架思路: 1、Ant通过XML文件进行构建,所有的构建信息配置在build.xml文件中,通过调用target树来执行各种任务;如执行测试脚本(jmx文件)

Selenium 2自动化测试实战35(HTML测试报告)

守給你的承諾、 提交于 2019-12-03 11:20:42
HTML测试报告 显然,一份漂亮的测试报告展示自动化测试成果只有一个简单的log文件是不够的。 HTMLTestRunner是python标准库unittest单元测试框架的一个扩展,它生成易于使用的HTML测试报告。 下载地址: http://tungwaiyip.info/software/HTMLTestRunner.html 下载HTMLTestRunner.py文件,选中后右键另存为,保存到本地,然后将其放在python安装目录下的Lib目录下。即:Windows保存到…\pytohn27\Lib目录下。 在python交互模式下引入HTMLTestRunner模块,如果系统没有报错,则说明添加成功,如下图所示 2.修改HTMLTestRunner 因为HTMLTestRunner.py是基于python2开发的,为了使其支持python3的环境,需要对其中的部分内容进行修改,如下图所示。 #第94行 #第540行 #第633行 #第646行 #第771行 #第778行 3.生成HTML测试报告 下面继续以test_baidu.py文件为例生成HTMLTestRunner测试报告。 (注意:由于当前本人使用的是python2.7,所以不能修改HTMLTestRunner.py文件) #test_baidu.py #coding:utf-8 from selenium

Selenium 2自动化测试实战30(unittest补充)

瘦欲@ 提交于 2019-12-03 04:42:30
unittest补充 1.用例执行的顺序 #test.py #coding:utf-8 from Demo1 import Count import unittest class TestBdd(unittest.TestCase): def setUp(self): print "test TestBdd:" def test_ccc(self): print "test ccc" def test_aaa(self): print "test aaa" def tearDown(self): pass class TestAdd(unittest.TestCase): def setUp(self): print "test TestAdd:" def test_add(self): print "test bbb" def tearDown(self): pass if __name__=="__main__": unittest.main()  运行后的结果如下图所示: 无论执行多少次,结果都是一样的,通过上面的结果,规律如下: unittest框架默认根据ASCII码的顺序加载测试用例,数字与字母的顺序为:0~9,A~Z,a-z。所以,TestAdd类会优先于TestBdd类被执行,test_aaa()方法会优先于test_ccc()被执行

Selenium 2自动化测试实战29(组织单元测试用例和discover更多测试用例)

房东的猫 提交于 2019-12-03 04:41:51
一、组织单元测试用例 看看unittest单元测试框架是如何扩展和组织新增的测试用例 以之前的calculator.py文件为例,为其扩展sub()方法,用来计算两个数相减的结果。 #coding:utf-8 #计算器类 class Count(): def __init__(self,a,b): self.a=int(a) self.b=int(b) #计算加法 def sum(self): return self.a+self.b #计算减法 def sub(self): return self.a-self.b 因为对计算器类又新增了 减法功能(sub) ,所以需要针对新功能编写测试用例,扩展后的test.py如下 #coding:utf-8 from Demo1 import Count import unittest class TestSum(unittest.TestCase): def setUp(self): a = input("please input the date:") self.a = int(a) b = input("please input the other date:") self.b = int(b) def testSum(self): self.assertEqual((Count(self.a,self.b).sum()),5,msg

7天玩转性能&接口测试

混江龙づ霸主 提交于 2019-12-03 02:46:22
众所周知,近10年IT领域有两个关键的风向转变,传统IT向云计算转变,传统瀑布和迭代开发模式向敏捷开发模式转变。这两个转变促成了DevOps产品交付模式的出现。互联网行业竞争激烈,许多公司专注于产品和商业模式的快速迭代创新,期望通过DevOps快速交付产品,缩短产品的上市周期。 华为DevOps模式下的软件测试体系的分享主要由 “测试对象的识别、测试组织与流程的演变、测试工具与技术的应用、测试管理和自动化测试”四个领域的关键内容组成。华为云近期推出了7天玩转性能&接口测试系列课程,添加小助手微信(devcloud9)即可免费参与学习。 一、测试对象的识别 软件测试首先需要关注测试对象,不同种类的测试对象的测试策略和测试技术会有显著区别。测试对象即有传统的Web服务、移动APP,也有新兴的微服务和IoT设备。 1. 移动APP Android和iOS手机客户端依然是互联网toC创业的首选产品模式。移动App可以分为Web App、混合App和本地App三种模式,2016年以React Native为代表的技术又带火了移动跨平台开发。跨平台开发可以帮助开发者复用大部分代码,但依然无法解决让开发者头疼的Android系统碎片化问题。移动兼容性测试仍然是针对Android机型碎片化的主要测试手段。 2. Web服务 B/S结构的Web服务依然是很典型的IT产品交付形式

自动化测试流程

匿名 (未验证) 提交于 2019-12-03 00:28:02
Ŀ¼ 一、编写测试用例 二、执行测试用例,查找最新测试用例,自动发送测试报告 三、定时执行测试用例 四、成果验收 环境准备: 操作系统:Windows7 集成开发环境:eclipse+pydev 一、编写测试用例 点击返回目录 和 使用unittest框架编写测试用例实例 。 二、执行测试用例,查找最新测试用例,自动发送测试报告 点击返回目录 HTMLTestRunner模块下载地址:http://tungwaiyip.info/software/HTMLTestRunner.html 将下载的文件保存在C:\Python27\Lib目录下即可。 Python自动发邮件总结及实例说明 注释中包括实现的过程说明以及一些在测试过程中遇到的问题。 # coding=utf-8 ”’ Created on 2016-7-26 @author: Jennifer Project:整合自动发邮件功能,执行测试用例生成最新测试报告,取最新的测试报告,发送最新测试报告 问题,邮件始终不能显示html:将电脑时间改为北京时间即可 ”’ import unittest from HTMLTestRunner import HTMLTestRunner import time import os import smtplib from email.mime.text import MIMEText

接口自动化测试框架:jmeter + ant + jenkins(三)

匿名 (未验证) 提交于 2019-12-03 00:17:01
接上一篇: 五 、jenkins配置发送邮件 Jenkins管理】进入插件安装管理页面 安装 HTML Publisher html报告的目录 Apply--Save 六、下面以163qq邮箱等其它邮箱) 登录163邮箱进行设置 Jenkins管理,选择 configure system : POP3服务器: pop.163.com SMTP服务器: smtp.163.com IMAP服务器: imap.163.com <br/><hr/> $PROJECT_NAME<br/><hr/> $BUILD_NUMBER<br/><hr/> $BUILD_STATUS<br/><hr/> ${CAUSE}<br/><hr/> <a href="${BUILD_URL}console">${BUILD_URL}console</a><br/><hr/> <a href="${BUILD_URL}">${BUILD_URL}</a><br/><hr/> ${JELLY_SCRIPT.template="html"}<br/><hr/> Jenkins项目中,点击左边的配置 qq邮箱 三、总结: jmeter + ant + jenkins(上、下)两篇文章 https://mp.weixin.qq.com/s/bDhJ4xBTC7X0ePdJUkOSDg https://mp.weixin

在国外,资深的软件测试人员大多是手动测试,他们厉害之处在于测试用例的设计,但在国内,很多测试人员都把自动化测试当成很厉害的资本,为什么?

时光毁灭记忆、已成空白 提交于 2019-12-01 23:29:42
导语 : ‘“国外,资深的软件测试人员大多是手动测试,他们厉害之处在于测试用例的设计,但在国内,很多测试人员都把自动化测试当成很厉害的资本,为什么?” ● ○ ● 背景 ● ○ ●    偶然在知乎上看到一篇关注度很高的话题,标题如上。 作为一名从业8年有余的软件测试工程师,并且一直在外企做测试的我, 忍不住想发表一些自己的看法和见解。 我觉得在国内,很多公司或者个人把自动化测试当成一个了不起的资本,根本是源于国内大家对代码的无上崇拜,这也造就了国内现在IT互联网行业内一个鄙视链: 开发---> 测试开发--->自动化测试--->纯手工测试 。所以,在这个鄙视链中,纯手工测试属于底端被碾压的生物。 实际上,我觉得这是一种严重的偏见,并且体现了其对测试行业认知的极其不专业。 ●自动化测试固然重要,但是测试思路才是重中之重 ● 首先,我们不能否认自动化测试的作用,他肯定是将来软件测试发展的一个大方向。 自动化测试将QA从繁重的重复劳动中解放出来,优化测试资源,提高测试效率,对产品质量保证起到积极的作用;另外,一个有自动化测试脚本、框架、工具开发能力的QA,更有竞争力也是一件毋庸置疑的事情。   但是,但凡做过测试工程师的朋友都知道,一些逻辑非常复杂的场景是很难用自动化脚本实现的,就算要强行实现,也性价比很低,因为太费时费力了。    

五、自动化测试框架(接口、ui)【转】

浪尽此生 提交于 2019-12-01 16:31:04
五、自动化测试框架(接口、ui) 接口自动化 接口自动化测试【第一篇】JMeter + Maven + Jenkins 接口自动化测试【第二篇A】JMeter + Ant + Jenkins(windows版) 接口自动化测试【第二篇B】JMeter + Ant + Jenkins(linux版) 接口自动化测试【第三篇】SpringBoot版mockserver开发及生成swagger接口文档 (testng10含cookie) 接口自动化测试【第四篇】Java版接口自动化测试框架开发(含httpclient使用) 接口自动化测试【第五篇】Flask版mockserver开发 接口自动化测试【第六篇】Python版接口自动化测试框架开发 (requests + unittest) 接口自动化测试【第七篇】Python版接口自动化测试框架开发(pytest) 接口自动化测试【第八篇】moco工具使用(各种json配置:form-data,json,上传,鉴权,cookie_token,以及flask、springboot开发类似功能) UI自动化测试框架(web、app) UI自动化测试【第一篇】Python版WEB UI自动化测试框架开发(selenium) UI自动化测试【第二篇】Python版APP UI自动化测试框架开发(appium) UI自动化测试【第三篇

讲一讲我理解的自动化测试

不问归期 提交于 2019-12-01 13:53:18
测试行业其实80%的岗位都是功能测试,现在整个IT行业的高薪,导致了很多的人进入到了这个行业,带来的影响就是本来就是招个功能测试,但是必须要会自动化、性能、安全测试,整个测试岗位的招聘要求也是越来越高了。 说到自动化,因为我所在的项目一直都是用的RF(robot framework)来做页面web的自动化和接口的自动化,web的因为页面变化太大没有做起来,接口自动化现在做的还算不错,有专职人员来做接口自动化。因为前期整个自动化框架是我参与设计编写的,所以还是有一些经验。作自动化最重要的就是要脚本可以很好的维护和扩展,脚本间的耦合性越小越好。 怎样算是好的自动化框架呢?1.数据分离,脚本里面尽量不要放数据,所有的数据都放到相应的数据文件下面 数据也可以分层,整个项目都用到的数据可以放到配置文件里面,方便修改;用例数据按模块分不同的文件来存放,方便查找修改 2.关键字分离,和数据分离一样,RF是基于关键字驱动的 将项目关键字和模块关键字分离开,分离到不同的文件,也是方便管理和修改 3.用例解耦,尽量将用例直接解耦,最好不要下一条用例和上一条用例还有关联,每条用例最好都是独立运行的,这样定位问题很好定位 4.产生的数据,要在用例里面清除,避免数据积累越来越多,自动化是经常要跑的,所以一定要回收数据。 下一篇继续写下RF接口自动化框架的设计。 来源: https://www.cnblogs