- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试在基于功能测试阶段的自定义测试阶段运行我的 JavaScript 测试。基本上它需要:
首先,我基于这个 post 创建了自定义测试阶段.所以我的 _Events.groovy 看起来像
includeTargets << new File("${basedir}/scripts/_RunJavaScriptUiTests.groovy")
eventConfigureTomcat = { tomcat ->
tomcat.connector.setAttribute("compression", "on")
tomcat.connector.setAttribute("compressableMimeType", "text/html,text/xml,text/plain,application/javascript")
tomcat.connector.port = serverPort
}
eventAllTestsStart = {
phasesToRun << "uijs"
}
uijsTests = ["uijs"]
uijsTestPhasePreparation = {
functionalTestPhasePreparation()
}
uijsTestPhaseCleanUp = {
functionalTestPhaseCleanUp()
}
eventTestPhaseEnd = { phase ->
if( phase == "uijs" ) {
runJavaScriptUiTests()
}
}
接下来,我决定使用 PhantomJS打开我的页面并分析执行的测试。所以我在 RunJavaScriptUiTests.groovy 脚本中使用了它
target(runJavaScriptUiTests:"Running Siesta tests") {
event("StatusUpdate", ["Siesta test phase..."])
//this is the script that evaluates the result of the tests
File script = new File("web-app/js/siesta/siesta-phantomjs-runner.js")
String home = System.getenv("PHANTOMJS_HOME")
if(!home) {
throw new RuntimeException("PHANTOMJS_HOME must be set.")
}
String executable = "${home}bin${File.separator}phantomjs"
String port = System.getProperty("server.port","8080")
String url = "http://localhost:$port/insoft-ext-ui/siesta" //url of my tests
println "Running Phantomjs ${executable} ${script.absolutePath} "
try {
ant.exec(executable: executable, outputproperty: "cmdOut", failonerror: 'true', errorproperty: "cmdErr") {
arg(value: script.absolutePath)
arg(value: url)
}
}catch(e) {
println "ERROR: $e"
throw e
}
try {
String output = "${ant.project.properties.cmdOut}"
println output
}catch(e) {
event("StatusError",["Exception $e"])
}
}
我可以看到 functionalTestPhasePreparation 正在运行,因为这会正确启动我的应用程序。我还可以看到 phantomjs 命令在打印时是正确的:
Running: /desenv/phantomjs-1.9.2/bin/phantomjs /desenv/java/projetos/insoft-ext-ui/web-app/js/siesta/siesta-phantomjs-runner.js http://localhost:8080/insoft-ext-ui/siesta
但这给了我groovy.lang.MissingPropertyException
groovy.lang.MissingPropertyException: No such property: org.codehaus.grails.INCLUDED_JS_LIBRARIES for class: org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestWrapper
at org.codehaus.groovy.runtime.ScriptBytecodeAdapter.unwrap(ScriptBytecodeAdapter.java:50)
at org.codehaus.groovy.runtime.callsite.PojoMetaMethodSite$PojoMetaMethodSiteNoUnwrapNoCoerce.invoke(PojoMetaMethodSite.java:273)
at org.codehaus.groovy.runtime.callsite.PojoMetaMethodSite.call(PojoMetaMethodSite.java:53)
at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:45)
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:108)
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:116)
at org.codehaus.groovy.grails.web.filters.JavascriptLibraryFilters$_closure1_closure2_closure3.doCall(JavascriptLibraryFilters.groovy:27)
at org.codehaus.groovy.grails.web.filters.JavascriptLibraryFilters$_closure1_closure2_closure3.doCall(JavascriptLibraryFilters.groovy)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
有关完整的 Stacktrace,请参阅 here .
有趣的是,如果我只是这样做
grails test run-app
phantomjs /desenv/java/projetos/insoft-ext-ui/web-app/js/siesta/siesta-phantomjs-runner.js http://localhost:8080/insoft-ext-ui/siesta
脚本有效,我没有遇到任何异常。
为什么会抛出 MissingPropertyException?我查看了 JavascriptLibraryFilters 并没有找到它的原因。
编辑
我正在使用 Grails 附带的嵌入式 Tomcat,但在 _Events.groovy 中启用了压缩:
eventConfigureTomcat = { tomcat ->
tomcat.connector.setAttribute("compression", "on")
tomcat.connector.setAttribute("compressableMimeType", "text/html,text/xml,text/plain,application/javascript")
tomcat.connector.port = serverPort
}
最佳答案
我没有直接的解决方案,但我可以帮助您研究这个问题。
您的问题的根源显然是 org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestWrapper
,它在您的 Tomcat 环境中应用,这解释了为什么您的代码可以独立运行。
Stack Overflow 上还存在涉及同一 Spring 类的其他问题。其中大部分是关于不正确的多部分请求处理的问题。 这会让我相信 PhantomJS 正在进行多部分调用,而没有适合您的环境的转换或接口(interface)。我怀疑可能需要更改您的 Tomcat 或 Grails 配置。
以下是我提到的几个 SO 问题:
这是 Grails/CXF 上的潜在相关错误:
Config.groovy
中设置选项 grails.web.disable.multipart=true
来禁用 Grails 的多部分处理>”请提供有关您的 Tomcat/Grails 设置的任何详细信息和/或确认您已调查这些潜在的问题路径,以便我们对它们进行折扣。
希望这个答案能为您或其他人指明正确的方向,从而找到合适的解决方案。
关于spring - 没有这样的属性 : org. codehaus.grails.INCLUDED_JS_LIBRARIES,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18959329/
所以 codehaus 关闭了(显然是在周末):https://www.codehaus.org/ 现在它在这里说“Maven:所有存储库都镜像到 Central,我们的 Nexus 由 Sonaty
我们有一些引用“http://enunciate.codehaus.org/schemas/enunciate-1.27.xsd”的 XML 文件',现在已经消失了。 我正在使用的当前子: https
eclipse 中这个被上帝遗忘的错误不会消失。我已经尝试了这里和其他地方提到的所有东西来摆脱它,但它不会消失,现在我不能在 eclipse 中使用 Web 服务实用程序,因为它提示这个“问题”,这显
我创建了一个服务 公共(public)类 JsonSpiceService 扩展了 SpringAndroidSpiceService{ @Override public Re
我正在使用 Java 11、Spring Boot 2.1.1 和 Apache CXF 3.2.7 公开导入 XSD 架构的 SOAP Web 服务。在 WSDL 中它显示为: 当我发送查询失败
仅当将“-p”添加到 org.codehaus.mojo:exec-maven-plugin:1.6.0:exec 插件时,以下 pom.xml 执行才会失败,删除此参数后它运行正常,但我需要争论,有
本文整理了Java中org.codehaus.xfire.XFireException类的一些代码示例,展示了XFireException类的具体用法。这些代码示例主要来源于Github/Stacko
我正在尝试使用NetBeans构建JavaFX项目,但是当我运行它时,我有一个this: Plugin org.codehaus.mojo:exec-maven-plugin:1.2.1 or one
关闭。这个问题不满足Stack Overflow guidelines .它目前不接受答案。 想改善这个问题吗?更新问题,使其成为 on-topic对于堆栈溢出。 3年前关闭。 Improve thi
本文整理了Java中org.codehaus.stax2.validation.XMLValidationSchema类的一些代码示例,展示了XMLValidationSchema类的具体用法。这些代
本文整理了Java中org.codehaus.stax2.validation.XMLValidator类的一些代码示例,展示了XMLValidator类的具体用法。这些代码示例主要来源于Github
本文整理了Java中org.codehaus.stax2.validation.XMLValidationException类的一些代码示例,展示了XMLValidationException类的具体
本文整理了Java中org.codehaus.xfire.client.XFireProxyFactory类的一些代码示例,展示了XFireProxyFactory类的具体用法。这些代码示例主要来源于
本文整理了Java中org.codehaus.cargo.util.XmlReplacement类的一些代码示例,展示了XmlReplacement类的具体用法。这些代码示例主要来源于Github/S
本文整理了Java中org.codehaus.cargo.util.XmlUtils类的一些代码示例,展示了XmlUtils类的具体用法。这些代码示例主要来源于Github/Stackoverflow
截至今天,我突然在一个我有一段时间没有打开但以前工作的旧项目中遇到错误。 错误:程序类型已经存在:org.codehaus.jackson.JsonParser$1 它随机发生在各种 org.code
如何为对象读取器应用反序列化功能 (FAIL_ON_UNKNOWN_PROPERTIES)?我知道如何为 objectMapper 完成它,但是如何在 codehaus jackson 中的 obje
我从一本书下载的一个项目中有以下 pom.xml... 我收到以下错误, 无法在 http://snapshots.repository.codehaus.org 中找到 org.codehaus.m
本文整理了Java中org.codehaus.enunciate.contract.jaxws.WebMethod类的一些代码示例,展示了WebMethod类的具体用法。这些代码示例主要来源于Gith
本文整理了Java中org.codehaus.xfire.XFireException.()方法的一些代码示例,展示了XFireException.()的具体用法。这些代码示例主要来源于Github/
我是一名优秀的程序员,十分优秀!