ArchUnit测试importOptionsDoNotIncludeTests无法工作
创始人
2024-09-12 07:30:37
0

在ArchUnit测试中,当我们使用importOptions来指定应该包含哪些包和类时,有时可能出现DoNotIncludeTests选项无法清除测试类的情况。在这种情况下,我们可以尝试使用ExcludeTests选项来显式地排除测试类。

代码示例:

@Test void testArchitecture() { JavaClasses classes = new ClassFileImporter() .importPackages("com.example.myapp");

ArchRule rule = layeredArchitecture()
  .layer("Service").definedBy("com.example.myapp.service..")
  .layer("Repository").definedBy("com.example.myapp.repository..")
  .layer("Web").definedBy("com.example.myapp.web..")

  // Exclude tests explicitly
  .whereLayer("Service").mayNotBeAccessedByAnyLayer(ExcludeTests.class)
  .whereLayer("Repository").mayNotBeAccessedByAnyLayer(ExcludeTests.class)
  .whereLayer("Web").mayNotBeAccessedByAnyLayer(ExcludeTests.class);

rule.check(classes);

}

在上面的示例代码中,我们在每个层次上使用了mayNotBeAccessedByAnyLayer方法来排除测试类,并将ExcludeTests作为参数传递给该方法。

这样,即使我们的importOptions包含DoNotIncludeTests选项,也可以确保测试类被排除在ArchUnit测试之外。

相关内容

热门资讯

玩家必看!多乐辅助app,拼十... 玩家必看!多乐辅助app,拼十辅助器,详细插件(有挂讲解)拼十辅助器能透视中分为三种模型:拼十辅助器...
推荐十款!授权二厅辅助,决战十... 推荐十款!授权二厅辅助,决战十水三辅助,详细教程(有挂教程)1、让任何用户在无需决战十水三辅助安装教...
玩家攻略推荐!潮汕掌上娱破解,... 玩家攻略推荐!潮汕掌上娱破解,途游辅助软件网站,详细教程(果真有挂)1、操作简单,无需途游辅助软件网...
技术分享!江西中至科技,打两圈... 技术分享!江西中至科技,打两圈怀疑有外挂,详细软件(有挂讲解)1、金币登录送、破产送、升级送、活动送...
我来教大家!玫瑰大厅辅助,乐乐... 我来教大家!玫瑰大厅辅助,乐乐围棋入门脚本,详细工具(详细教程)1、操作简单,无需乐乐围棋入门脚本手...
玩家亲测!超级三加一视频,八闽... 玩家亲测!超级三加一视频,八闽掌上十八卦脚本,详细器(有挂存在)1、用户打开应用后不用登录就可以直接...
关于!哥哥打大a辅助,微信微乐... 关于!哥哥打大a辅助,微信微乐辅助透视,详细技巧(有挂头条)1、微信微乐辅助透视破解器简单,微信微乐...
分辨真假!福建兄弟13水软件安... 分辨真假!福建兄弟13水软件安装,wepoker修改工具,详细方法(有挂教学)福建兄弟13水软件安装...
热点推荐!长城互娱辅助,神兽h... 热点推荐!长城互娱辅助,神兽h5平台反杀,详细技巧(竟然有挂)1)神兽h5平台反杀辅助插件:进一步探...
科普!开心庄园脚本辅助器,天天... 科普!开心庄园脚本辅助器,天天手游辅助工具,详细方法(真实有挂)1、开心庄园脚本辅助器有没有辅助教程...