在JUnit 3中,我可以得到当前运行的测试的名称,如下所示:
public class MyTest extends TestCase
{
public void testSomething()
{
System.out.println("Current test is " + getName());
...
}
}
Run Code Online (Sandbox Code Playgroud)
这将打印"当前测试是testSomething".
在JUnit 4中是否有任何开箱即用或简单的方法可以做到这一点?
背景:显然,我不想只打印测试的名称.我想加载存储在与测试同名的资源中的特定于测试的数据.你知道,约定优于配置和所有这些.
我正在使用Scala中的地图并执行通常的"如果没有与键关联的值,创建它,将其放入地图并返回它":
def alphaMemory(key : AlphaMemoryKey) = {
var am = map.getOrElse(key, null)
if(am == null) {
am = new AlphaMemory(key)
map.put(key, am)
}
am
}
Run Code Online (Sandbox Code Playgroud)
对我来说,这并不像惯用的Scala代码.感觉像Java.有没有更简洁的写作方式?看起来我可以覆盖Map.default()来插入新值并返回它.不过不确定.
谢谢!
我想知道我是否遗漏了一些关于Java Bean的东西.我喜欢我的对象在构造函数中尽可能多地进行初始化,并且具有最少数量的mutator.豆似乎直接反对这一点,并且通常感到笨重.我没有将我的对象构建为Beans而错过了哪些功能?
我目前正在使用用Java实现的专门的,解释性的编程语言.作为该语言的一小部分,我想添加调用Java的能力.在深入研究反射的所有细节之前,我想知道是否有人知道一个通用库来执行反向调用Java代码的"后端"部分.
也就是说,我将一个字符串(我定义语法)解析为一些表示Java方法调用(或构造函数或字段访问)的数据结构,然后将该数据结构传递给调用该调用并返回结果的库.特别是,我希望它已经处理了我不想弄清楚的所有边缘情况:
我花了一点时间在JVM上查看动态语言的实现,但这些通常比我正在寻找的要复杂得多,或者针对特定语言进行了高度优化.
另一个选择是将我的语法转换为某种动态语言的字符串,并使用Rhino或其他东西调用它,但这比我正在寻找的开销稍微多一些.
谢谢!
有没有人知道用于交互式编辑 图形(节点和边缘)的基于Web的框架?Flash或Javascript很好.我正在寻找像Eclipse中的GEF,或JGraph,或NetBeans图框架.谢谢!
为了清楚起见,我对编辑数学图形(节点和边)的工具感兴趣,而不是图表工具.
我知道JVM可以在运行时进行一些非常严肃的优化,尤其是在-server模式下.当然,JVM需要一段时间才能稳定下来并达到最佳性能.有没有办法拍摄这些优化的快照,以便下次运行应用程序时可以立即应用它们?
"嘿JVM!我的代码优化很棒.你能为我以后写下来吗?"
有谁知道用于生成图像的任何模板引擎,最好是基于Java的?
我想到的是像StringTemplate,你有一组参数化模板,渲染到图像(或SVG等)而不是文本.它需要比"在此处插入文本以生成符号"更为通用.基元可以是各种形状,其他图像,文本等.
我意识到我可以使用生成SVG的文本模板引擎轻松地构建这个,但我正在寻找一些"开箱即用"的东西.
谢谢!
详细说明,这里有一些我正在寻找的完全组成的语法.Image我想生成一个带有一些状态叠加层的图标(比如Eclipse中的图标):
iconTemplate(base, status, svn) {
image($base), // the base icon
// create a 2x2 grid for status overlays
gridlayout(2, 2) {
// conditionally add overlays in corners based on parameters
if($status == "error") {
image("error.png") {
layoutInfo : cell(1, 0)
}
}
if($svn == "changed") {
image("changed.png") {
layoutInfo : cell(1, 1)
}
}
}
}
Run Code Online (Sandbox Code Playgroud)
请注意,这个语法已经完成,显然很糟糕,但也许它可以实现:)
出于学习目的,我正在寻找开源Rails项目,这些项目举例说明了用于BDD的RSpec的惯用法.我可以找到项目,但是我对Rails或RSpec的经验不足以了解我所看到的是否代表最佳实践.谢谢!
我正在开发一个OSGi包,它实现了一个服务作为本机可执行文件的包装器.也就是说,服务运行可执行文件ProcessBuilder
,为其提供一些数据,并检索结果.我的问题是打包这个包的最佳方法.本机可执行文件包含许多依赖数据文件,这些文件必须全部存在于磁盘上才能运行该工具.我发现有很多关于在OSGi中处理本机DLL的引用,但是没有一个引用与必须存在于磁盘上的bundle相关联的文件,而不是只能通过类路径检索.
我想我可以直接在bundle archive中包含exectuable和dependent文件,然后在bundle启动时以编程方式提取到某个目录.我能想到的另一个选择是将可执行文件放在某处并设置指向它的系统属性,但我希望将配置保持在最低限度.
一个不是特定于特定OSGi实现的解决方案会很好,但如果没有,我会使用Equinox.
谢谢!
我在Tomcat中运行了一个现有的Java webapp,我正在添加一些原始的Clojure支持.目前,我只是将Clojure源文件作为资源包含在类路径中并调用它clojure.lang.RT
.这是原始的,但工作正常.
但是,我注意到Tomcat的WebappClassLoader
缓存资源通过getResourceAsInputStream()
Clojure检索和编译源代码来检索.也就是说,(require 'my-ns :reload)
即使磁盘上有更新的文件,也只是重新加载文件的缓存版本.有没有办法绕过或避免Clojure文件的缓存?
我想出了很多后无果而终google搜索最好是使用反射来手动删除该条目WebappClassLoader.resourceEntries
这是可怕的.
我肯定错过了什么.
像"使用Jetty/Glassfish/JBoss","重启Tomcat"等答案并不是我想要的.
给定日期字符串为“ 2012-09-31”的形式,我想要一个vimscript函数对其进行解析,以便可以计算相对日期。欢迎使用纯vimscript或python解决方案。
我的团队正在与另一家公司的团队合作,他们的IT政策非常严格.我们不允许任何直接访问其SVN服务器.他们不允许访问我们的SVN服务器.我们唯一的选择是访问共享的FTP服务器.所以,我正在寻找保持我们的存储库同步的建议.请注意,此FTP服务器是除电子邮件之外的唯一通信机制,因此svn:externals不是一个选项.
我目前的想法是两个方向的夜间(或经常需要)差异/补丁.对于它的价值,我们每个人都使用相当独立的组件,因此冲突的可能性非常低.
有更好的想法吗?
编辑:我意识到我应该"对抗这个人",但是已经有好几周了,FTP(可能是SFTP)还没有到位.因此,我正在寻找聪明的解决方案.我们行业的性质和我们正在开发的系统阻止了代码的第三方存储.是的,这是愚蠢和官僚主义的.它的方式:)