5

我無法弄清楚如何使用Play Framework或Play Integration測試來進行Angular e2e測試。如果我不能這樣做,我覺得AngularJS會失去很多價值。我不知道如何去玩e2e。就Play集成測試而言,webDriver可以看到ng屬性,但與我嘗試的代碼的情況一樣,它不能模擬正確的行爲。任何人都有類似的經驗或解決方案?如何使用AngularJS e2e測試或使用Play測試玩Play Framework

或者,對於Angular(例如具有良好庫的MVC框架)來說,它可以更好地與Play測試集成,並且可以幫助我減少前端代碼的行數?我已經在使用coffeescript,jQuery和Bootstrap了。謝謝!

+0

這取決於它的webdriver您使用。你有沒有試過PhantomJS?我發現PhantomJS非常強大。 – Tanin

回答

1

請多關注一下「正確的行爲」。什麼是錯誤?將e2e測試與Play工作流程集成在一起,還是隻讓e2e AngularJS綠色而不是紅色?

這裏的困難在於定義「端到端」,因爲它沒有很好的定義,在維基百科中沒有提及它。你可以有一個很好的想法,它只是因爲它是自言自語,而且還有一個關於端到端的優秀線索: http://www.geekinterview.com/question_details/40319

因此,假設您要測試所有場景與Front + Back在一個貼近生產環境中。

端到端測試AngularJS應該和Karma一起完成,但是,警告,它很快就會被ProtractorJS改變。

做端到端測試與噶有嚴重的缺陷:

  • ,如果你與你的後端測試AngularJS應用程序可能會失敗,更具體地講,任何一點點的後端太慢可能會導致綠色測試有時失敗並沒有充分的理由。

  • 兇手未特點做適當的端到端的測試與角度是:你不能雙擊,滾動鼠標等

這裏是我的建議:

  • 只使用Karma進行前端測試,並使用良好的舊存根作爲後端。檢查正確的CSS元素將被顯示,並提供正確的HTTP請求。它會讓你對前端開發有很大的信心。

  • 請勿使用Karma進行端到端測試。我發現Sikuli完成這項工作非常出色。與fitnesse或testNG配合使用可以更好地集成。

  • 可能是ProtractorJS將在不久的將來完成這項工作。

Sikuli:FitNesse的+ sikuli的http://www.sikuli.org/

例如:https://github.com/xebia/FitnesseSikuli

量角器:https://github.com/angular/protractor

+0

您是否已經成功通過Play進行測試? – danielbh

+0

不適用於播放,但在appengine上使用Java後端。是的,這種方式非常成功。我希望會有其他答案,因爲這是一個有趣的問題,可能有很多可能的好答案。我不是說我的方式是做的,我只是說它已被證明是成功的......至少一次;) – bdavidxyz

+0

好的謝謝你的建議。我會研究一切。 – danielbh

相關問題