atitit.浏览器web gui操作类库 和 操作chrome浏览器的类库使用总结

1. 常见标准 1

1.1. 录制重放 1

1.2. 一个窗体一个proxy cookie 1

1.3. exec js 1

1.4. js 调用java 1

1.5. 修改dom属性 2

1.6. 关键字驱动 2

1.7. 加载js类库 2

1.8. 一个窗口一个代理 2

1.9. 独立窗口cookie 2

1.10. 无图模式支持 2

1.11. 支持自定义路径 2

2. 框架选型selenium2(webdriver)  QTP 2

3. 操作chrome浏览器 3

3.1. chromedriver 3

3.2. 自定义路径 3

3.3. 独立窗口代理器 3

3.4. 无图模式 3

3.5. code 3

1. 常见标准

1.1. 录制重放

这个功能好.不熟悉的时候儿直接能使用...相像help chm雅十..

1.2. 一个窗体一个proxy cookie

webdrive的ff可以。。swt browser,native swing的都是ie默认,改ff可麻烦了。。

1.3. exec js

作者:: 老哇的爪子 Attilax 艾龙,  EMAIL:1466519819@qq.com

转载请注明来源: http://blog.csdn.net/attilax

1.4. js 调用java

一般是浏览器扩展,,js调用。。如果不支持,只能使用cookie的方式了。。

1.5.  修改dom属性

通过js或者 后台的dom操作。ie com 可通过后台dom,webdrive,swt browser是通过js

1.6. 关键字驱动

”,测试人员不需要“录制”测试脚本,而可以改成“设计”测试脚本。即:先将应用程序的GUI 对象添加到QTP的对象仓库(Object Repository)中,然后针对每一个需要操作到的对象设计每个测试步骤。我个人感觉,这的确是一个很酷的特性,它使我们可以不必实际去操作应用程 序,就可以编写出测试脚本,这样做既节省了时间,而且还有一个更大的好处就是可以在应用程序还没有设计完成,或者由于出错无法正常执行的时候仍然可以编写 我们的测试脚本。应用程序只需要有使用界面(UI),而不必实际运行,测试人员就可以开始建立测试脚本,为我们实施自动化测试赢得更充足的时间。而

1.7. 加载js类库

原理一般是创建一个script 标签....添加js

1.8. 一个窗口一个代理

1.9. 独立窗口cookie

1.10. 无图模式支持

1.11. 支持自定义路径

2. 框架选型selenium2(webdriver)  QTP

3. 操作chrome浏览器

3.1. chromedriver

// 在java程序中添加

System.setProperty("webdriver.chrome.driver", pathx.classPathParent()+ "\\chromedriver.exe");

selenium不能直接操作chrome,要通过这个驱动...

3.2. 自定义路径

ChromeOptions co = new ChromeOptions();

co.setBinary(path);

}

return new ChromeDriver(co);

3.3. 独立窗口代理器

默认gui界面是同ie的设置一样,多个窗口一个proxy。。不过命令行可以。-proxy-server 参数

co.addArguments(“-proxy-server=host:port”);

3.4. 无图模式

命令行参数 --disable-images不过好像不去作用。。只能gui界面禁止。。这样所有的chrome窗口就生效了。

3.5. code

private static WebDriver getChromeDriver(FirefoxProfile profile) {

// 在java程序中添加

System.setProperty("webdriver.chrome.driver", pathx.classPathParent()+ "\\chromedriver.exe");

ChromeOptions co = new ChromeOptions();

String max = "--start-maximized";

String proxyParem = "";

try {

if (browserParams.get().get("network.proxy.http") != null) {

String proxy = browserParams.get().get("network.proxy.http")

+ ":"

+ browserParams.get().get("network.proxy.http_port");

proxyParem = "-proxy-server=" + proxy;

}

} catch (Exception e) {

e.printStackTrace();

}

String noimg = "";

if (browserParams.get().get("permissions.default.image") != null

&& browserParams.get().get("permissions.default.image")

.equals("2"))

noimg = "--disable-images";

//--disable-image-transport-surface

// haox bsin .only gui setting/privert//img

co.addArguments(proxyParem);

String path = pathx.classPathParent()

+ "\\Chrome\\Application\\chrome.exe";

if (new File(path).exists()) {

System.out.println(path);

co.setBinary(path);

}

return new ChromeDriver(co);

}

