我有一个失败的unit testing,我不确定为什么。 我希望能够看到在被测系统中发生的模拟上的所有调用。 这不是我想要的所有测试的行为,只是为了我需要快速调整以便能够弄清楚什么是错误的测试。 但是,它看起来有点像黑客。 是否可以在Mockito中本地执行此操作,而无需使用Thread.currentThread().getStackTrace() ? 这不是首选,因为堆栈跟踪包括Mockito内部使用的所有其他调用。
我正在尝试从Appfuse Archetype开始构建一个应用程序,但是我遇到了一些奇怪的问题。 曾经,我想使用hsqldb进行自动unit testing和集成测试,并使用mysql db进行手动测试,这样我就可以在需要时轻松操作数据,因此在此期间自动切换配置文件会很不错。测试阶段。 有没有办法做到这一点?
有没有一个很好的工具可以根据一些原始模板自动生成jUnit测试用例? 这样,测试用例可以由没有大量Java或jUnit背景的工程师编写。 作为背景信息,这是用于黑盒测试。 如果有一些其他替代方法来运行回归测试而不是使用jUnit,我也很感激听到它。 谢谢
我正在寻找有关如何为Maven插件编写unit testing的信息。 尽管Maven网站上有关于此主题的页面 ,但只有一个示例unit testing,它没有任何用处。 我也找到了这个wiki页面 ,但它已经超过4年没有更新了,所以我不愿意投入任何信任。 我查了一本书“Maven的权威指南”,但它甚至没有提到这个主题。 我想用Groovy或Java编写unit testing,并希望了解有关如何执行此操作的任何信息。 我正在使用Maven 2.1.0版。
我的应用程序中有一些方法可以发出http请求。 有没有一种很好的方法来模拟网络故障和unit testing的错误响应?
我是mockito的新手。 需要知道存根和何时的区别 1. stub(cpproxy.getBinList()).toReturn(gettestbins()); 2. when(cpproxy.getBinList()).thenReturn(gettestbins()); 这两者之间有什么区别?
我一直试图找出我为Apache Spark项目编写的一些单元/集成测试的问题。 当使用Spark 1.1.1时,我的测试通过了。 当我尝试升级到1.4.0(也尝试过1.4.1)时,测试开始失败。 我已经设法将重现问题所需的代码减少到下面的小集成测试。 有趣的是,如果我在测试中注释掉@RunWith注释,那么测试就会正确传递。 显然我不需要@RunWith注释来进行这种减少测试,但真正的测试相当广泛地使用了模拟,所以我宁愿不必使用PowerMock。 package com.example; import org.apache.spark.SparkConf; import org.apache.spark.streaming.Duration; import org.apache.spark.streaming.api.java.JavaStreamingContext; import org.junit.Before; import org.junit.Test; import org.junit.runner.RunWith; import org.powermock.modules.junit4.PowerMockRunner; @RunWith(PowerMockRunner.class) public class SampleTest { @Before public void setup() throws Exception { SparkConf conf = new SparkConf(false).setMaster(“local[2]”).setAppName(“My app”); JavaStreamingContext jsc = new JavaStreamingContext(conf, new Duration(1000)); } @Test public void exampleTest() { […]
假设我在我的应用程序中创建了一个使用远程Web服务的简单客户端,该服务在某个URI /foo/bar/{baz}公开RESTful API。 现在我想对我的客户端进行unit testing,该客户端调用此Web服务。 理想情况下,在我的测试中,我想根据/foo/bar/123或/foo/bar/42等特定请求模拟我从Web服务获得的响应。 我的客户端假设API实际上在某处运行,所以我需要一个本地“Web服务”来开始在http://localhost:9090/foo/bar运行我的测试。 我希望我的unit testing是自包含的,类似于使用Spring MVC Test框架测试Spring控制器。 一些简单客户端的伪代码,从远程API获取数字: // Initialization logic involving setting up mocking of remote API at // http://localhost:9090/foo/bar @Autowired NumberClient numberClient // calls the API at http://localhost:9090/foo/bar @Test public void getNumber42() { onRequest(mockAPI.get(“/foo/bar/42”)).thenRespond(“{ \”number\” : 42 }”); assertEquals(42, numberClient.getNumber(42)); } // .. 使用Spring有哪些替代方案?
在尝试运行PIT突变测试时,我收到以下错误: mutationCoverage失败:计算线覆盖时,所有测试都没有通过而没有突变。 变异测试需要绿色套件。 当我进行正常的测试构建时,测试运行得很好但是在运行突变测试阶段时,他们认为会失败,但没有提供有关原因的详细信息。 我已经解决了PIT测试常见问题解答中列出的原因,但我仍然不知道可能出现的问题。 我试过了: 将-Dthreads = 1选项添加到任何multithreading问题的规则中 无法找到任何系统属性唯一的失败的几个测试 正常运行时不会忽略测试 我还应该尝试一些其他的事情吗? 或者其他方法来调试可能发生的事情?
这可能是一个概念上愚蠢的问题,但也可能没有,因为我还是学生,我想我应该没问题。 想象一下,如果给定某些条件,它将抛出一个NumberFormatException。 我想编写一个unit testing来查看exception是否正确。 我怎样才能做到这一点? PS我正在使用JUnit编写unit testing。 谢谢。