selenide小白教程
目的:
趁着清明假期临近把手头工作整理了一下,前段时间老大给了一个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小白教程的更多相关文章
- cocos2d-x3.9利用cocos引擎一键打包Android平台APK(C++小白教程)
链接地址:http://www.cocoachina.com/bbs/read.php?tid=333937 cocos2d-x3.9利用cocos引擎一键打包Android平台APK(C++小白教程 ...
- 制作Windows10政府版的小白教程
制作Windows10政府版的小白教程 https://03k.org/make10entg.html 首先,宿主系统要比操作的系统新,因为低版本dism操作不了: 当然也可以单独下载ADK,提取最新 ...
- git与github建立仓库连接步骤(纯小白教程)
一.先对git 进行用户设置 首先你得在网上下载git软件并且安装,一路默认安装就好了,然后就可以开始本地仓库的建立了.打开你安装好的git, 在开始菜单里面找到git文件夹里面的git bash端 ...
- 搭建个人wordpress博客(小白教程)
新浪sae平台现在是有个免费个人空间使用,现在,教您如何使用该平台搭建属于自己的个人网站,本教程以wordpress程序安装包搭建个人网站. 申请新浪云账号 如果我们使用SAE新浪云计算平台作为服务器 ...
- cocos游戏开发小白教程网站
<Quick-Cocos2d-x v3.3小白书系列教程> <Quick-Cocos2d-x初学者游戏教程>
- MYSQL安装--小白教程
这个是mysql的安装过程,其实mysql的安装也很简单,但是我安装了一下午!!一下午!!原因就是,我把mysql的官网都翻遍了,都没找到64bit的.msi安装包,后来才想到好像64bit的电脑可以 ...
- SVM小白教程(1):目标函数
关于 SVM(支持向量机),网上教程实在太多了,但真正能把内容讲清楚的少之又少.这段时间在网上看到一个老外的 svm 教程,几乎是我看过的所有教程中最好的.这里打算通过几篇文章,把我对教程的理解记录成 ...
- win7下安装linux(centos6.5)双系统详细小白教程
在正式介绍linux安装教程之前,先声明一下本人也是刚开始接触linux,所以教程只以成功安装linux为目标,里面的具体步骤我都是参考网上的教程自己操作实现的,至于为什么要这么做就不多做解释,大家想 ...
- 超详细Hexo+Github博客搭建小白教程
原文链接:超详细Hexo+Github博客搭建小白教程 去年9月的时候开始搭建了第一个自己的独立博客,到现在也稍微像模像样了.很多小伙伴应该也想过搭建一个自己的博客,网上也有一堆详细教程.我在此稍稍总 ...
随机推荐
- Baidu图表插件--Eharts使用(柱状图)
官网链接:http://echarts.baidu.com/index.html 官网的demo,api都很详细:我就分享下我的学习步骤 首先定义一个显示图标的区域: <div id=" ...
- InnoDB和Foreign KEY Constraints
InnoDB表中中Foreign Key定义 1. InnoDB允许a foreign key引用一个索引列或者索引组列. 2. InnoDB现在并不支持用户定义的分区表有foreign keys,这 ...
- 安装和配置Symfony
为了简化创建新项目的过程,Symfony提供一个安装程序. 安装Symfony Installer 使用Symfony Installer是创建新的Symfony项目的唯一推荐方式,这个install ...
- 征服恐惧!用 Vim 写 iOS App
我们都知道 Vim 和 Emacs 都是文本编辑器中的上古神器,你也许用 ctags,cscopes 配合 Vim 完成过大型 C 或者 C++ 的开发,你也许配合过其他插件,完成过 JavaScri ...
- C:\Users\用户名\AppData里面的文件可以删除吗
很多人发现电脑中C:\Users\用户名\AppData 占据了很大的空间,那么可以将其删除吗?下面为大家详细介绍相关知识! C:\Users\用户名\AppData里面一般有三个文件夹,分别是Loc ...
- UML类图中的关系和表示方法
类图是用来描述程序中的类以及它们之间的关系的,使用类图可以帮助我们简化对系统的理解.在UML类图中比较常见的关系有六种,它们分别是:依赖.关联.聚合.组合.泛化.实现,这六种关系中类之间的紧密程度是依 ...
- P177 test 6-4 UVa439
//P177 test 6-4 UVa439 #include<cstdio> #include<cstring> #include<queue> using na ...
- c++类的构造函数详解
c++类的构造函数详解 一. 构造函数是干什么的 class Counter{ public: // 类Counter的构造函数 // 特点:以类名作为函数名,无返回类 ...
- canvas绘图不清晰的解决方案
现象描述 同样大小的图片(60x60px)用canvas和DOM绘制,结果发现canvas的画面质量要差很多.结果如下图所示. 上图中,左侧红框中的金币采用DOM绘制,右侧和下方的金币和文字等使用ca ...
- 第27篇 重复造轮子---模拟IIS服务器
在写程序的时候,重复造轮子是程序员的一个大忌,很多人对重复造轮子持有反对的态度,但是我觉得这个造轮子的过程,是对于现有的知识的一个深入的探索的过程,虽然我们不可能把轮子造的那么的完善,对于现在有的东西 ...