基于RobotFramework实现自动化测试
Java + robotframework + seleniumlibrary
- 使用Robot Framework Maven Plugin(http://robotframework.org/MavenPlugin/)执行自动化测试
- chromedriver下载: http://chromedriver.storage.googleapis.com/index.html
- chromedriver和chrome版本对应关系:https://sites.google.com/a/chromium.org/chromedriver/downloads
- chromedriver直接放到chrome所在目录
- 插件执行,需要指定chromedriver位置
robotframework:run "-Dwebdriver.chrome.driver=C:\Program Files (x86)\Google\Chrome\Application/chromedriver.exe"
- 参考完成例子:robotframework
Python + robotframework + appiumlibrary + Appium
1、安装python3.3+
2、安装robotframework
- pip install -i https://pypi.tuna.tsinghua.edu.cn/simple robotframework
3、app测试,安装robotframework-appiumlibrary
- pip install -i https://pypi.tuna.tsinghua.edu.cn/simple robotframework-appiumlibrary
4、测试用例操作图形界面,安装robotframework-ride
- pip install -i https://pypi.tuna.tsinghua.edu.cn/simple robotframework-ride
- 可创建快捷方式:ride.py
- 4.1 File-New Project,选择类型Directory type, 选择Format ROBOT
- 4.2 测试项目-New Suite,输入Name,选择类型File type,选择Format txt
- 4.3 测试套件-New Test Case,输入Name
- 4.4 导入测试库AppiumLibrary
- 4.5 编写测试用例
- 参考:https://www.cnblogs.com/tester-l/p/7994480.html
5、web测试,安装robotframework-selenium2library
- pip install -i https://pypi.tuna.tsinghua.edu.cn/simple robotframework-selenium2library
6、安装Android SDK,Appium
- https://www.cnblogs.com/feng0815/p/8179714.html
- 6.1 安装Android SDK,需要在模拟器上运行apk文件 (http://tools.android-studio.org/index.php/sdk/)
- 6.2 安装nodejs 官网(https://nodejs.org/en/download/)
- 6.3 安装Appium Desktop(http://pan.baidu.com/s/1jGvAISu)
- File -> New Session Window 创建Appium客户端,方便元素定位
{
"platformName": "Android",
"platformVersion": "4.4.2",
"deviceName": "127.0.0.1:62025",
"appPackage": "zz.dela.cmcc.traffic",
"appActivity": "zz.dela.cmcc.traffic.features.splash.view.SplashActivity",
"noReset": true
}
7、安装夜神模拟器
- 启动模拟器
- adb devices 如果没有发现设备信息,将SDK目录下的adb.exe文件,复制到夜神模拟器的目录下,复制过去之后改名为nox_adb.exe,然后重启
- 夜神模拟器设备信息为ip:port
- 参考:https://jingyan.baidu.com/article/1e5468f9bb6ab9484961b707.html
8、获取apk信息
- 进入sdk\build-tools\版本号 的目录下,cmd命令:
- ./aapt dump badging xxx.apk
- 可以看到:package: name='zz.dela.cmcc.traffic'
- launchable-activity: name='zz.dela.cmcc.traffic.features.splash.view.SplashActivity'
9、RIDE基本配置
*** Test Cases 打开app应用***
Case1
Open Application http://127.0.0.1:4723/wd/hub platformName=Android platformVersion=4.4.2 deviceName=127.0.0.1:62025 appPackage=zz.dela.cmcc.traffic appActivity=zz.dela.cmcc.traffic.features.splash.view.SplashActivity noReset=true
10、操作流程
- 打开夜神多开器,创建模拟器,android版本为4,然后启动模拟器
- 安装10086app
- 打开Appium,默认配置即可,直接启动(启动的是Appium服务端)
- 创建Appium客户端,填写模拟器设备名称(通过adb devices命令查看),apk包信息等,然后启动客户端
- Appium客户端可以帮忙定位app页面上的元素信息
- 开启RIDE,编写测试脚本
- 在RIDE执行Test Case,会生生测试报告
基于RobotFramework实现自动化测试的更多相关文章
- robotium从入门到放弃 三 基于apk的自动化测试
1.apk重签名 在做基于APK的自动化测试的过程中,需要确保的一点是,被测试的APK必须跟测试项目具有相同的签名,那怎么做才能确保两者拥有相同的签名呢?下面将给出具体的实现方法. 首先将被测 ...
- Jenkins持续集成项目搭建与实践——基于Python Selenium自动化测试(自由风格)
Jenkins简介 Jenkins是Java编写的非常流行的持续集成(CI)服务,起源于Hudson项目.所以Jenkins和Hudson功能相似. Jenkins支持各种版本的控制工具,如CVS.S ...
- 使用 Selenium 实现基于 Web 的自动化测试
(转自http://www.ibm.com/developerworks/cn/web/1209_caimin_seleniumweb/index.html) Selenium 是一个用于 Web 应 ...
- 基于坐标的自动化测试神器---Total Control快速入门
1.Total Control简单介绍 一款能够在PC上控制手机的软件,同时可以使用PC 触摸屏.鼠标.键盘, 全面操控 Android 手机,只需通过 USB 或 WiFi 连接手机至电脑,即可随时 ...
- 基于MBT的自动化测试工具——GraphWalker介绍和实际使用
GraphWalker是一个开源的基于模型的自动化测试工具,它可以用来通过图形测试模型来自动生成测试用例. 本文主要描述了使用yed画出FSM, EFSM模型图(常见的流程图),然后使用GraphWa ...
- 基于Python接口自动化测试框架+数据与代码分离(进阶篇)附源码
引言 在上一篇<基于Python接口自动化测试框架(初级篇)附源码>讲过了接口自动化测试框架的搭建,最核心的模块功能就是测试数据库初始化,再来看看之前的框架结构: 可以看出testcase ...
- RobotFrameWork Web自动化测试环境搭建
前言 Robot Framework是一款python编写的功能自动化测试框架.具备良好的可扩展性,支持关键字驱动,可以同时测试多种类型的客户端或者接口,可以进行分布式测试执行.主要用于轮次很多的验收 ...
- Nightmare基于phantomjs的自动化测试套件
今天将介绍一款自动化测试套件名叫nightmare,他是一个基于phantomjs的测试框架,一个基于phantomjs之上为测试应用封装的一套high level API.其API以goto, re ...
- robotframework+seleniumlibrary自动化测试:测试环境搭建
robotframework是由python编写的自动化测试框架,使用robotframework需要安装 python库 python 和 robotframework 的下载地址都可百度到 环境搭 ...
随机推荐
- [WPF自定义控件库]好用的VisualTreeExtensions
1. 前言 A long time ago in a galaxy far, far away....微软在Silverlight Toolkit里提供了一个好用的VisualTreeExtensio ...
- iOS 矢量图pdf替换2倍3倍图
一.在开发中矢量图的使用大大提高设计的切图效率! ios 中可以用pdf替换现在的2倍3倍图(1倍图已经忽略) 1.将pdf矢量图拖进工程Assets.xcassets中 2.按照步骤操作 3.矢量图 ...
- 微信小程序社区爬取
# CrawlSpider 需要使用:规则提取器 和 解析器 # 1. allow设置规则的方法:要能够限制在目标url上面, 不要跟其他的url产生相同的正则即可 # 2. 什么情况下使用follo ...
- 2019.6.21 NOIP2018提高组模拟题(二)
1.咒语 (curse.pas/c/cpp) [题目描述] 亮亮梦到自己来到了魔法城堡,但一扇巨大的石门阻拦了他通向城堡内的路.正当他沮丧之际,突然发现门上有一处机关,机关上有一张很长的纸条.亮亮拿起 ...
- ~~Python文件简单操作~~
进击のpython Python文件操作 在说Python的文件操作之前 我们可以先思考一个问题 平时我们是怎么对电脑中的文件进行操作的呢? 打开电脑⇨找到文件⇨打开文件⇨读文件⇨修改文件⇨保存文件⇨ ...
- 20190101.DDD笔记
建立领域模型步骤 根据提供的信息完善主要业务场景和业务流程: 根据业务流程识别领域事件并按照时序排列: 针对领域事件进行命令识别: 针对领域事件和命令进行聚合和子域的初步识别: 在识别的subdoma ...
- who are you?
不多说,直接使用脚本跑 # -*- coding:utf-8 -*- import requests import string url = "http://ctf5.shiyanbar.c ...
- Ubuntu系统安装QQ等软件
1.安装deepin-wine环境:上https://github.com/wszqkzqk/deepin-wine-for-ubuntu页面下载zip包(或用git方式克隆),解压到本地文件夹,在文 ...
- 个人永久性免费-Excel催化剂功能第30波-工作表快捷操作(批量创建、命名、排序、工作表目录)
日常使用Excel过程中,最多的操作无外乎单元格和工作表的操作,单元格的操作在前面已经有详细的辅助功能提供,此篇提供工作表相关的操作.这两项的操作若能有提速,日常大量的工作叠加起来真是省下不少时间. ...
- [POJ 2888]Magic Bracelet[Polya Burnside 置换 矩阵]
也许更好的阅读体验 \(\mathcal{Description}\) 大意:给一条长度为\(n\)的项链,有\(m\)种颜色,另有\(k\)条限制,每条限制为不允许\(x,y\)颜色连在一起.要求有 ...