在上一篇设置完Tess4J之后,引用jar包之前,我的日志体系一直是只出现info级别的,但是引用之后出现很多httpClient的请求. 于是网上调查了下,可以通过代码实现,就在入口程序增加该部分代码,如下. main方法测试, 使用HttpClient发送请求写一个多线程请求远程服务器,,使用httpClient 发送请求时控制台出现大量debug日志,不胜其扰,查看源码终于去除. 方法记录 // 设置默认工厂类 System.setProperty("org.apache.commons.…
Selenium是ThoughtWorks公司,一个名为Jason Huggins的测试为了减少手工测试的工作量,自己实现的一套基于Javascript语言的代码库 使用这套库可以进行页面的交互操作,并且可以重复的进行各种测试.随着网站内容的增多,原始的人工测试越发的繁杂,而且经常有遗忘的地方, 自动化测试也就显得重要起来,这里记录一下selenium webdriver的学习过程 注:我是做java的,我只学习 java 与  Selenium WebDriver 配合的方法. 第一篇 Sel…
selenium java环境的安装可以分为三个部分:jdk.eclipse和selenium. jdk jdk(java development kit)是sun公司针对java开发人员的产品,是整个java的核心,包含了java的运行环境.工具和基础类库. 1.下载新版jdk,目前是jdk8,双击安装即可,选择安装在D:\Program Files\Java\jdk1.8.0. 2.配置环境变量 3.运行cmd查看jdk版本 eclipse eclipse无需多解释,windows傻瓜式安装…
1. 简介 截止到上一篇文章为止,框架基本完全搭建完成.那么今天我们要做什么呢????聪明如你的小伙伴或者是童鞋一定已经猜到了,都测试完了,当然是要生成一份高端大气上档次的测试报告了.没错的,今天宏哥就带领你们将这部分内容也集成到这个框架中.本文来介绍如何生成自动化测试报告,前面文章尾部提到了利用HTMLTestRunner.py来生成自动化测试报告.关于HTMLTestRunner不过多介绍,只需要知道是一个能生成一个HTML格式的网页报告就可以,其他的如果你特别感兴趣可以自己去搜索查询资料.…
1. IE浏览器,需要配合下载IEDriverSever.exe的驱动程序,目前selenium支持IE9以上. (驱动程序下载链接:https://pan.baidu.com/s/1YpaUsIs128znSOBQmHdzWw 密码: mxfq). 访问搜狗主页的脚本: #VisitSogouByIE.py 访问搜狗主页例子 #encoding=utf-8 from selenium import webdriver import unittest class VisitSogouByIE(u…
原文链接:http://www.cnblogs.com/itliucheng/p/5578788.html 部分api 1.访问网站 driver.get("http://www.baidu.com"); 或者 driver.navigate().to("http://www.baidu.com"); 2.操作浏览器窗口 //声明一个point对象,两个150表示浏览器的位置相对于屏幕的左上角(0,0)的横坐标距离和纵坐标距离 Point point = new P…
部分api 1.访问网站 driver.get("http://www.baidu.com"); 或者 driver.navigate().to("http://www.baidu.com"); 2.操作浏览器窗口 //声明一个point对象,两个150表示浏览器的位置相对于屏幕的左上角(0,0)的横坐标距离和纵坐标距离 Point point = new Point(150, 150); //声明dimension对象,两个500表示浏览器窗口的长度和宽度 Dim…
第一步:建立Maven项目 Selenium 支持 maven 工程,这会让你的工作更加简便. 用 Eclipse 建个 Maven 的工程,建成后,修改 pom.xml <dependencies> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.2</version> <scope>t…
自动化测试实施过程中,测试程序中常用的页面操作有三个步骤 1.定位网页上的页面元素,并存储到一个变量中 2.对变量中存储的页面元素进行操作,单击,下拉或者输入文字等 3.设定页面元素的操作值,比如,选择下拉列表中的那个下拉列表或者输入框中输入什么值 其中定位页面元素是三步骤的第一步,本篇介绍常用的定位方法 webDriver对象的findElement函数用于定位一个页面元素,findElements函数用户定位多个页面元素,定位的页面元素使用webElement对象进行存储 常用的方法有: 1…
1.HttpClient可以读取网页(HTTP/HTTPS)内容 2.对url发送get/post请求(带不带参数都可以),进行测试 一.maven项目pom.xml需要引入包 <dependency> <groupId>org.apache.httpcomponents</groupId> <artifactId>httpclient</artifactId> <version>4.5.13</version></…
猫宁!!! 参考链接:http://www.ituring.com.cn/book/885 随书答案. 1. 某网络设备提供用于执行设备配置的 Web 界面.为什么这种功能通常易于受到操作系统命令注入攻击? 用于配置网络设备的应用程序通常包含使用正常的 Web 脚本 API 无法轻松实现的功能,如用于重新启动设备.循环访问日志文件或重新配置 SNMP 的功能.通常,使用一行操作系统命令可以轻松执行这些任务.因此,许多时候,应用程序开发者通过将相关用户输入直接合并到 shell 命令字符串中来实现…
随书答案. 某网络设备提供用于执行设备配置的 Web 界面.为什么这种功能通常易于受 到操作系统命令注入攻击? 用于配置网络设备的应用程序通常包含使用正常的 Web 脚本 API 无法轻松实 现的功能,如用于重新启动设备.循环访问日志文件或重新配置 SNMP 的功能. 通常,使用一行操作系统命令可以轻松执行这些任务.因此,许多时候,应用程 序开发者通过将相关用户输入直接合并到 shell 命令字符串中来实现这些功能. 在测试以下 URL 时: http://wahh-app.com/home/s…
Selenium Webdriver 在使用firefox 测试会牵扯到firefox的安装路径的问题 1.默认安装路径在c盘的情况下: WebDriver driver = new FirefoxDriver(); 2.安装在别的地方的,需要设置下路径 例如: System.setProperty("webdriver.firefox.bin", "D:\Program Files (x86)\Mozilla Firefox\firefox.exe"); WebD…
环境: SpringBoot pom依赖了apache.commons.HttpClient: <!--httpclient--> <dependency> <groupId>commons-httpclient</groupId> <artifactId>commons-httpclient</artifactId> <version>3.1</version> </dependency> 问题:…
一.selenium2.0简述 与一般的浏览器测试框架(爬虫框架)不同,Selenium2.0实际上由两个部分组成Selenium+webdriver,Selenium负责用户指令的解释(code),webdriver则负责对浏览器进行控制和页面解析.所以使用Selenium2.0时需要相应版本的webdriver和浏览器,程序运行过程中会通过webdriver启动一个真实的浏览器.由于webdriver+浏览器的组合,Selenium不存在对js.ajax解析的问题,它直接使用浏览器对网站代码…
Selenium WebDriver可以结合ExpectedCondition类来定义自己期望的条件 创建一个新的ExpectedCondition接口,必须实现apply方法 等待元素出现 public void testWithImplicitWait(){ System.setProperty("webdriver.chrome.driver", "chromedriver.exe"); WebDriver driver = new ChromeDriver(…
1.简介 前面宏哥一连几篇介绍如何通过开源jar包Log4j.jar.log4j2.jar和logback实现日志文件输出,Log4j和logback确实很强大,能生成三种日志文件,一种是保存到磁盘的日志文件,一种是控制台输出的日志,还有一种是HTML格式的日志文件.有时候,我们不一定都需要这些文件,在我们自动化测试框架里,我们只需要把日志文件保存到磁盘文件中,所以,这里介绍一种不用Log4j或者logback来实现日志文件写入和保存. 写着一篇文章的主要目的是后边测试框架设计就用宏哥这种自定义…
Selenium是ThoughtWorks公司,一个名为Jason Huggins的测试为了减少手工测试的工作量,自己实现的一套基于Javascript语言的代码库 使用这套库可以进行页面的交互操作,并且可以重复的进行各种测试.随着网站内容的增多,原始的人工测试越发的繁杂,而且经常有遗忘的地方, 自动化测试也就显得重要起来,这里记录一下selenium webdriver的学习过程 注:我是做java的,我只学习 java 与  Selenium WebDriver 配合的方法. 第一篇 Sel…
结合上次研究的selenium webdriver potocol ,自己写http request调用remote driver代替selenium API selenium web driver Json protocol 相关请看 http://www.cnblogs.com/tobecrazy/p/5020741.html 我这里使用的是Gson 和 httpclient 首先,起一个remote sever java -Dwebdriver.ie.driver="IEDriverSer…
Selenium Webdriver 学习: http://jarvi.iteye.com/category/203994 https://github.com/easonhan007/webdriver_guide Selenium WebDriver经验杂记:http://blog.csdn.net/ant_yan/article/details/8185899http://blog.csdn.net/aerchi/article/category/936247 1. Selenium We…
Selenium WebDriver提供了隐式等待来同步测试.当使用了隐式等待执行测试的时候,如果WebDriver没有在DOM中找到元素,将继续等待,超出设定时间后,抛出找不到元素异常 即,当元素没有立即出现的时候,隐式等待将等待一段时间后,再查找DOM.默认时间是0. 一旦设置了隐式等待,它将存在在整个webdriver对象实例的生命周期中,隐式等待会让一个正常响应的应用的测试变慢,会在寻找每个元素时进行等待,这样增加了整个测试执行的时间. 应该避免或减少使用隐式等待 //等待60s dri…
1. 获取元素文本 WebElement类的getText()方法返回元素的innerText属性.所以元素里如果有子节点一样也会被返回出来.如下所示 public class GetText { @Test public void testGetText(){ //启动driver,打开被测页面 System.setProperty("webdriver.chrome.driver", "chromedriver.exe"); WebDriver driver =…
Selenium WebDriver + Grid2 + RSpec之旅(一)             ----准备篇 前言 在Web 2.0 应用中,在浏览器种类盛行的时代,我们在测试过程中不仅要模仿不同的用户行为,还要包括不同的系统,不同的浏览器中的操作.在这种情况下,我们需要新的方法与工具来解决我们遇到的难题.用Selenium WebDriver + Grid2来实现多种浏览器功能自动化测试和并发性测试.将测试人员从繁杂的手动测试中解放出来,专注于结果分析和问题解决.(同志们!你们解脱啦…
Selenium & Webdriver 远程测试和多线程并发测试 Selenium Webdriver自动化测试,初学者可以使用selenium ide录制脚本,然后生成java程序导入eclipse中调试运行!当然录制出来的东西回放不一定能成功,还需要手工去修改:selenium自动化测试工具,但是特殊情况下也可以用来测试性能:先来介绍一下selenium 如何启动远程pc上的浏览器进行测试! 启动远程pc浏览器之前,需要下载selenium-server-standalone-2.40.0…
对于这一段还蛮有感慨的,只想说,代码还是需要自己去敲的. 1. 改变用户代理 import org.junit.AfterClass; import org.junit.BeforeClass; import org.junit.Test; import org.openqa.selenium.WebDriver; import org.openqa.selenium.firefox.FirefoxDriver; import org.openqa.selenium.firefox.Firefo…
最早接触的selenium是 selenium IDE,当时是为了准备论文.为了用IDE还下载了Firefox浏览器.后来接触过两个项目都需要selenium,一个采用selenium webdirver+junit4 +java,另外一个是采用 robot+selenium2library .总体感觉就是开源.简单.使用范围广.是网页测试必备单品. 关于selenium的好的学习资料: 官方User Guide:  http://seleniumhq.org/docs/ 官方API:  htt…
​ 实战篇是在基础之上,进一步提升的内容.通过实战篇可以深入理解Java相关框架和库的使用,能够独立开发小模块,或者按照架构师的指导进行代码编写和完善. 主要讲解核心框架和库的使用和使用场景介绍.通过对这些工作中经常使用的第三方框架和库的学习理解,更好的理解整个程序的结构和编程思想等,获得技能的提高和升华. 实战课程也会将涉及到的框架和内容应用到具体的项目中. 实战课程会涉及到常用的基础框架和库介绍: Spring MyBatis Hibernate Struts Redis 消息(JMS) Z…
selenium webdriver学习---实现简单的翻页,将页面内容的标题和标题链接取出: 该情况适合能能循环page=1~n,并且每个网页随着循环可以打开的情况, 注意一定是自己拼接的url可以打开,如:http://ask.testfan.cn/articles?page=15,就可以翻到文章分类的第15页: import java.io.File; import java.io.IOException; import java.util.ArrayList; import java.u…
Selenium WebDriver 数据驱动测试框架,以QQ邮箱添加联系人为示例,测试框架结构如下图,详细内容请阅读吴晓华编著<Selenium WebDiver 实战宝典>: ObjectMap.java /** * 使用配置文件存储测试页面上的定位和定位表达式,做到定位数据和程序的分离 */ import java.io.FileInputStream; import java.io.IOException; import java.util.Properties; import org…
下载jar包: selenium-server-standalone-2.44.0.jar 运行jar包: java -jar selenium-server-standalone-2.44.0.jar 运行后默认开启4444端口 python请求代码: # -*- coding: utf-8 -*- from selenium import webdriver from selenium.webdriver.common.desired_capabilities import DesiredC…