3
嗨我是AngularJS和測試JS的新手。我需要用maven運行我的測試。我爲一個小應用程序創建了一個控制器和一個服務,他們正在工作。現在我想編寫測試(是的,打破了編寫測試的規則,同時開發)爲我有的JS代碼。到目前爲止,我已經設法用maven調用測試。使用Maven運行AngularJS測試
我正在使用jasmine-maven-plugin。
<plugin>
<groupId>com.github.searls</groupId>
<artifactId>jasmine-maven-plugin</artifactId>
<version>1.3.1.3</version>
<executions>
<execution>
<goals>
<goal>test</goal>
</goals>
</execution>
</executions>
<configuration>
<jsSrcDir>src/main/webapp/js</jsSrcDir>
<jsTestSrcDir>src/test/webapp/js</jsTestSrcDir>
<specIncludes>
<include>*Spec.js</include>
</specIncludes>
</configuration>
</plugin>
當運行MVN測試我看到下面的
[INFO] ---茉莉Maven的插件:1.3.1.3:測試(默認)@莢經理的Web昂 - - 2013-10-14 14:57:34.322:INFO:oejs.Server:jetty-8.1.13.v20130916 2013-10-14 14:57:34.378:INFO:oejs.AbstractConnector:Started [email protected]。 0.0:56475 [INFO]執行茉莉花規格
然後失敗wi下面第
[ERROR] Caused by: net.sourceforge.htmlunit.corejs.javascript.EcmaError: ReferenceError: "angular" is not defined. (http://localhost:56475/src/controllers/controller.js#3)
[ERROR] at net.sourceforge.htmlunit.corejs.javascript.ScriptRuntime.constructError(ScriptRuntime.java:3603)
[ERROR] at net.sourceforge.htmlunit.corejs.javascript.ScriptRuntime.constructError(ScriptRuntime.java:3587)
[ERROR] at net.sourceforge.htmlunit.corejs.javascript.ScriptRuntime.notFoundError(ScriptRuntime.java:3657)
[ERROR] at net.sourceforge.htmlunit.corejs.javascript.ScriptRuntime.name(ScriptRuntime.java:1685)
消息的問題是,我應該把angular.js等角度JS文件這些測試運行?
您好kseb,感謝您的迴應,爲什麼我需要jQuery文件,現在我的代碼工作正常,沒有他們。這是我需要運行單元測試嗎? – Sri
由於jqLite實現有限,我需要jQuery。我從jQuery使用更多的東西。所以對我來說重要的是要包括它。儘管你的需求可能不同。 – kseb
使用preloadSources標記是我原始問題的正確選項。但我仍然無法讓測試運行無頭,我可以使用「mvn jasmine:bdd」命令運行它們。我沒有包含jquery,因爲我不需要它們。 – Sri