SELENIDE是什么?
Selenide是一个由Selenium WebDriver驱动的自动化测试框架,具备以下优点:
- 简练的流式API
- 支持Ajax稳定性测试
- 强大的真正页面对象选择器
使用Selenium无需考虑怎样关闭浏览器、处理超时和StaleElement异常、搜索相关的日志信息以及调试测试代码。只需要关心业务逻辑,剩下的教给Selenide完成就好!
快速上手
Selenide上手异常简单,不像高精尖技术那么困难。
将 selenide.jar 添加到项目中就可以了。下面是上手快Selenium速指南。
Maven用户:
将以下内容添加到pom.xml:
<dependency>
<groupId>com.codeborne</groupId>
<artifactId>selenide</artifactId>
<version>3.1</version>
<scope>test</scope>
</dependency>
Ivy用户:
将以下内容添加到ivy.xml:
<ivy-module>
<dependencies>
<dependency org="com.codeborne" name="selenide" rev="3.1"/>
</dependencies>
</ivy-module>
Gradle用户:
将以下内容添加到build.gradle:
dependencies {
testCompile 'com.codeborne:selenide:3.1'
}
开始编写测试
编写测试同样非常简单!没有乏味的测试例程,让我们开始吧:
导入需要的类:
import static com.codeborne.selenide.Selenide.*;
import static com.codeborne.selenide.Condition.*;
编写测试:
<a href="http://www.jobbole.com/members/madao">@Test</a>
public void userCanLoginByUsername() {
open("/login");
$(By.name("user.name")).setValue("johny");
$("#submit").click();
$(".loading_progress").should(disappear); // Waits until element disappears
$("#username").shouldHave(text("Hello, Johny!")); // Waits until element gets text
}
准备完毕!
你可以选择任何喜欢的测试框架:JUnit、TestNG、Cucumber、ScalaTest、JBehave等。
作为普通测试运行。可以从IDE中运行,也可以作为ANT脚本或者”mvn test”运行。不需要对你通常的测试流程做任何改变。
想看一个实际可工作的示例?
我们在github上创建了 Selenide 示例 小组,提供了丰富的Selenide使用示例:
- Gmail测试
- Google search测试
- 真实的internet-bank测试
- Hangman game:使用了Selenide的开源示例项目
- 等等
开发资源
官方网站:http://selenide.org/
开源地址:https://github.com/codeborne/selenide
网友评论