java - 为集合的并发访问编写UT

标签 java unit-testing junit4

我有一个类似缓存的类,如下所示:

class Cache {
   Map<String, Object> objects;
   Map<String, List<Object>> lists;
   //...
   List<Object> getFromLists(String key) {
   //...
   }

   Object getFromObjects(String key) {
   //...
   }

   void addObject(String key, Object value) {
   //...
   }
   //...
}

现在我正在尝试编写 UT 以确保“缓存”的预期质量,并且我想知道如何编写它们以确保在并发访问时结构也能正常工作。到目前为止我所尝试的是启动多个线程,一些线程写入其他线程读取和检查队列的内容。我希望得到其他建议,也许一些工具?!

最佳答案

考虑使用JUnitPerf 。该库旨在针对您的工作“单元”运行负载测试,以增加遇到并发问题的机会。

关于java - 为集合的并发访问编写UT,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26158465/

相关文章:

javascript - Jest 测试 .toBeInstanceOf(Error) 失败

java - 测试 SimpledateFormat 时的 JUnit AssertionError

java - 我的 JButtons 按下时不起作用

java - ActiveMQ Web 控制台不适用于嵌入式代理

java - 在 Apache JsonToStringStyle 中格式化日期

spring - Spring @DirtiesContext 是否重新加载 Spring 上下文?

java - 使用 @Test 注释在 Junit 测试中期望异常或其子类之一

java - 没有任何 ORM 的延迟加载/初始化设计模式

Angular Testing : mock a HttpResponse containing a blob

PHP 单元测试