小编Aru*_*mar的帖子

Spring中的JUnit测试 - 覆盖并忽略来自应用程序其他配置类的bean

我们在Spring 3中编写了大型应用程序.我需要编写一些服务的JUnit测试检查行为.它不是一个单元,而是系统的一部分.有一些服务和存储库协同工作 - >里面注入大量的bean.该应用程序还使用方面.

我的问题是.在这种测试的情况下如何管理配置和bean?我需要使用app configes中定义的bean,并且在测试中只使用持久性来重新定义bean以使用嵌入式数据库.所以我需要使用来自src的bean,因为它们被定义并仅覆盖一些导致麻烦的问题(持久性bean,bean使用webservices,...)在测试包中,我使用数据源为hsql使Config类定义了bean的持久性.但我不知道接下来会发生什么.我尝试用以下方法注释Test配置类:

@Configuration
@EnableAspectJAutoProxy
@EnableTransactionManagement(mode = AdviceMode.ASPECTJ, proxyTargetClass = true)
@ComponentScan(basePackages = "com.example.our.app")
public class MyTestConfig implements TransactionManagementConfigurer {
Run Code Online (Sandbox Code Playgroud)

扫描整个应用程序并使用src文件夹中的bean配置.但这也会引起其他导致问题的测试.这是一个好的策略吗?现在用什么 - 使用excludeFilters删除其他测试配置?或者这个策略是不是很糟糕?

谢谢

configuration junit spring javabeans

5
推荐指数
1
解决办法
8389
查看次数

使用逗号分隔的字符串进行Implode数组,但在最后一个字符串后没有逗号

我曾经习惯implode将数组分开.我想要的是我的ID应该用逗号分隔,但是在最后一个字符串后面没有逗号.如何在最后一个字符串后面没有逗号的括号中显示它们?

<html>
   <head>
   </head>

   <body>
      <?php
         mysql_connect("localhost", "usename", "password") or die(mysql_error()); 
         mysql_select_db("dbname") or die(mysql_error()); 

         $ids=array();
         $data = mysql_query("SELECT id FROM information"); 
         while($row = mysql_fetch_assoc($data))  
         {
            $ids[]=$row["id"]; 
         } 
         echo implode(", ", $ids);
      ?>
   </body>
</html>
Run Code Online (Sandbox Code Playgroud)

php mysql

0
推荐指数
1
解决办法
1555
查看次数

标签 统计

configuration ×1

javabeans ×1

junit ×1

mysql ×1

php ×1

spring ×1