自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Fhaohaizi的博客

个人博客:http://blog.fv1314.xyz/

  • 博客(64)
  • 资源 (5)
  • 收藏
  • 关注

原创 android UiAutomator利用快速调试生成html文档测试报告

本人在使用android UiAutomator的过程中,想到另外一种生成测试报告的方案,就是使用html文件生成测试报告,经过中午的学习html文档的知识,终于成功了,现在分享出来,供大家参考。先发一下测试报告截图:下面是测试代码,跟上一篇excel文档的差不太多,只是用list替换了map来写入报告。package appreport; import java.i

2017-06-21 18:55:31 2005

原创 android UiAutomator利用快速调试生成excel文档测试报告

本人在使用UiAutomator做测试的时候,更偏向于使用快速调试类来进行,方便好用,但是生成报告一直是个心病,昨天想到一个方案,今天终于成功,通过快速调试类,先进行编译和push,然后通过执行cmd命令逐个执行测试用。对控制台输出的信息进行处理,分类存储,执行完用例,一起写在一个excel文档。这个办法还有一个优点,就是可以随意运行任意两个或者更多的测试用例,相比UiAutomatorHelpe

2017-06-17 15:33:02 1571

原创 selenium2java如何关闭上传弹框问题的解决办法

本人在学习使用selenium2java的过程中,遇到过一个上传的元素,里面input标签是在点击上传按钮之后出现的,但是点击完按钮就会弹出一个window的选择文件的窗口,导致用例失败。经过实验,发现可以用模拟物理按键的方法解决这个问题,分享出来,供大家参考。 findElementByIdAndClick(driver, "btnAddIntroImages"); sleep(0);

2017-06-12 09:46:00 1153

原创 android UiAutomator定位失灵的一种解决办法

本人在学习使用UiAutomator的时候,遇到了一个控件经常性无法定位的问题,有的时候能定位点击,有的时候就找不到这个控件,同样的代码,时灵时不灵,最近没办法找到了一个相对还不错的解决方案。下面发一下截图,就是左下角的“发送”按钮,有的在输入文字之前是另外一个“+”的控件,有点类似与微信聊天框里面的界面。思路就是通过两种方式定位不到的话,就通过文本框,计算“发送”按钮的位置,

2017-06-09 09:45:30 4093

原创 java使用poi写入excel文档的一种解决方案

本人在学习使用selenium和UiAutomator的时候,学习了一excel文档的操作,前两天写了一个读取excel的方案,今天看了一下写入excel的,暂时用的Map>作为写入源。现在分享出来,希望能对你有所帮助。//写入xlsx文档 public static void writeXlsx(String filename, Map> map) { String fileTy

2017-06-06 19:37:33 685

原创 java使用poi读取excel文档的一种解决方案

本人在学习使用java的过程中,需要验证一下excel表格里面的数据是否与数据库中的数据相等。由于数据太多,故想着用java读取excel数据再去数据库验证。上网看了一下资料自己写了有车读取excel文档的方法,验证数据库的方法暂时还没写,自娱自乐,只能抽时间了。现在把读取excel的方法分享出来。 //读取excel文档,除第一行为标题外内容为数字 public static Li

2017-05-31 16:29:24 672

原创 selenium2java一个弹框上传时间日期大杂烩测试用例

本人在学习selenium2java的时候,遇到过一个弹框上传大杂烩的用例,特别是有一个选时间的,得先选时,再选分。费死老劲了重要写完,没啥大坑,就是比较复杂。//生成班课 public static void createFormalCourseAndSale(WebDriver driver, String grade, String subject) throws Interrupte

2017-05-26 09:59:27 870

原创 selenium2java微信支付宝购买功能测试用例

本人在学习使用selenium2java的过程中,遇到了测试支付宝和微信购买课程的用例,写起来略微复杂了一些,因为考虑到重复测试,得先修改用户订单状态,还得考虑用户已经买过、下单未付款、第一次购买等情况,中间用到了if-else if -else的判断语法,还得切换窗口。下面分享出来,供大家参考。//购买班课 public static void BuyCourseWithoutPay(We

2017-05-19 20:49:56 3177

原创 selenium2java使用select处理下拉框示例

在学习selenium2java的时候,在写收货地址相关用例的时候碰到了下拉框,刚好练习了一下select的使用,现在分享,供大家参考。 //删除添加收货地址 public static void deleteAndAddUserAdress(WebDriver driver) throws InterruptedException { clickUser(driver); find

2017-05-17 19:12:34 581

原创 selenium2java利用mysql实现重复购买用例

本人在学习使用selenium2java的过程中,遇到过需要测试方案购买的问题,每次买完之后都得手动清除一下数据,重新测试购买流程。在写自动化用例的时候用到了数据库相关方法,分享一下,供参考。//购买志愿方案(使用兑换卡) public static void buyWishProjectByCoupon(WebDriver driver) throws ClassNotFoundExcep

