场景
在IDEA中的SpringBoot项目使用Junit进行单元测试。
1.使用@Test标明的方法不能有参数和返回值。
2.使用@Autowired实现自动注入时需要在测试类上添加注解。
实现
在test目录下新建单元测试类
package com.ws.test.common;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.ws.sys.entity.SysEnterpriseOrg;
import com.ws.sys.mapper.SysEnterpriseOrgMapper;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
import org.springframework.test.context.web.WebAppConfiguration;
import java.util.ArrayList;
import java.util.List;
@RunWith(SpringJUnit4ClassRunner.class)
@SpringBootTest
@WebAppConfiguration
public class diguiTest {
@Autowired
private SysEnterpriseOrgMapper sysEnterpriseOrgMapper;
List<Long> result = new ArrayList<Long>();
@Test
public void test(){
List<Long> canshu = new ArrayList<Long>();
canshu.add(1l);
selectChild(canshu);
for (Long s :result
) {
System.out.print(s);
}
}
public void selectChild(List<Long> ids){
List<Long> temp= new ArrayList<Long>();
List<SysEnterpriseOrg> sysEnterpriseOrgList = new ArrayList<SysEnterpriseOrg>();
for (Long id :ids) {
//查询子级架构
QueryWrapper<SysEnterpriseOrg> sysEnterpriseOrgChildQueryWrapper = new QueryWrapper<SysEnterpriseOrg>();
sysEnterpriseOrgChildQueryWrapper.eq("pid",id.toString());
sysEnterpriseOrgList= sysEnterpriseOrgMapper.selectList(sysEnterpriseOrgChildQueryWrapper);
for (SysEnterpriseOrg s:sysEnterpriseOrgList) {
temp.add(s.getId());
result.add(s.getId());
}
}
if(temp.size()!=0&&temp!=null)
selectChild(temp);
}
}