robotframework 是自动化测试框架. Robot Framework是一款python编写的功能自动化测试框架.具备良好的可扩展性,支持关键字驱动,可以同时测试多种类型的客户端或者接口,可以进行分布式测试执行.主要用于轮次很多的验收测试和验收测试驱动开发(ATDD). 上面一段话是百度百科的简介,最开始是诺基亚团队(没听错)开发并提供支持.为什么是框架呢,因为他功能强大,可以自定义关键字拓展功能.基于python开发,只要会一点Python就可以把robotframework玩的很溜…
环境搭建是测试人员基础,本质都是不难的,按照流程和步骤一步步做,遇到问题不要担心,解决的问题越多,你理解的也就越多. 1. 安装python环境,python现在有python2 和python3.由于 robotframe work 开发时间较早,我们只能选择python2. (写这篇文时候,最新的是2.7.11) 安装过程很简单,记得安装时勾上 add path,或者装完后 手动设置python的环境变量,效果也是一样. 目前最新的python都自己安装了pip,pip类似linux里面的…
对于RobotFramework自动化测试框架,我这里会从三个单元进行阐述,希望能对你有帮助. RobotFramework简介 RobotFramework是什么? Robotframework 是由python编写的,一个开源的基于关键词驱动的自动化测试框架,它可以做基于UI或者接口的验收测试,有着非常简单易用的语法.它的一大特点就是可以使用java&python去扩展自定义一些测试库以及基于一些已有的关键词自定义一些高级关键词,这就意味着如果官方以及第三方提供的一些测试库没法满足项目的测试…
消失了3个月,有一段时间没来园子更新博客了,各位看官见谅哈哈,消失是因为刚换了工作环境没外网,好多笔记没能及时的记录分享,以后有时间慢慢补上吧,这段时间主要接触了移动端app的自动化测试,公司为了快速把移动端自动化这块搞起来,试用几款目前流行的工具,腾讯的xtest定制版.神州数码的自动化测试平台.开源rf+appium框架. 经过一段试用最终还是选择了rf+appium主要原因有: 1.开源,网上社区活跃 2.扩展性强,针对不同项目不同的需求,封装不同的方法来实现 3.基于python语言,语…
angularjs自动化测试系列之jasmine jasmine参考 html <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Jasmine Spec Runner v2.4.1</title> <link rel="shortcut icon" type="imag…
angularjs自动化测试系列之karma karma test with jasmine 更好的利用工具是为了让生活更美好. 需要安装的东西: npm install karma -g mkdir karma-test cd karma-test npm init npm install -g jasmine --save-dev npm install -g jasmine-core --save-dev npm install -g karma-jasmine --save-dev ka…
booklet jquery插件系列之简介 本文由五月雨恋提供,转载请注明出处. 一.安装 1.添加CSS和Javascript 添加booklet CSS文件到你的页面. <link rel="stylesheet" href="plugin/booklet/jquery.booklet.latest.css" media="screen,projection,tv"> 然后依次添加jQuery库,jQuery UI(可选)jQue…
在使用AppiumLibrary库时,需要预先安装好Appium自动化工具,Appium官网地址为:http://appium.io/ Appium的GitHub地址为:https://github.com/appium Appium的下载地址:http://appium.io/downloads.html,可以下载最新的安装版本和响应的Library库 Appium的相关介绍文档:http://appium.io/slate/cn/master/ Appium的RobotFramework-a…
robotframework自动化系列:随机下拉框 随着项目自动化不断推进,在下拉框定位的时候出现些问题,每次下拉框选择都是相同的下拉选项,如果想每次选择的选项不一样,该如何实现呢,查找了很多资料,没有找到一个好的解决方法.... 最后看到一篇文章,想到可以用随机数尝试一下 参考 http://lebook.me/book/126586#fid_24191914 项目中的下拉框源码如图 <select class="form-control m-b" name="org…
现在工作是做自动化测试平台维护的,平台用的C#做的,主要是用来测试CMBRun项目,它是c/s结构的项目,而b/s结构的项目主要使用RF+Python来做.做这块之前听过自动化测试,身边的朋友也有做这的,但对这些依然陌生,真是隔行如隔山.现在也比较荣幸有机会接触到,有机会去学下,所以想着得赶紧学会,多学一点是一点.这周专门把我们老大的书由虫师写的<<RobotFramework自动化测试修炼宝典>>带了回来,抓紧时间学习下.这篇主要是学习RobotFramework框架得搭建,里面…
在自动化过程中,我们经常需要连接不同的数据库,并且对数据库进行很多不同的操作,RobotFramework中,提供了DatabaseLibrary这个库来操作数据库,我们可以按照官网中的说明来安装DatabaseLibrary库,在浏览器中访问http://franz-see.github.io/Robotframework-Database-Library/ 页面,即可以看到该库的相关安装说明和API介绍. 在使用DatabaseLibrary库时,需要在测试套件中,预先导入该库,才可以在用例…
RxJava系列1(简介) RxJava系列2(基本概念及使用介绍) RxJava系列3(转换操作符) RxJava系列4(过滤操作符) RxJava系列5(组合操作符) RxJava系列6(从微观角度解读RxJava源码) RxJava系列7(最佳实践) 前言 提升开发效率,降低维护成本一直是开发团队永恒不变的宗旨.近一年来国内的技术圈子中越来越多的开始提及Rx,经过一段时间的学习和探索之后我也深深的感受到了RxJava的魅力.它能帮助我们简化代码逻辑,提升代码可读性.这对于开发效率的提升.后…
使用Python构建Lib工程 可以用来开发Python Lib的IDE工具有很多,常见的有Pycharm,Eclipse with PyDev插件等,而且在RobotFramework官网中也已经提供了RobotFramework-EclipseIDE插件,可以支持Eclipse,插件的访问地址为https://github.com/NitorCreations/RobotFramework-EclipseIDE,可以通过该地址下载插件. 在这里我们以Eclipse with PyDev插件的…
前面博客<<UNIX环境高级编程--epoll函数使用详解>>有关于epoll函数的讲解. 一.epoll 系列函数简介 #include <sys/epoll.h> int epoll_create(int size); int epoll_create1(int flags); int epoll_ctl(int epfd, int op, int fd, struct epoll_event *event); int epoll_wait(int epfd, st…
OpenStack实践系列①openstack简介及基础环境部署 一.OpenStack初探1.1 OpenStack简介 OpenStack是一整套开源软件项目的综合,它允许企业或服务提供者建立.运行自己的云计算和存储设施.Rackspace与NASA是最初重要的两个贡献者,前者提供了“云文件”平台代码,该平台增强了OpenStack对象存储部分的功能,而后者带来了“Nebula”平台形成了OpenStack其余的部分.而今,OpenStack基金会已经有150多个会员,包括很多知名公司如“C…
一.epoll 系列函数简介 #include <sys/epoll.h> int epoll_create(int size); int epoll_create1(int flags); int epoll_ctl(int epfd, int op, int fd, struct epoll_event *event); int epoll_wait(int epfd, struct epoll_event *events, int maxevents, int timeout); *  …
nginx系列友情链接:nginx高性能WEB服务器系列之一简介及安装https://www.cnblogs.com/maxtgood/p/9597596.htmlnginx高性能WEB服务器系列之二命令管理https://www.cnblogs.com/maxtgood/p/9597990.htmlnginx高性能WEB服务器系列之三版本升级https://www.cnblogs.com/maxtgood/p/9598113.htmlnginx高性能WEB服务器系列之四配置文件详解https:…
笔者接着 RobotFramework自动化测试框架-DatabaseLibrary库的使用(对数据库的操作) 继续分享robotframework 对数据库中的MongoDB的详细操作. MongoDB是非常常用的一个非关系型数据库,在RobotFramework中,也提供了对MongoDB数据库测试操作的支持.我们可以通过在浏览器中访问github的网站地址 https://github.com/iPlantCollaborativeOpenSource/Robotframework-Mon…
好久没有继续分享关于自动化测试相关的东西了,自动化在现今的测试领域已经越来越重要了,大部分公司在测试岗位招聘中都需要会相关的自动化测试知识.而 RobotFramework自动化测试框架 是自动化测试中 用的最多一个框架,基于Python编程语言设计的可扩展的关键字驱动模式的测试自动化框架,具备良好的可扩展性,可以通过xml-rpc服务扩展支持其它的常用编程语言,可以同时测试多种类型的客户端或者接口,可以支持进行分布式测试执行. Robot Framework具体如何的特点: 易于使用,采用表格…
本文紧接着RobotFramework自动化测试框架-Selenium Web自动化(二)关于在RobotFramework中如何使用Selenium很全的总结(上)继续分享RobotFramework中如何使用Selenium进行自动化测试. 本文章节目录: 1.Get Value 2.Get Webelements和Get Webelement 3.Get Window Titles 4.Go Back 和 Go To 5.Get List Items 6.Get Selected List…
本文技术难度★★★,如果前编内容顺利执行,请继续. 如果Selenium尚无法灵活运用的读者,本文可能难度较大. “理论联系实惠,密切联系领导,表扬和自我表扬”——我就是老司机,曾经写文章教各位怎么打拼职场的老司机. 不记得没关系,只需要知道:有这么一位IT老司机, 穿上西装,带大家打拼职场! 操起键盘,带大家打磨技术! 上一篇IT老司机带着各位已经成功安装了Cypress,并且让Cypress成功运行起来了.上篇任意门☛Cypress自动化测试系列之二 本篇,IT老司机教你写第一个Cypres…
在上次的自动化测试系列(一)中为大家大体介绍了自动化测试的概念,本文主要针对API测试的概念及API测试在猪齿鱼Choerodon中的实践展开. API(应用程序编程接口)测试是一种软件测试,可以直接在API级别执行验证.它是集成测试的一部分,它确定API是否满足测试人员对功能,可靠性,性能和安全性的期望.与UI测试不同,API测试是在没有GUI的消息层执行的. 什么是API测试 接口(API)是各种系统功能的基础,一旦接口出现问题可能会引起许多系统功能的问题并且不容易定位.而接口测试则帮助节省…
UI 测试是一种测试类型,也称为用户界面测试,通过该测试,我们检查应用程序的界面是否工作正常或是否存在任何妨碍用户行为且不符合书面规格的 BUG.了解用户将如何在用户和网站之间进行交互以执行 UI 测试至关重要,通过执行 UI 测试,测试人员将尝试模仿用户的行为,以查看用户将如何与程序进行交互,并查看网站的运行情况是否如预期的那样,是否有缺陷. 在上次的自动化测试系列(二)中为大家大体介绍了API测试的概念及在猪齿鱼中的实践展开,本文主要围绕UI测试进行概念介绍及Choerodon中的实践展开.…
一般RobotFramework都是安装在Windows/Linux的PC机上,这里将简单介绍在树莓派硬件平台上配置RobotFramework的开发和运行环境. 树莓派上配置了自动化测试软件,可以考虑用多个这个廉价的“计算机”,开展并行的测试用例执行.成倍提高效率. 这只是一个应用的举例,相信你能找到更多的应用场景,欢迎交流探讨. 1.Install Python 树莓派的标准系统已经安装有Python2.7和Python3.此步骤跳过. 2.Install wxPython 由于RobotF…
刚接手项目的时候,要求所有流程在上线之前必须确保正向操作是正确的:这个时候又有新的模块需要测试,所以引入自动化测试是非常有必要的!通过对比,尝试使用RF进行自动化的回归测试. 测试中最常见的操作就是增删改查,所以对于自动化最简单的就是数据模块的增删改查人手进行操作. 这里先看一下web测试中的新增用例的测试点,如图所示 对于一个新增操作,我们这里以账号新增为例进行操作展示,账号新增页面元素显示如图所示 先说明一下,各个元素的定位方法: 输入用户名 [Arguments] ${username}…
    最近接手商城的项目,针对后台测试,功能比较简单,但是流程比较繁多,涉及到前后台的交叉测试.在对整个项目进行第一轮测试完成之后,考虑以后回归测试任务比较重,为了减轻回归测试的工作量,所以考虑后台可以进行部分自动化测试.     之前一个项目使用robotframework进行回归测试,了解了python语言,所以这次就使用python+selenium进行自动化回归测试了. 配置环境 python2.7 运行工具pycharm2017 流程说明 登录操作步骤说明 打开登录url,如http…
