- 博客(45)
- 收藏
- 关注
原创 Ubuntu报错解决方法:DBUS_ERROR: Failed to connect to socket /run/dbus/system_bus_socket
2.启动守护进程dbus-daemon。
2023-10-28 18:44:17
3232
原创 使用appium进行自动化测试时,有的页面会有防刷功能解决方案
饿了么有个赚吃货豆任务,点击任务列表去完成按钮,跳转到相关页面停留15秒后,就算完成任务获取相应吃货豆。在使用appium运行进入浏览页面后,如果不进行操作,没有到15秒drever进程就会崩了。可能是页面做了防刷单处理,解决方案是在进入页面,模拟向上和向下滑动操作,由于有15秒,做了个循环操作,更真实些,如下代码,然后就可以正常完成任务了 for (int j = 0; j < 3; j++) { System.out.pr
2021-07-25 17:44:23
33
1
原创 安卓内嵌web可以识别,appium运行时无法识别元素解决方案
饿了么有个页面,第一次刷新时无法识别元素,如下图但是刷新了一下后,却可以正常识别出来元素,如下图定位了元素后,运行代码后,却无法识别操作元素,然后想着解决: 1.首先认为原因可能是页面加载太慢,使用等待后,仍没有用 2.然后想到可能是切换到web,使用了"driver.context()"方法切换,但是仍没有用,然后用"driver.getContextHandles()"获取上下文后,只有"NATIVE_APP" 3.最后想到使用a...
2021-07-25 17:27:44
66
1
原创 appium的环境搭建(MAC+Java+IDEA)
1.下载node.js、Xcode、Xcode Command Line Developer Tools、JDK、安卓SDK、appium、IDEA、appium的jar包、selenium的jar包和依赖包、IOS测试相关依赖(libimobiledevice、ios-deploy)2.安装node.js,直接一步步向下安装即可,安装完成后在终端中输入“node -vs”查看版本号与安装版本一致,说明成功,然后输入“npm -v”查看npm版本号与安装版本号一致,说明成功3.安装Xcode,直接在
2021-07-24 19:59:41
396
原创 Mac电脑下Java环境变量配置
1.下载安装MAC版JDK软件2.如果你是第一次配置环境变量,可以使用“touch .bash_profile” 创建一个.bash_profile的隐藏配置文件(如果你是为编辑已存在的配置文件,则使用"open -e .bash_profile"命令):3.在打开的文件中输入如下内容:JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_144.jdk/Contents/HomePATH=$JAVA_HOME/bin:$PATH:.
2021-07-23 13:49:18
1658
1
原创 robot Farmework 运行报错解决(1)
报错内容:[ ERROR ] Calling method 'start_keyword' of listener 'C:\Python27\lib\site-packages\robotide\contrib\testrunner\TestRunnerAgent.py' failed: UnicodeEncodeError: 'ascii' codec can't encode characte...
2019-06-15 12:33:12
2464
原创 stf安装过程遇到问题
最近在一台新的电脑上安装stf,使用命令 npm install -g stf进行安装,一直提示如下报错,各种解决,一直不行后来想着马云家也有镜像,就试了下,一下就安装好了1.先安装cnpm:sudo npm install -g cnpm --registry=https://registry.npm.taobao.org2.用cnpm命令执行安装stf:sudo cnpm install -g...
2018-04-08 16:02:33
1589
原创 stf安装及运行
STF只支持MAC和LIUNX,当然也是可以在WIN上使用的,不过体验很差,当然手机设备可以放在WIN电脑上连接一,安装STF的依赖比较多,如下:Node.js >= 0.12ADB properly set upRethinkDB >= 2.2GraphicsMagick (for resizing screenshots)ZeroMQ libraries installedProt...
2018-04-05 15:24:24
3712
1
原创 Mac系统Robot Framework环境搭建
一、由于Mac系统下自带python,所以不需要再进行安装了二、关闭mac电脑的sip, 1.重启 Mac并长按 Cmd + R 2.打开终端,执行csrutil disable命令 3.重启电脑三、打开终端,安装pip,使用pip在线Robot Framework环境 sudo easy_install pip四、终端执行pip install ...
2018-03-23 15:34:21
1225
原创 robotframework+appium进行app自动化,自动亮屏安卓手机方法
robotframework+appium进行app自动化时,为了做到定时可以执行用例,保证手机可以一直在亮屏状态,写了如下方法以资源方式导入项目,直接使用adb_screenOn()方法,不论屏幕是否亮屏,都可以正常执行用例# -*- coding:utf-8 -*-import osclass Adb(object): def __init__(self): ...
2018-03-02 18:54:54
2029
原创 robotframework运行中断后或重复运行后,ride不打印日志解决
robotframework运行中断后或重复运行后,ride中经常会出现控制台不显示日志信息,主要原因是因为编码不支持中文的原因Traceback (most recent call last): File "C:\Python27\lib\site-packages\robotide\contrib\testrunner\testrunnerplugin.py"
2018-03-02 18:25:47
2978
原创 RobotFramework在线安装好appiumlibrary包后,导入一直是显示红色解决方案
最近由于项目需要,需对app进行对老功能加入UI自动化回归测试,考虑推广及后期维护方便性,就采用robotframework+appiumlibrary的框架,今天安装好所有后,打开ride,建了一个项目,导入appiumlibrary后,颜色一直是红色以为是没有装好,然后就重新再装了一遍,再次导入,还是不行,很是无语呀,然后点击ride中的Tools的View RIDE Log打开日志报如下错误...
2017-12-01 17:33:09
7433
原创 Locust的API介绍-----ResponseContextManager类InterruptTaskSet Exception及Event hooks
ResponseContextManager类class ResponseContextManager(response)一个响应类,它也充当上下文管理器,提供手动控制HTTP请求如何被标记为成功或者在Locust统计信息中失败的能力这个类是一个Response具有两个附加方法的子类:success和 failure。failure(exc )报告响应失败。
2017-10-15 17:06:16
1330
原创 Locust的API介绍-----HttpSession类和Response类
HttpSession类class HttpSession(base_url, *args, **kwargs)用于执行Web请求并保持cookie的类(以便能够登录和退出网站)。记录每个请求,以便Locust显示统计信息。这是python-request的 requests.Session类的一个扩展的版本,工作原理也差不多相同。然而,发送请求(get,post,delete
2017-10-03 10:53:49
2796
原创 Locust的API介绍-----TaskSet类和task decorator
TaskSet类定义Locust用户将执行什么样的任务的类。当TaskSet开始运行时,它将从tasks属性中选择一个任务,执行它,调用它的wait函数,它将在min_wait和max_wait毫秒之间休眠一个随机数 。然后它将安排另一个执行任务等等。TaskSet可以嵌套,这意味着TaskSet的tasks属性可以包含另一个TaskSet。如果嵌套的TaskSet计划
2017-10-01 15:39:44
2307
原创 Locust的API介绍-----Locust类和HttpLocust类
Locust类类 Locust每生成一个实例都代表一个虚拟的用户,用来发送请求到进行负载测试的系统。该用户的行为由task_set属性定义,该属性应指向一个 TaskSet类。这个类通常应该由某些类继承并且重新定义。例如,当测试HTTP系统时,使用的HttpLocust类。max_wait = 1000执行locust任务之间的最长等待时间,单位是毫
2017-09-29 13:01:46
1470
原创 Locust测试结果信息生成CSV文件
Locust结果可以生成CSV文件,有两种方法可以实现。第一种,当使用Web UI运行Locust时,您可以在“Download Data”选项卡下点击下载对应的CSV文件。第二种,可以在启动Locust命令时,加入参数--csv=***,需要结合--no-web一起使用locust -f locustfile.py --csv=foobar --no-web
2017-09-28 15:30:28
1870
原创 Locust分布式进行性能测试
使用Locust进行性能测试时,当一台单机不足以模拟所需的用户数量的时候,可以在多台机器上分布式的执行性能测试。首先,需要在主机下启动一个Locust实例后跟上--master参数。locust -f locustfile.py --master因为主节点无法操作别的节点,所以必须在其它机器上启动从属Locust节点,后面跟上--slave参数,以及 --master-
2017-09-27 13:52:25
5558
原创 selenium中键盘模拟操作
对于键盘的模拟操作,也是使用Actions类,使用类中的 keyUp(Key)、keyDown(Key)、sendKeys(key) 等方法来实现。键盘的操作有普通键盘和修饰键盘两种 : 1. 普通键盘模拟对于普通键盘,使用 sendKeys(key) 就可以实现,比如数字键、tab、空格等。 Actions action = new Actions(driver); ac
2017-09-24 20:51:22
4889
原创 selenium中模拟鼠标操作
使用WebDriver进行自动化测试的时候,会遇到一些模拟鼠标操作的行为。例如使用鼠标单击、双击、右击、拖拽等。在WebDeriver中Actions 类可以实现这些操作。 1. 鼠标左键点击 Actions action = new Actions(driver);action.click(); //鼠标左键点击当前停留的位置 action.click(driver
2017-09-23 15:28:13
3248
原创 selenium中使用等待的三种方法
现在很多的web网站使用AJAX技术。当页面加载到浏览器,这个页面的很多元素显示出来的可能不一致。如果一个元素还未加载出来,在定位的时候,就会抛出异常:ElementNotVisibleException。这个时候就要使用等待方法解决。Webdriver可以使用三种类型的等待方法:线程休眠、隐式等待和显示等待。 1.线程休眠 Thread.sleep(); //线程休眠,Java的Thread...
2017-09-22 13:32:50
1910
原创 selenium对各种元素的操作
UI自动化就是一组对页面元素操作的集合,页面元素的不同,操作方法不相同,下面介绍下各页面元素在selenium中是如何操作的1.文本输入框文本框最主要的功能就是输入信息driver.findElement(By.id("kw")).sendKeys("selenium");有的输入框中原本有文字,这时候要删除文字,也有方法driver.findElement(By.id("kw
2017-09-17 10:01:46
605
原创 Ubuntu使用apt-get安装Apache2报错时的解决方案
Ubuntu使用apt-get安装Apache2报如下错误时的解决方案The following packages have unmet dependencies: apache2 : Depends: apache2-bin (= 2.4.7-1ubuntu4) but it is not going to be installedE: Unable to correct probl
2017-09-12 16:44:09
5361
原创 selenium页面元素定位方法
selenium中元素的定位是很关键的,定位不准,也就无法操作页面元素,自动化也是白搭,现在让我们来了解一下selenium的定位方法,方法语法描述iddriver.findElement(By.id(String id))使用页面元素的id属性namedriver.findElement(By.name(String name))使用页面元素的name属性classNamedriver.find...
2017-09-10 17:00:41
2396
原创 selenium WebDriver的简单使用
使用wbdriver进行自动化测试,使用什么浏览器测试,就需要下载安装相应的浏览器和对应的driver文件,driver文件下载地址也是在selenium官网下载,浏览器版本和driver一定要对应,或者无法使用,详细查看driver的介绍把下载好的driver文件放在系统的system32文件下面(这里以谷歌浏览器为例)然后打开Ec
2017-09-10 13:15:30
530
原创 selenium环境配置
使用selenium rc或都webdriver,首先要进行相关环境的配置,selenium开发可以使用很多语言,不同的开发语言使用的环境也不相同,下面以JAVA进行讲解1.首先下载并安装JDK,安装后配置java环境变量,JDK下载地址:http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151
2017-09-09 13:20:02
492
2
原创 Selenium IDE使用的相关功能
一、断点录制完了脚本后,我们就需要对脚本进行调试,调试是为了发现脚本中的错误并进行修复以及加固脚本的稳定性,这个时候我们就需要用到断点,在脚本中某一步中右键选择“Toggle Breakpoint”,相对应的步就显示暂停图标,再点击一次就可以取消运行case后,到此步时就会暂停,点击快捷键中的“Step”就可以一步步调试了二、检查点运
2017-09-02 17:38:46
517
原创 Selenium IDE录制脚本
下面以百度网址进行演示第1步 : 启动Firefox浏览器,然后导航到该网站 - https://www.baidu.com/第2步: 从工具菜单中打开Selenium IDE,按下录制按钮-即在右上角。第3步 : 在输入框中输入"CSDN",然后点击 "百度一下"第4步 : 然后可以插入检查
2017-09-01 22:40:03
1196
原创 Selenium IDE安装与介绍
selenium IDE是firefox浏览器的一个插件,依附于firefox浏览器,并允许您记录,编辑和调试测试,类似于QTP的自动录制功能,Selenium IDE包括整个Selenium Core,可让您轻松快速地在实际运行的环境中记录和回放测试。
2017-09-01 14:33:32
1191
原创 Selenium简介
Selenium是一个用于Web应用程序自动化测试工具。Selenium测试直接运行在浏览器中,就像真正的用户在操作一样。支持的浏览器包括IE(7, 8, 9, 10, 11),Mozilla Firefox,Safari,Google Chrome,Opera等。主要功能包括:测试与浏览器的兼容性——测试你的应用程序看是否能够很好得工作在不同浏览器和操作系统之上。测试系统功能——创建回归测试检验
2017-09-01 14:31:59
685
原创 Locust性能测试框架介绍与安装
Locust是使用Python开发的支持分布式的一款开源压力测试工具,Locust在测试时,会产生大量的用户对系统进行访问,每个用户的行为是通过Python代码控制的,并且整个测试过程可以在Web的UI界面实时观察测试数据。 Locust在单台机器上能够支持几千并发用户访问,Locust内部采用了协程gevent,通过采用分布式的方式,理论上Locust工具能够模拟无数的用户。win...
2017-08-03 16:27:53
2996
原创 Sikuli元素异常处理(截图及打印日志)
Sikuli框架在出现异常时,没有做出一些好的处理,比如截图,打印日志,还有对程序的回收,我们可以通过java中的方法对Sikuli进行封装一下,实现这些功能,好了,看如下代码package com.sikuli;import java.awt.Dimension;import java.awt.Rectangle;import java.awt.Robot;import java.
2017-02-08 12:35:51
2693
原创 selenium结合Sikuli-Script使用
进行WEB自动化时,会遇到有些元素很难定位操作,或者是遇到调到win窗口的用例,光用selenium就没有办法了,那我们就只能借用外部框架来帮我们完成用例的编写,Sikuli可以和selenium完美结合,所以我们使用Sikuli-Script.jar结合selenium写一个百度云上传的用例,代码如下:运行一下,正常运行
2016-12-21 19:48:11
1641
原创 Sikuli-Script使用
Sikuli-IDE用起来方便,但是用到实际项目中还是有局限性的,Sikuli提供了Sikuli-Script的jar包,在Sikuli-X的安装目录下,这样就可以在eclipse中使用JAVA编写代码了,并用Sikuli-Script和selenium完美结合使用。首先新建一个Sikuli的项目,导入Sikuli-Script.jar包,然后在项目下新建一个CaleTest.java,并
2016-12-17 10:40:44
4894
2
原创 Sikuli-X简单的使用
Sikuli是识别和控制GUI组件进行UI自动化测试的技术,它是有MIT的研究人员开发进行设计的。Sikuli在墨西哥维乔印第安人(Huichol Indians)的语言里是上帝之眼的意思,Sikuli的工作模式与人眼一样,直接识别图像。这个项目的主创人员之一是来自台湾的张琮翔Sikuli的最新版本为 Sikuli X-1.0rc2。
2016-12-16 11:07:08
15437
6
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人