目的:

趁着清明假期临近把手头工作整理了一下,前段时间老大给了一个selenide研究的任务,虽然对selenium的应用比较熟悉,但是以前一直没怎么研究过其他衍生的技术,在研究过程中发现国内好多帖子只是把selenide官网上的内容谷歌翻译了一下就贴出来了,可能对国内一些想学习自动化的小白们摸不到头脑,还不如直接对原著,所有本次总结直接从小白基础做起,下面直接进入主题。

selenide简介:

说白了selenide就是基于Selenium WebDriver进一步封装的自动化测试框架。

优点:

  • 简练的流式API
  • 支持Ajax稳定性测试
  • 强大的真正页面对象选择器

使用Selenide无需考虑怎样关闭浏览器、处理超时和StaleElement异常、搜索相关的日志信息以及调试测试代码。只需要关心业务逻辑,剩下的教给Selenide完成就好!

selenide部署(Windows版本):

selenide部署的前提条件是要已安装eclipse和git,相关的安装这里就不做任何介绍了,无论你是多小的小白都可以通过度娘把它们安装完成,这个也算一道门槛吧,如果这个门槛你还不能迈过,我只能建议你go home。

建议git选择安装版不要用便携版

启动git CMD,在窗口中输入“git clone https://github.com/codeborne/selenide.git”检出(克隆)一个版本到本地,如下图所示:

执行成功之后,继续输入:cd selenide 跳转到下载后的文件夹中,一般文件检出在执行命令的文件夹路径下,如下图所示:

跳转到selenide路径下执行:gradle jar,如下图所示:

看到执行结果显示是否成功,也可以输入:gradle.bat jar,如下图所示:

执行成功后可以看到selenide文件夹下多了一个build文件夹,如下所示:

之后启动eclipse,创建新的项目,如下图所示:

如果没有其他需求配置直接点击完成即可。创建成功后,在新创建的项目中添加selenide类库,如下图所示:

创建一个selenide的用户库,选择添加的外部类为build文件夹中lib和libs内的所有jar,如下图所示:

注:此截图为已有库,创建新的用户库很简单,按照1、2、3、4的顺序添加完外部jar后点击“确定”按钮即可。

创建用户库后点击“确定”按钮,并将selenide用户库添加到项目下,如下图所示:

selenide实例:

在项目中创建类,输入以下代码,如下图所示:

代码内容:

package demo.zoom;

import org.junit.Test;
import org.openqa.selenium.By;
import com.codeborne.selenide.Configuration;
//import com.codeborne.selenide.SelenideElement;
//import com.gargoylesoftware.htmlunit.Page;
import static com.codeborne.selenide.Selenide.*;
import static com.codeborne.selenide.Selectors.*;
//import static com.codeborne.selenide.Condition.*;
//import static com.codeborne.selenide.Selenide.$;;
public class testcc {
@Test
public void userCanLoginByUsername() throws Exception {
Configuration.browser = "chrome"; //打开谷歌浏览器,否则默认使用火狐
open("https://www.baidu.com"); //打开百度首页
$(By.name("wd")).val("selenide").pressEnter(); //搜索在输入框中selenide,回车
Thread.sleep(1500); //为了看到效果我们睡眠1.5秒
$(byText("_百度翻译")).click(); //点击链接字段为“_百度翻译”的链接
Thread.sleep(2500); //为了看到效果睡眠2.5秒
}
}

保存代码后,选择该类名java后右键进行调试,且选择JUnit测试方式(如果没有该方式可以通过Eclipse Marketplace中查找安装)如下所示:

执行结果如下图所示:

到此一个简单的实例基本执行完成

