2012-04-03 51 views
5

我正在使用Play框架2.0。我想用Selenium編寫一些基於瀏覽器的驗收測試,但是我從來沒有使用過Selenium,所以不必將它與Play或Scala集成在一起。Playframework 2.0和Selenium入門

什麼是我可以複製和工作的基本設置?

+0

我能找到的唯一的文檔涉及玩1.0,我還沒有嘗試進行播放2.0適應。無論如何,我認爲應該有一個人們可以「從這裏開始」的地方。 – 2012-04-03 08:28:47

+7

請閱讀[文檔](http://www.playframework.org/documentation/2.0/ScalaFunctionalTest)。如果您確實想複製粘貼代碼,請查看示例。 – 2012-04-03 08:35:19

+0

作者golly你是對的!說實話,我沒有從文檔中拿走它已經安裝和配置好的文檔。我正在瀏覽Selenium和Web驅動程序頁面,我的眼睛讓人難以置信。我想我應該先嚐試一下。 – 2012-04-04 03:55:01

回答

1

下面是一個關於如何使用HTMLUnit的例子,如果這對您有幫助。

靈感來自: https://github.com/joscha/Play20/blob/master/samples/scala/computer-database/test/IntegrationSpec.scala

import org.specs2.mutable._ 
import play.api.test._ 
import play.api.test.Helpers._ 
import org.fluentlenium.core.filter.FilterConstructor._ 
class IntegrationSpec extends Specification { 
    "Application" should { 
    "work from within a browser" in { 
     running(TestServer(3333), HTMLUNIT) { browser => 
     browser.goTo("http://www.myRockstartDomain.com:3333/") 
      browser.$("header h1").first.getText must contain("Play 2.0 sample application — Computer database") 
      browser.$("#pagination li.current").first.getText must equalTo("Displaying 1 to 10 of 574") 
      browser.$("#pagination li.next a").click() 
      browser.$("#pagination li.current").first.getText must equalTo("Displaying 11 to 20 of 574") 
      browser.$("#searchbox").text("Apple") 
      browser.$("#searchsubmit").click() 
     } 
    } 
    } 
} 
+0

很好的例子 - 因爲頁面可以被移動/刪除,所以最好複製內容(已修改,或者僅限於必要)。 – 2013-08-30 07:58:35