- 博客(36)
- 资源 (3)
- 收藏
- 关注
原创 【robotframework之八】自定义库
一、前言 robotframework虽然提供了很多的关键字,但是在实际使用的时候,我们总会感觉有的关键字不符合自己的需求,或者我需要实现某一个功能,但是robotframework没有提供实现该功能的关键字,这个时候,我们就需要自己来定义关键字了,直接上例子。二、直接导入Python文件1、首先进入Python的site-packages目录,我这里的目录是:C:\P...
2019-06-26 15:27:21
3802
原创 【robotframework之七】框架设计之分层
一、前言 我们在设计用例时,都知道一个功能可以引申出很多的用例,如登录功能,我们设计时会考虑用户名密码为空、密码错误、密码正确等等情况,每一种情况都可以形成一条用例,如果要写一个比较精细的自动化脚本,我们也应该要把各种情况都考虑进去。 我们知道,网站不会是一成不变的,我们经常会需要进行版本迭代,这样可能会导致我们自动化脚本中的元素等发生变化,如果不进行分层,每一条用例都引...
2019-06-25 17:26:16
1925
原创 【robotframework错误集合一】AttributeError: 'ForLoop' object has no attribute 'report_invalid_syntax'
一、错误异常command: robot --argumentfile c:\users\yh001\appdata\local\temp\RIDEiqsta2.d\argfile.txt --listener C:\Python27\lib\site-packages\robotide\contrib\testrunner\TestRunnerAgent.py:60746:False E:\...
2019-06-20 15:11:30
2128
原创 【robotframework之六】切换到新的窗口
一、参考资料https://www.cnblogs.com/testwang/p/6097621.html二、切换及定位关键字怎么切换窗口呢?首先可以F5,查看可以用到的关键字:Select Window:选择浏览器窗口匹配定位器。如果找到该窗口,所有后续命令都将使用所选窗口,直到再次使用该关键字。如果没有找到窗口,则此关键字将失败。返回前一个窗口句柄,并可用于稍后返回该句柄。...
2019-06-17 17:25:08
6667
2
原创 【appium关键字驱动之四】执行excel用例进阶
一、前言 通过关键字驱动的第一篇,我们知道,目前的测试结果是每一个步骤的结果,那么可不可以写一个更加直观的,比如说一条用例一个结果呢,如下图:用例集:用例:二、执行 设计好excel后,我们来改一下执行excel的方法,如下:package com.keyword.casestoread;import io.appium.java_clie...
2019-02-01 10:29:25
765
1
原创 【appium关键字驱动之三】读取执行excel的数据
上一篇,我们整理了一些操作excel需要使用到的方法,现在我们就可以使用那些方法来识别执行excel里面的关键字了,代码如下: package com.keyword.casestoread;import io.appium.java_client.android.AndroidDriver;import java.io.FileInputStream;import java....
2019-01-18 11:08:29
737
原创 【appium关键字驱动之二】appium元素封装方法
上一篇,我们通过整理测试步骤形成了excel表格,接下来,我们需要做的就是写一些公共的方法以便更好的去执行excel里面的步骤。 一、定位方式的封装需要使用excel里面定位方式及页面元素来返回By,代码如下:/** * 把变量转化为By对象 * @param type 元素对象的定位方式 * @param value 元素对象的值 * @return By元素对象*...
2019-01-17 18:42:53
1782
原创 【appium关键字驱动之一】介绍及整理测试用例步骤
一、前言 最近又听到很多人讨论自动化,正好app发版完成后,继续捡起了appium,写脚本之余想到了以前写过的selenium的关键字驱动框架,那么appium是不是一样可以应用呢,可不可以在以前的关键字驱动上更加灵活呢?带着疑问查了资料后,就有了以下的简单脚本,好记性不如烂笔头,还是一步一步记录下来吧。 二、分解测试步骤以登录为例,我们可以打开一个全新的a...
2019-01-17 18:18:34
1028
原创 【robotframework之五】参数化
一、在关键字方法中定义参数二、查看调用关键字的页面三、输入参数4、执行即可发现在登录过程中,参数自动填充了
2018-04-28 16:34:34
6884
原创 【selenium】利用excel来实现关键字驱动-Java
参考地址:https://my.oschina.net/hellotest/blog/531932#comment-list一、新建项目二、导入包三、例子-excel 以优快云的登录为例,首先我们可以分解登录的步骤,写入excel,如下:四、编码1、首先需要写一个可以读写excel的方法,我电脑上装的是excel7,xlsx格式,用到XSS系列的方法,代码如下:package com.mo...
2018-04-28 16:34:23
3256
原创 【selenium】常用的方法及代码片段
一、设置启动浏览器@Before public void setUp() throws Exception { System.setProperty("webdriver.firefox.bin", "D:/Program/Mozilla Firefox/firefox.exe"); driver = new FirefoxDriver(); driver.manage()....
2018-04-28 16:33:59
1085
原创 【appium】元素定位的常用方法,更新。。。。
一、显式等待,重写点击事件,找到该ID就点击/** * 显式等待,重写点击事件,找到该ID就点击 * @param driver * @param resource ID名称 */ public void ClickByID(AndroidDriver driver,String resource){ WebDriverWait wait = new WebDriverWai...
2018-04-28 16:33:43
751
原创 【robotframework之四】写一个公共调用方法
一、前言 在实际测试的时候,很多功能都需要登录才能够测试,如果每次都写几行登录代码就太麻烦了,这个时候我们就可以用到keyword,他的功能类似于公共的方法,我们可以写一个自定义的登录方法,在需要登录的页面,先调用这个方法即可。二、创建一个方法在项目下面右键新增:new user keyword三、新增成功页面keyword页面和用例页面的页面布局是一样的,我们直接将用例的登录内容复制到key...
2018-03-12 14:02:41
3855
原创 【robotframework之三】使用的方法,更新ing...
1、打开浏览器Open Browser2、浏览器窗口最大化Maximize Browser Window3、点击控件Click Element、Click Button4、等待时间Sleep5、输入文本Input Text6、输入密码Input Password7、切换到新窗口select window8、切换回旧的窗口select window default9、页面是否包含文本Page Sho...
2018-03-12 11:48:33
1652
原创 【robotframework之二】第一个robotframework项目
一、打开robotframework的RIDE在命令行执行:ride.py二、创建一个项目点击File—>new project三、引入Selenium2Library库在项目下面点击Library,导入Selenium2Library库,导入之后如果是黑色的则代表导入成功,如果是红色字体则表示没有找到该库四、创建测试用例在CsdnTest下面右键新增New Test Case,创建一个测试...
2018-03-12 11:25:33
950
原创 【robotframework之一】搭建robotframework的环境
1、下载Python并安装在环境变量path中加上:C:\Python27 和 C:\Python27\Scripts2、查看Python是否安装成功执行Python3、执行:pip install robotframework4、验证是否安装成功:pybot --version5、执行:pip install robotframework-sel...
2018-03-12 10:28:50
495
原创 【appium】常用的代码模块
一、隐藏键盘1、代码 /** * 隐藏键盘 * @param driver */ public void closeKeyBoard(AppiumDriver driver) { try { driver.hideKeyboard();// 隐藏键盘 } catch (WebDriverException ex) { ...
2018-02-24 13:57:58
517
原创 【appium】判断是否登录,如果没有登录则自动登录
一、确定是否登录的元素 现在很多APP在登录成功之后,下次再进入该APP时,除非你主动退出过或者有时间的安全机制,否则一般都会自动登录;所以判断该APP是否已经登录,首先要确定一点,登录成功后会进入哪个页面,那个页面是否是每次打开APP时都会进入的页面,确定之后就可以用该页面的元素来判断是否登录。 如本文的例子,优快云APP登录成功之后,会进入一个头条列表,这个时候我们就可以...
2018-02-24 13:52:36
4351
原创 【appium之五】元素定位之findElementById
一、根据资源ID定位之资源ID唯一语法:driver.findElementById("资源ID") 或 driver.findElement(By.id("资源ID"))例子:如上图所示,获取优快云账号输入框用:driver.findElementById("net.csdn.csdnplus:id/editTextUserName")要输入账号则是:driver.findE...
2018-02-24 11:24:02
7325
原创 【appium】获取toast内容
1、环境配置需要确保appium版本在1.6.3及以上2、需要添加代码// 启用 UIAutomator2capabilities.setCapability("automationName", "uiautomator2");//capabilities.setCapability(MobileCapabilityType.AUTOMATION_NAME,AutomationName.AND...
2018-02-22 18:28:40
8565
3
原创 【appium之四】通过uiautomatorviewer获取元素
一、进入目录找到uiautomatorviewer二、打开uiautomatorviewer.bat三、在Android设备中打开需要获取元素的页面四、确保该Android设备是正常连接的五、在UI automator Viewer中点击同步Android设备打开的页面六、将鼠标移动到需要获取id的控件上面,既可以获取到元素ID需要注意,并不是所有的时候都可以获取到资源ID,如果该控件没有设置re...
2018-02-22 18:02:57
2658
原创 【appium之二】搭建appium+Java+Android环境
一、下载node.js 并安装(msi文件) 地址: https://nodejs.org/zh-cn/download/releases/ 安装成功后验证:node -v二、配置Java和Android环境地址:http://blog.youkuaiyun.com/youxitou/article/details/79347882三、查看npm下面的appium的版本npm view appium vers...
2018-02-22 17:24:14
824
原创 Error occured while starting App. Original error: Permission to start activity denied.错误的解决方法
错误异常:eclipse1) LoginTest(com.csdn.test.LoginTest)org.openqa.selenium.WebDriverException: An unknown server-side error occurred while processing the command. Original error: Error occured while startin...
2018-02-22 17:06:13
3006
原创 【appium之一】Android环境搭建(镜像)
一、下载JDK并安装配置环境下载地址:链接:https://pan.baidu.com/s/1kWBe29L 密码:y3xi安装JDk1.8的步骤如下:点击下载的JDK文件jdk-8u131-windows-i586_8.0.1310.11.exe,点击下一步直至安装完成,然后开始配置环境:点击我的电脑----属性----高级----环境变量----在系统变量中----点击新建,在变量名中输入...
2018-02-22 17:04:45
914
原创 Android中会用到的命令
一、查看adb的版本命令:adb version结果:二、查看连接的设备命令:adb devices结果:三、通过命令行安装apk包命令:adb install -r-s apk安装包结果:备注:-r:表示重新安装该程序,并保留该程序的数据-s:安装应用到SD卡内而不是手机存储内四、通过命令查看apk的包名等信息命令:aapt dump badging apk安装包结果:备注:包名:com.exa...
2018-02-22 11:58:38
333
原创 An unknown server-side error occurre while processing the command的解决办法
使用版本:appium:1.6.5java-client :5.0.0selenium:3.8.1jdk:1.8sdk:5.1.1错误:.EETime: 0.984There were 2 errors:1) PreQuestion(com.test.quiz.QuizTest)org.openqa.seleniu
2018-02-07 16:21:52
10419
原创 【appium之三】第一个appium的Demo
/******************************************************************************************** 文章参考地址:http://blog.youkuaiyun.com/maryshine/article/details/52228483******************...
2018-02-06 11:28:35
390
原创 图片按钮提交两次
上述代码,图片按钮将会提交两次,是因为,我们使用input,类型设置为image,然后后面又加上点击事件所致,只要将input改为image即可。
2012-08-17 09:59:16
475
原创 java发送邮件,正文图片,附件
使用的包:commons-email-1.2-bin.zip,下载后解压取其中的jar包。另外使用MimeUtility.encodeText()时需要mail.jar包。发送HTML格式的邮件,代码如下:package com.mail.test;/** * 发送邮件 */import java.io.File;import java.io.UnsupportedEn...
2011-11-04 17:30:26
1769
2
转载 struts原理与实践(七)
第7部分上一篇文章中介绍校验时提到客户边的校验用到了JavaScript,实际上用Struts配合JavaScript还可以实现许多有用的功能,比如,级联下拉菜单的实现就是一个典型的例子:本例假设要实现的是一个文章发布系统,我们要发布的文章分为新闻类和技术类,
2011-10-08 20:18:40
395
转载 struts原理与实践(六)
第6部分本文我们来讨论一下Struts中的输入校验问题。我们知道,信息系统有垃圾进垃圾出的特点,为了避免垃圾数据的输入,对输入进行校验是任何信息系统都要面对的问题。在传统的编程实践中,我们往往在需要进行校验的地方分别对它们进行校验,而实际上需要校验的东西大多都很类似,如必
2011-10-08 20:13:03
380
转载 struts原理与实践(五)
第5部分 一个支持i18n的应用程序应该有如下一些特征: 1增加支持的语言时要求不更改程序代码 2字符元素、消息、和图象保存在原代码之外 3依赖于不同文化的数据如:日期时间、小数、及现金符号等数据对用户的语言和地理位置应该有正确的格式 4应用程序能迅速地适
2011-10-08 20:07:37
383
转载 struts原理与实践(三)
(第三部分) 一、JDBC的工作原理Struts在本质上是java程序,要在Struts应用程序中访问数据库,首先,必须搞清楚Java Database Connectivity API(JDBC)的工作原理。正如其名字揭示的,JDBC库提供了一个底层API,用来
2011-10-08 19:55:31
393
转载 struts原理与实践(二)
(第2部分)下面,我们就一步步按照上面所说的步骤来完成我们的应用程序: 第一步,我们的应用程序的Views部分包含两个.jsp页面:一个是登录页面logon.jsp,另一个是用户登录成功后的用户功能页main.jsp,暂时这个页面只是个简单的欢迎页面。
2011-10-08 19:50:01
500
转载 Struts原理与实践(一)
(第1部分)一、 什么是Struts框架(Framework)是可重用的,半完成的应用程序,可以用来产生专门的定制程序。 您只要细心地研究真实的应用程序,就会发现程序大致上由两类性质不同的组件组成,一类与程序要处理的具体事务密切相关,我们不妨把它们叫做业务
2011-10-08 19:40:29
381
原创 webservice示例
最近学习webservice,上网查了好久,发现了一个例子,然后自己又加了一点东东,结合起来,分享一下,O(∩_∩)O~包:axis-bin-1_4这个里面有实体及数组的传递,可以看一下实体类:package com.emp;public class Dept { private String deptno; private String dname;...
2011-07-06 16:55:58
627
appium+Java+eclipse需要的jar包
2018-02-22
selenium相关最新jar包2.52.0
2016-03-01
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人