2017-05-11 13:49:39 424

原创 借助数据库执行sql语句批量生成测试数据

本人在学习selenium2java和数据库使用的过程中,需要测试兑换卡购买课程的功能。测试的兑换卡之前都是手动添加的比较麻烦,自己写了一个方法,批量生成测试兑换卡。 //添加兑换卡 public static void addCoupon() throws ClassNotFoundException, SQLException { String coupon_id; String

2017-05-10 18:49:21 956

原创 selenium2java写一个强制刷新页面的方法(ctrl+F5)

本人在学习使用selenium的时候,遇到一下子要循环某项操作好几次,到后面明显感觉页面刷新速度变慢了,在提交保存某些信息的时候,经常碰到因为保存时间过长导致报错,但是单独使用一次从来没有报错,分析原因可能是因为缓存导致的。所以写了一个强制刷新的方法,分享出来,供大家参考。 public static void refresh(WebDriver driver) { Actions ctr

2017-05-09 17:08:57 3904 1

原创 selenium2java造数据例子

本人在学习selenium2java的时候,有个功能,需要测试分页,每页20条数据,一个个添加太麻烦了,关键每条都得添加十几个数据,干脆自己写了一个方法,自动添加一条自己的高中成绩。分享如下://添加高中成绩 public static void addRecord(WebDriver driver, int num) throws InterruptedException { find

2017-05-05 18:31:15 758

原创 selenium2java切换iframe表单示例

本人在学习selenium2java的期间,遇到了网页中使用iframe内嵌页面的问题,查看了相关资料,终于成功了,分享如下: //进入广告配置 findElementByXpathAndClick(driver, ".//*[@id='certclient-01-02']/span"); findElementByXpathAndClick(driver, ".//*[@id='c

2017-05-02 18:44:53 516

原创 selenium2java写一个小小的爬虫程序

本人在学习selenium的过程中,本人偶然接触到爬虫获取网页信息,自己写了一个简单的获取课程信息的方法。String xpath = "xpath"; for(int i=1;i<getNumByXpath(driver, xpath);i++){ getCourseInfoOnPage(driver); nextPage(); }下面是获取本

2017-04-27 10:49:43 504

原创 android UiAutomator修改UiAutomatorHelper生成测试报告

本人在学习UiAutomator的时候,发现UiAutomatorHelper快速调试类非常好用,最近想了一下利用UiAutomatorHelper类来生成一个测试报告,好得比那些乱七八糟的runlog好看多了。原理很简单,我就把我增加的代码贴出来好了。供大家参考,后期肯定好得做一些优化。首先修改的是execCmd方法,其中在输出正确流的地方增加了一些判断。while ((line = r

2017-04-13 09:16:08 1943

原创 android UiAutomator聊天室用例中断言的应用

本人最近在学习UiAutomator的时候,写一个聊天室的用例,刚好练习一下断言的应用。分享出来,供大家参考。 //班级聊天测试 public void charroomSendAndSwitchSwitch() throws UiObjectNotFoundException { login(); waitForTextAndClick("聊天"); waitForTextAn

2017-04-11 19:30:40 706

原创 android UiAutomator添加收货地址的用例

本人在学习UiAutomator的时候,遇到添加收获地址的测试用例,这里的地址的地区是一级一级选择的。所以写了一个随机选择的方法。分享出来,供大家参考。public void addAdress() throws UiObjectNotFoundException { login(); waitForResourceIdAndClick("com.gaotu100.superclass

2017-04-08 19:30:20 2878

原创 android UiAutomator写一个自动修改密码的case

本人在学习使用UiAutomator的时候,需要写一个验证修改密码的用例,然后登录,然后在改回原来的密码登录。实现起来挺简单的,自己也层尝试用mysql验证密码,但是效果不理想,所以这里也没有写验证比较粗糙。这里主要用了一些简单的自定义方法,使代码看起出来相对有条理了一些,现在分享出来,供大家参考。 public void alterPassWord() throws UiObjectNotFou

2017-03-30 10:44:22 795

原创 android UiAutomator写一个自动化工具循环造数据的例子

本人在学习android UiAutomator的时候,大神提到自动化可以用来造数据,根据作业功能写了一个自动提交作业的例子,顺便练习了swith-case的使用,以及自己自定义方法的运用,特别是最后两个waitForTextAndClick(),等待元素出现并点击,如果用Configurator.getInstance().setActionAcknowledgmentTimeout(50);把

2017-03-21 10:35:54 1745

原创 android UiAutomator写一个QQ小号给大号点赞的case

最近发现QQ有一个点赞排行榜的东西,想到自己好几个小号,故可以拿来利用一下。试了一下效果不错,顺便学习了一下am启动和关闭应用。public void qqPraise() throws IOException, UiObjectNotFoundException, InterruptedException {//关闭QQRuntime.getRuntime().exec("am fo

2017-03-16 11:25:08 2074 1

原创 android UiAutomator利用am命令启动和结束进程

最近在学习UiAutomator的时候看到UiAutomator可以利用am命令启动和结束进程,自己练习了一下,感觉效果挺不错的。分享一下经验。//启动QQRuntime.getRuntime().exec("am start -n com.tencent.mobileqq/.activity.SplashActivity");//关闭QQ,如果运行中想结束得加上waitfor()

2017-03-16 11:19:52 3933

原创 selenium2java利用mysq解决向浏览器插入cookies时token过期问题

本人在学习selenium2java中通过浏览器插入cookies模拟用户登录的时候,发现一个问题,就是token值过期的问题,后来学习了selenium2java连接数据库后找到了一个更好的解决方案。每次插入cookies的时候总是从数据库拿到最新的token,这样就完美解决了过期的问题。这个是我登录后从浏览器拿到的cookies:[Automatic_login=18436035355

2017-03-14 15:26:40 1043

原创 selenium2java 一个利用mysql获取验证码注册新用户的测试用例

本人在学习selenium2java的时候,需要写一个注册模块的用例,想了一下决定用一个虚拟的手机号和mysql数据库直接进行注册流程,然后再去数据库把这个账号删了。实验了一下,感觉还不错。分享出来,供大家参考。public static void registerUserAndDelete(WebDriver driver) throws ClassNotFoundException, SQ

2017-03-14 11:48:19 1944

原创 selenium2java 输入前后元素id发生变化的自定义输入方法

本人在进行selenium2java的学习中,遇到登录框可以清除文本但是无法输入的问题,后来发现输入框的id在clear()前后发生变化的情况,于是重新写了一个输入的方法。针对clear()和sendkey()的元素id不同。//根据id获取元素清除文本写入文本public static void findElementByIdAndClearSendkeys(WebDriver driv

2017-03-13 19:09:41 544

原创 android UiAutomator分享几个简单实用的自定义方法

做自动化测试的时候,自己很喜欢能少敲一些代码,少做一些重复的事情,本着能省则省的原则,很多两行的都能写成一行,分享几个滑动的自定义方法。public void swipeLeft() {//左滑int y = UiDevice.getInstance().getDisplayHeight();int x = UiDevice.getInstance().getDisplayWidth(

2017-03-13 09:35:32 960

原创 android UiAutomator了解源码解决控件bonds[0,0]无法点击

本人在学习UiAutomator的时候,偶然碰到一些控件的bounds竟然是[0,0][0,0]的情况,十分费解,能找到就是无法点击,或者层级太复杂,比如说京东app领取优惠券的页面,我想根据优惠券内容选择点击有方的“立即领取”按钮等等。这里分享一下自己写的方法,说一下是用获取上一次的控件的尺寸来计算坐标的。//点击控件右半边public void getUiObjectByResoure

2017-03-09 18:59:30 584

原创 selenium2java自定义一个用js点击元素的方法

本人在学习selenium2java的时候,遇到元素存在但因为被其他元素挡住了,导致无法点击的问题,多放请教后,使用js点击解决了困扰。我又写了几个js点击元素的方法,现在分享出来,供大家参考。//通过js点击public static void clickByJs(WebDriver driver, WebElement element) {JavascriptExecutor js

2017-03-09 15:27:00 1805

原创 selenium2java 截图保存桌面(内含一坑)

本人在学习完UiAutomator,继续selenium2java的时候,想把UiAutomator的一些方法搬到selenium2java里面来,期间遇到截图保存的一个坑,就是图片命名。由于window系统不允许“:”在文件名中出现,导致截图失败。//截图命名为当前时间保存桌面public static void takeScreenshotByNow(WebDriver driver)

2017-03-09 10:45:10 1771

原创 selenium2java 自定义一个用参数控制等待时间的方法

本人在学习selenium2java的时候,经常会用到Thread.sleep(5000);的方法,但是有的需要等待很久有的需要等待一会就可以啦,所以自己写了一个方法,用一个参数控制实现常用的几种等待时间,少敲几个代码。//自定义等待时间public static void sleep(int key) throws InterruptedException {switch (

2017-03-08 11:26:01 779

原创 selenium2java自定义一个输出当前时间的方法

本人在学习selenium的时候,自己写了一个输出当前时间的方法,每次开始和结束的时候都会用到,很方便。分享出来,如果错误还请指正。public static void outputNow() {Date time = new Date();SimpleDateFormat now = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");Stri

2017-03-07 20:24:37 960

原创 android UiAutomator 借助数据库查询来验证结果并记录在log中

如果能在测试中拿到数据库的数据来验证一下脚本执行的结果会更加佐证执行结果。借助UiAutomatorhelper调试,把查询的结果一道写入到log文件中就方便多了。本文参考了一篇博客文章对里面的代码做了一些修改。原文地址:http://qq163230530.blog.163.com/blog/static/4289250620081186262719/我的代码如下:比较粗糙,有具体需求了

2017-03-07 17:05:48 1049

原创 android UiAutomator多一个参数让自己的自定义方法更灵活

今天面试又被虐,心情低落,想写点什么分享一下,缓解缓解。在平时写测试用例的时候,经常会发现同一个自定义方法可能会被重写好几次,都是进行一些微调的地方,改一下,下次用的时候可能还得改回来,就想了一个办法,在自定义方法里面加一个参数,使用if-else语句或者swith-case,这样一个方法可能就变成了几个方法。当然,前提是自己得记得这些参数的意义。就拿上次分享的等待控件出现并点击的方法做例子。

2017-03-06 18:48:58 768

原创 android UiAutomator写一个等待元素出现并点击的方法

写这个其实并没有特别大的意义,因为看到一篇文章得到启发,写这个方法可以省去很多代码。之前写过的一个等待控件出现的方法,后来发现api已经有了,waitforexists();,权当自己练习了。分享方法如下:public void waitForTextAndClick(String text) throws UiObjectNotFoundException {waitForUiObjec

2017-03-02 19:05:05 4393

原创 android UiAutomator写一个等待对象出现的方法

本人之前写了等待对象出现的方法,今天突然发现,写得很烂,于是重写了一个等待对象出现的方法。分享出来,如有不足,还请指正。public void waitForUiObject(String text) {//等待对象出现Date start = new Date();boolean key = true;while(key){sleep(200);UiObject it =

2017-02-28 15:41:18 1906

原创 android UiAutomator设置输入法为UTF7的方法

本人在测试中经常遇到需要在app中需要输入一些内容,再去进入到下一个页面操作,所以经常变换输入法,自己写了一个把输入法设置为UTF7的方法,以免自己忘记设置导致用例失败。public void setInputUtf() throws UiObjectNotFoundException {//设置输入法为UTF7clean();UiDevice.getInstance().pressH

2017-02-24 09:26:05 1306

原创 android UiAutomator如何利用adb install和adb uninstall实现安装和卸载

本人在看android UiAutomator快速调试的代码时,突然想到一个问题,既然能实现运行cmd命令,那写一个能实现快速调试安装和卸载的方法就挺好的,方便快捷,一键实现自己想要的功能。经过不断尝试,基本需求实现了。分享出来,如果不对的地方,还请指正。在包下新建一个UpdateApp的类,里面的代码如下:package student;import java.io.Buffered

2017-02-21 19:21:15 2397

原创 android UiAutomator如何获取短信验证码

本人在测试注册等功能的时候需要自动把验证码填写到注册框里,虽然现在很多手机已经提供了直接复制验证码的功能,但我还是想了一个办法从一段文本中获取验证码。public int findCode(String message) {Pattern r = Pattern.compile("[0-9]{6}");Matcher m = r.matcher(message);if (m.fin

2017-02-16 10:28:53 1724 2

原创 android UiAutomator如何向所有微信好友发送一条“你好,***”开头的祝福消息

在刚过去的情人节里,在已经过去的元宵节里,还有过去一段时间的除夕新年等节日里,都需要向好友发送一条祝福消息,最好是附带上对方的姓名,这样显得不是群发的,故写了一个方法来完成这件事情。同样的方法也可以用到短信中去。public void sendMassageToAllFriend() throws UiObjectNotFoundException {//给微信好友发一条祝福信息cle

2017-02-15 10:25:56 2433

原创 android UiAutomator一个在京东app里面自动签到领流量的方法

京东app里面有一个能签到领流量的功能,我几乎每天想起来就用一下,感觉挺好用的,但是近期京东流量口令实在找得令人心烦,故写了一个自动的方法,测试通过。clean();//清理后台UiDevice.getInstance().pressHome();getUiObjectByText("手机京东").clickAndWaitForNewWindow();getUiObjectByTe

2017-02-09 10:42:41 3971

java接口测试框架

本人接口自动化框架脑图,主要分为source、httpclient、mysql,unitl四大类

2018-08-06

双波源干涉图像(基于 plotly)

双波源干涉条纹图像,基于 python 和 plotly。通过统计实现数据得出图像

2018-03-01

轻轻松松自动化

2017-03-14

fiddler教程

2017-03-14

UiAutomator源码

2017-03-14

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除