草庐IT

单元板

全部标签

java - 单元测试图形

是否有针对生成图形的单元测试代码的标准最佳实践?我专门使用Java和jUnit,但我认为这个概念也适用于其他语言。到目前为止,我能想到的最好的方法是使用Mockito模拟Graphics对象并断言预先计算好的东西,例如(伪代码):assertthatgraphics.drawStringwascalledwith("abc",50,100)assertthatgraphics.setBackgroundColorwascalledwithColor.RED虽然一切都很好,但我想知道这是否是正确的方法,或者是否有更多既定的实践来测试图形代码。 最佳答案

java - 如何使用 Mockito 对链式方法调用进行单元测试

我正在开发一个使用JIRA'sRESTClient的J2EE项目.此客户端返回一个Jiraissue目的。Issue的部分字段类是key,self,id,summary等等等等self这里的字段基本上是一个URI。例如http://jira.company.com/rest/api/2.0/issue/12345我有一个用例,我必须从上面指定的URI检索主机。我可以通过类似issue.getSelf().getHost()的方式来做到这一点.issue.getSelf()返回类型为“URI”的对象并获取主机,我可以简单地使用getHost()URI提供的方法在String中返回主机ur

java - JTable:清除行选择时删除单元格周围的边框

我有一个JTable并希望允许通过单击表格的空白部分来取消选择所有行。到目前为止效果很好。但是,即使我调用了table.clearSelection();,该表仍会在先前启用的单元格周围显示一个边框(参见示例中的单元格5):我也想去掉这个边框(它看起来特别不适合Mac的原生外观,单元格突然变黑)。完全可用的最小示例代码:publicclassJTableDeselectextendsJFrame{publicJTableDeselect(){ObjectrowData[][]={{"1","2","3"},{"4","5","6"}};ObjectcolumnNames[]={"One

java - 为特定的 JTable 单元格设置鼠标光标

我有一个带有一组不可编辑单元格的JTable,我希望特定列中的所有单元格在鼠标悬停在它们上方时显示不同的鼠标光标。我已经在使用自定义渲染器并且在渲染器组件上设置光标似乎不起作用(就像它对工具提示一样)。它似乎对编辑有用。当您的单元格未被编辑或我遗漏了什么时,这在JTable中是不可能的吗? 最佳答案 将MouseMotionListener添加到JTable,然后在mouseMoved()上确定它正在使用JTable的columnAtPoint()的列,如果它是您要查找的特定列,则在JTable上使用setCursor()。

java - 单元测试、静态和工厂

我正在用Java实现一个模型,它需要迭代一个集合并经历多个识别阶段,它涉及for循环、while循环等。这是我想在细粒度级别测试的东西这样我就有信心它已得到正确实现。我将它作为开始单元测试的机会,因为我认为这对我的代码有益。从那以后,我一直在阅读大量书籍,以跟上JUnit和单元测试的速度。基本上我的问题归结为我收到的两条相互矛盾的建议:1)静电是邪恶的。请勿触摸静电。也不要测试privates,你可能想要一个类。2)使用工厂进行创建以允许使用参数进行依赖注入(inject)——可能允许使用模拟和stub进行隔离。在我的示例中,我希望按照以下方式执行操作:doubleheight=223

java - Maven:hibernate-entitymanager 和 javaee-api 一起破坏了我的单元测试

我的pom中有两个依赖项javaee-api和hibernate-entitymanager。但它们不能很好地协同工作:一旦我添加javaee-api,我的所有单元测试都会因java.lang.ClassFormatError:AbsentCodeattributeinmethodthatisnotnativeorabstractinmethodinclassfilejavax而中断/验证/验证。没有javaee-api,一切正常。这是为什么?(已编辑此问题以解决问题;)) 最佳答案 MavenDependencies没有顺序,但是

java - 在 Java 中命名重载的单元测试方法

当目标有重载时,命名单元测试方法最被接受的方式是什么。考虑这些方法:doSomething();doSomething(String);您如何命名相应的测试方法?这是最容易接受的方式吗?testDoSomething();testDoSomethingString(); 最佳答案 做任何让你和你的同事更易读的事情,如果有的话。我认为这取决于您对该类的其他测试是什么,但基于这两种方法,我会这样做:测试doSomething()的测试方法:doSomething_void_success(这将是测试成功路径的一些测试)doSomethi

c# - 像java一样的Visual Studio参数化单元测试

在Java测试环境中,我可以使用如下代码中的参数化单元测试:@RunWith(value=Parameterized.class)publicclassJunitTest6{privateintnumber;publicJunitTest6(intnumber){this.number=number;}@ParameterspublicstaticCollectiondata(){Object[][]data=newObject[][]{{1},{2},{3},{4}};returnArrays.asList(data);}@TestpublicvoidpushTest(){Syste

java - 从单元格值获取单元格索引,Apache POI

EnvironmentStatusVersionPatchNumberWindowsLive1.02UnixLive2.04MacLive1.38如果我在excel中有上面显示的数据,我如何使用文本访问PatchNumber的cellNumberXSSFRowrow=(XSSFRow)rows.next();我想访问row.getCellNumber("PatchNumber");//注意这个方法在ApachePOI中不存在。 最佳答案 我想我明白您的意思-您想知道哪一列的第一行包含单词“Patch”?如果是这样,您需要做的就是:S

java - 如何将 TreeViewer 单元格的一部分设为粗体?

我目前想编写一个基于JFaceTreeViewer的Eclipse编辑器。我向TreeViewer添加了一个CellLabelProvider。如果我直接在CellLabelProvider的update方法中将单元格的字体设置为粗体,则标签显示为粗体。但我只希望部分标签显示为粗体。所以我将StyleRange应用于单元格。“StyleRange”中的选定颜色工作得很好,但将StyleRange的字体设置为粗体似乎不起作用。为什么会这样,我该如何解决? 最佳答案 由greg-449指定,基本上你可以创建你的Font并将其设置为bol