selenide小白教程的更多相关文章

  1. cocos2d-x3.9利用cocos引擎一键打包Android平台APK(C++小白教程)

    链接地址:http://www.cocoachina.com/bbs/read.php?tid=333937 cocos2d-x3.9利用cocos引擎一键打包Android平台APK(C++小白教程 ...

  2. 制作Windows10政府版的小白教程

    制作Windows10政府版的小白教程 https://03k.org/make10entg.html 首先,宿主系统要比操作的系统新,因为低版本dism操作不了: 当然也可以单独下载ADK,提取最新 ...

  3. git与github建立仓库连接步骤(纯小白教程)

    一.先对git 进行用户设置 首先你得在网上下载git软件并且安装,一路默认安装就好了,然后就可以开始本地仓库的建立了.打开你安装好的git, 在开始菜单里面找到git文件夹里面的git bash端 ...

  4. 搭建个人wordpress博客(小白教程)

    新浪sae平台现在是有个免费个人空间使用,现在,教您如何使用该平台搭建属于自己的个人网站,本教程以wordpress程序安装包搭建个人网站. 申请新浪云账号 如果我们使用SAE新浪云计算平台作为服务器 ...

  5. cocos游戏开发小白教程网站

    <Quick-Cocos2d-x v3.3小白书系列教程> <Quick-Cocos2d-x初学者游戏教程>

  6. MYSQL安装--小白教程

    这个是mysql的安装过程,其实mysql的安装也很简单,但是我安装了一下午!!一下午!!原因就是,我把mysql的官网都翻遍了,都没找到64bit的.msi安装包,后来才想到好像64bit的电脑可以 ...

  7. SVM小白教程(1):目标函数

    关于 SVM(支持向量机),网上教程实在太多了,但真正能把内容讲清楚的少之又少.这段时间在网上看到一个老外的 svm 教程,几乎是我看过的所有教程中最好的.这里打算通过几篇文章,把我对教程的理解记录成 ...

  8. win7下安装linux(centos6.5)双系统详细小白教程

    在正式介绍linux安装教程之前,先声明一下本人也是刚开始接触linux,所以教程只以成功安装linux为目标,里面的具体步骤我都是参考网上的教程自己操作实现的,至于为什么要这么做就不多做解释,大家想 ...

  9. 超详细Hexo+Github博客搭建小白教程

    原文链接:超详细Hexo+Github博客搭建小白教程 去年9月的时候开始搭建了第一个自己的独立博客,到现在也稍微像模像样了.很多小伙伴应该也想过搭建一个自己的博客,网上也有一堆详细教程.我在此稍稍总 ...

随机推荐

  1. 复制vmware中的centos后无法上网问题

    复制vmware中的centos后无法上网问题 查看IP命令 ip addr 网卡信息 eth1: mtu 1500 qdisc pfifo_fast state UP qlen 1000 使用的是e ...

  2. JAVA三大特性之二——继承

    很多人在学习了JAVA以后,都会了解这个概念,而且继承也会在以后的开发中经常用到,但对于JAVA的继承特性,很多人都了解的不够深入,不够完整,当然这其中包括我,所以我就想抽点时间来整理一下JAVA继承 ...

  3. Matlab将三维变量分割为多个二维变量的方法

    最近在处理 Matlab 中的三维矩阵的时候,遇到了一个问题: 假如m 为 5*5*5的矩阵,如果以第三个维度为基础,分割为5个不同的矩阵 m1,m2,m3,m4,应该如何解决? 解决方法:eval函 ...

  4. HAProxy实战

    实验目的 测试基于haproxy的反代和负载均衡配置 测试keepalived高可用haproxy的效果 实验要点 (1) 动静分离discuzx,动静都要基于负载均衡实现: (2) 进一步测试在ha ...

  5. ASP.NET MVC 导出Word报表

    最近要做MVC导出Word报表功能.查了查资料发现一个好用的插件就是Aspose.Word.这个插件也很有名气,也很好用. 1.首先就是引用该插件 2.填充Word模版 3.后台操作 private ...

  6. keepalived 安装配置

    keepalived介绍 1. keepalived 是lvs 的扩展项目,因此它们之间具备良好的兼容性. 2. 通过对服务器池对象的健康检查,实现对失效机器/服务的故障隔离. 3. 负载均衡器之间的 ...

  7. android保存照片到相册的一些事

    由于最近工作需求的原因,有一个功能就是将webView里面的照片保存到本地,并且能够直接在相册中有一个及时的反馈. 项目中,具体是实现流程是这样的设计webview点击交互事件,当点击webview中 ...

  8. Springboot启动源码详解

    我们开发任何一个Spring Boot项目,都会用到如下的启动类 @SpringBootApplication public class Application { public static voi ...

  9. [BNUZOJ1261][ACM][2016北理校赛]方块消除(栈,字符串)

    玩过方块消除游戏吗?现在规定当有两个或两个以上相邻且颜色相同的方块在一起的时候,它们就会产生消除反应.当存在多个消除反应同时产生时,最下的反应先执行.现在只给你其中一列,求最后剩下的方块结果. 输入要 ...

  10. 使用python操作InfluxDB

    环境: CentOS6.5_x64InfluxDB版本:1.1.0Python版本 : 2.6 准备工作 启动服务器 执行如下命令: service influxdb start 示例如下: [roo ...