atitit.浏览器web gui操作类库 和 操作chrome浏览器的类库使用总结的更多相关文章

  1. Chrome浏览器扩展开发系列之三:Google Chrome浏览器扩展的架构

    1) 不可视的background页面 Google Chrome扩展往往包含一个不可见的background页面,Google Chrome扩展的主要业务逻辑都位于此.有两种类型的backgroun ...

  2. Chrome浏览器扩展开发系列之九:Chrome浏览器的chrome.alarms.* API

    Chrome浏览器扩展程序通过chrome.alarms.* API,可以制定计划周期性地执行代码,或在指定时间执行代码. 要使用chrome.alarms.* API,首先需要在manifest.j ...

  3. 用golang chromedp 操作已经打开的chrome浏览器

    win7 环境,主要是一开始想在代码中先用exec.Command启动chrome,但始终不能成功监听9222端口,折腾了很长时间, 需要先手工启动chrome监听端口,具体写在代码注释中了. 然后再 ...

  4. Chrome浏览器及调试教程

    ==>(微信公众号:IT知更鸟)欢迎关注<^>@<^> Chrome浏览器及调试教程 在web开发过程中,我们在写JavaScript脚本时难免会遇到各种bug,这时,我 ...

  5. 渗透技巧——导出Chrome浏览器中保存的密码

    0x00 前言 在后渗透阶段,获得权限后需要搜集目标系统的信息.信息越全面,越有助于进一步的渗透.对于Windows系统,用户浏览器往往包含有价值的信息. 在之前的文章<本地密码查看工具LaZa ...

  6. chrome浏览器tab页内存占用变大,网站变慢为哪般?

    问题概述: 公司做的是BS应用. 之前我们的后台服务器程序是带状态的,用ehcache存储登录状态:这两天被我改成了redis存储,应用本身不再存储登录状态. 然后自测,我在测试某个很耗时间的网页操作 ...

  7. 关于Chrome浏览器(Chrome Stable、 Chrome Canary 、Chromium)

    作为开发者,web浏览器一般最常用的可能是Chrome浏览器.但其实Chrome浏览器还有别的一些版本.如:Chrome Stable. Chrome Canary .Chromium.大部分人一般用 ...

  8. 编写一个 Chrome 浏览器扩展程序

    浏览器扩展允许我们编写程序来实现对浏览器元素(书签.导航等)以及对网页元素的交互, 甚至从 web 服务器获取数据,以 Chrome 浏览器扩展为例,扩展文件包括: 一个manifest文件(主文件, ...

  9. Visual Studio 2017 本地调试 Chrome浏览器自动退出

    在使用VS 2017(15..6 .15.7)对.NET Core MVC应用程序进行本地调试的时候,选择使用Chrome浏览器.但输入中文 就自动关闭Chrome浏览器,随后结束调试.但复制.粘贴中 ...

随机推荐

  1. Web API使用记录系列(三)Web API与Owin

    还好在坚持,今天继续更新第三篇随笔----使用owin来启动WebAPI(这里还是以IIS为宿主,当然也可以使用别的如Console.Windows Server等) 关于OWIN(Open Web ...

  2. STSDB 一

    STSdb 4.0 是一个开源的NoSQL 数据库和虚拟文件系统,支持实时索引,完全用c#开发的. 引擎原理基于WaterfallTree(瀑布树)数据结构搭建 以下内容基于stsdb4.dll(4. ...

  3. Nios II uCLinux/Linux启动分析

    1. 说明 本文采用的Linux源码版本来自Altera公司FTP.不考虑zImage生成的Compress过程.因为zImage是内核binary文件经过gzip 压缩,并在头部添加解压缩代码实现的 ...

  4. (C语言版)链表(四)——实现双向循环链表创建、插入、删除、释放内存等简单操作

    双向循环链表是基于双向链表的基础上实现的,和双向链表的操作差不多,唯一的区别就是它是个循环的链表,通过每个节点的两个指针把它们扣在一起组成一个环状.所以呢,每个节点都有前驱节点和后继节点(包括头节点和 ...

  5. Eight_pku_1077(广搜).java

    Eight Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 21718   Accepted: 9611   Special ...

  6. activemq持久化配置,设置为主从模式(带复制的主从模式,应用mysql数据库)

    配置文件如下<!--    Licensed to the Apache Software Foundation (ASF) under one or more    contributor l ...

  7. 引用类型之object和date详解

    引用类型的值是引用类型的实例,js中的引用类型是一种数据类型,用于将数据和功能组织在一起(也可叫对象定义,因为描述一类对象具有的属性和方法) 1.Object类型 大多数引用类型都是object类型, ...

  8. 小白系列-免费广告路由器web认证设置(2)

    要设置认证页面图片.须要到后台注冊一个帐号,绑定路由器. 路由器管理后台网址 http://115.29.12.130/router 第一步:自己主动获取一个路由器ID(上一篇文章中的路由器ID也要改 ...

  9. SQL Server 2008 R2 清空数据库中ldf日志文件

    /************************************************************ * Sql Server 2008 R2 清空数据库中ldf日志文件 * 将 ...

  10. EAS开发

    WAFII中的 数据获取与传输 首先看实例代码: DataAction:function(){ //获取选中所有列的id var selectedIds = waf("#grid" ...