java + selenium测试框架(之下载页面上的图片) 版本演化七
来源:互联网 发布:xy苹果助手 网络 编辑:程序博客网 时间:2024/05/17 03:25
java + selenium测试框架(之下载) 版本演化七
准备攻克验证码验证,知识积累中。
下载感兴趣的图片
从网上找了个程序,挺好用的,直接放这里了。
import java.io.BufferedInputStream;import java.io.FileOutputStream;import java.io.IOException;import java.net.HttpURLConnection;import java.net.MalformedURLException;import java.net.URL;public class SaveFileUtil { public final static boolean DEBUG = true;//调试用 private static int BUFFER_SIZE = 8096; /** * 将HTTP资源另存为文件 * * @param destUrl String * @param fileName String * @throws Exception */ public static void saveToFile(String destUrl, String fileName) { FileOutputStream fos = null; BufferedInputStream bis = null; HttpURLConnection httpUrl = null; URL url = null; byte[] buf = new byte[BUFFER_SIZE]; int size = 0; //建立链接 try { url = new URL(destUrl); httpUrl = (HttpURLConnection) url.openConnection(); //连接指定的资源 httpUrl.connect(); //获取网络输入流 bis = new BufferedInputStream(httpUrl.getInputStream()); //建立文件 fos = new FileOutputStream(fileName); if (DEBUG) System.out.println("正在获取链接[" + destUrl + "]的内容..\n将其保存为文件[" + fileName + "]"); //保存文件 while ( (size = bis.read(buf)) != -1) fos.write(buf, 0, size); } catch (MalformedURLException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } finally { try { if(fos!=null)fos.close(); } catch (IOException e) { e.printStackTrace(); } try { if(bis!=null)bis.close(); } catch (IOException e) { e.printStackTrace(); } httpUrl.disconnect(); } }}
Demos
需求:从126.com的网站上,下载个图片,就是那个二维码的小图片。
public class Login126Page extends Page{ public Login126Page(WebDriver driver) { super(driver); } @FindBy(id="yxCode") protected WebElement imgSrc; protected String getPicInfo() { sleep(2); return imgSrc.getAttribute("src"); }}
测试用例:
public class Login126Test extends TestBase{ Login126Page page = null; String path = "http://www.126.com/"; @BeforeMethod public void initPage() { page = new Login126Page(driver); page.openAndWait(path); PageFactory.initElements(driver, page); } @Test public void testLogin() { String url = page.getPicInfo(); SaveFileUtil.saveToFile(url, "1.jpg"); System.out.println(page.getCurrentUrl()); }}
写在最后,为了增加点击。需要TestBase,Page的兄弟请看之前的博客。
0 0
- java + selenium测试框架(之下载页面上的图片) 版本演化七
- java + selenium测试框架(之上传下载) 版本演化五
- java + selenium测试框架 版本演化一
- java + selenium测试框架(之测试驱动) 版本演化三
- java + selenium测试框架(之等待机制) 版本演化二
- java + selenium测试框架(之截屏) 版本演化四
- java + selenium测试框架(之测试数据准备) 版本演化六
- java + selenium测试框架(之上传下载) 版本演化五-二
- java + selenium测试框架(之上传)
- java + selenium测试框架 (之高亮显示页面元素)
- PatatiumWebUi下载导入部署 (java+selenium 基于selenium webdriver 自动化测试框架)
- java + selenium测试框架 (之进程强制关闭)
- java工具,框架等的历史版本下载页面
- selenium的测试框架
- 最好的语言 PHP + 最好的前端测试框架 Selenium = 最好的爬虫(上)
- selenium+java自动化测试框架之元素管理篇
- selenium+java自动化测试框架之元素管理篇(yaml)
- selenium+java自动化测试框架之元素管理篇(yaml)
- socket中的read()
- android基础---调用系统相机拍照
- hanoi
- cs8900a网卡驱动--寄存器
- linux中mysql的安装与配置
- java + selenium测试框架(之下载页面上的图片) 版本演化七
- windows平台下VLC2.0.5编译
- (图的遍历专题整理)
- Fedora 17下交叉编译vlc-2.0.6-win32小记
- MYSQL-5.6安装时解决要输入current root password的方法
- struts2的基本原理
- 学习笔记之 文件的上传和下载代码
- UVa 10115 Automatic Editing
- 任务栏图标闪烁 FlashWindowEx