从java类运行geb测试
我最近偶然发现了geb ,它看起来像是在我们的Web应用程序上执行集成测试的好方法。 我们的平台都是基于java的,从阅读它
“通过与流行的测试框架集成,例如…… JUnit,TestNG ……,Geb为function性Web测试提供了一流的支持。”
我假设从java类执行测试很容易(testng测试?)。
我是groovy和geb的新手。
到目前为止,我已经在我的pom中包含了geb-testng和groovy:
org.codehaus.geb geb-testng 0.7.0 org.codehaus.groovy groovy 1.8.6
…但是我找不到任何创建测试并从java类运行它的示例。
帮助赞赏。
Geb是为Groovy代码设计的,并且只能从中使用。 这主要是由于其API的动态特性。 你可以选择使用哪个测试框架(JUnit,TestNG,Spock等)。 由于Geb本身只是一个库,它也可以在没有测试框架的情况下使用,例如自动化与网站的交互。
如果你需要坚持Java,你将不得不使用像Selenium2这样的东西,这是Geb在封面下使用的东西。
我在搜索Geb-TestNG示例时遇到了这个问题。 这是为我工作的:
import geb.testng.GebTest import org.testng.annotations.Test class GroovyYourTestClass extends GebTest { @Test void "should test something"() { to YourPageObject // ... } }
如果你使用Java,那么Geb的最佳替代品是恕我直言( http://selenide.org )
快速入门指南中的示例:
@Test 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一起使用