Selenium出来已经有很多年了,从最初的Selenium1到后来的Selenium2,也变得越来越成熟,而且也已经被很多公司广泛使用.Selenium发展的过程中,分了很多模块,这里我们主要介绍Webdriver,Webdriver已经被很多浏览器所兼容.WebDriver在自动化脚本和浏览器之间充当的角色和之前介绍的Appium很像. 由于现在很多的浏览器都已经主动支持和兼容了WebDriver,所以Webdriver在启动后,会确认浏览器的native component是否存在可用而且…
一.简介 Unity的目标是为了提升"依赖注入"的思想,去建立更加松耦合的系统.patterns & practices 小组在那个时候实现DI的方式和我们现在认为的DI有所不同,DI不是单一的可重复使用的容器,而是应该专门用于正在使用它的系统. 我们使用一个叫做ObjectBuilder的类库(一个用于创建DI容器的框架),所以,理论上我们可以为我们的每一个项目创建一个容器,这正是我们想要做的.理想很美好,但是它工作的并不是很好,ObjectBuilder是一个高度解耦.抽象…
Selenium 简介 Selenium 是一款开源的web自动化测试工具,用来模拟对浏览器的操作(主要是对页面元素的操作),简单来讲,其实就是一个jar包.Selenium早期的版本比如1.0市场占有率很小,主要原因都是因为1.0采用的是js注入的方式,带来得问题比如跨域的问题,安全性的问题.2.0版本已经解决这个问题,主要采用浏览器的原生组件来操作浏览器,所以针对不同的浏览器需要相应的 native component 把WebDriver 的API 转化成浏览器的 native invok…
本系列内容,准备根据所完成的项目为基线,一步一步的把整个设计和实现过程梳理. 先从基本的一些环境问题入手,梳理清楚关于手机设备和Appnium.因为我们在后面的建立Appnium连接时,需要设备名字和启动的Appnium实例和对应的端口号. 一.获取手机设备 获取本机连接的设备,我们可以通过adb命令通过控制台来实现,在控制台中输入命令adb devices可得如下结果: 既然能 够如此简单的获取到连接的设备,接下来也就是对控制台文字进行处理分析,最后把需要内容获取出来展示在下拉框里即可. 对于…