Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/unit-testing/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Unit testing 从另一个项目导入测试源_Unit Testing_Netbeans 8 - Fatal编程技术网

Unit testing 从另一个项目导入测试源

Unit testing 从另一个项目导入测试源,unit-testing,netbeans-8,Unit Testing,Netbeans 8,我有两个Java Netbeans项目A和B,这两个项目都包含单元测试。 单元测试是使用TestNG实现的,但我不认为我的问题特定于TestNG,所以它也可能是JUnit 在项目A中,我在测试包中实现了一个helper类MyHelper,用于单元测试。它取决于源程序包中的类和另一个类froma 项目结构 项目A 源程序包 ClassFromA.java 另一个类froma.java 测试包 ClassFromATest.java MyHelper.java->importsAnother

我有两个Java Netbeans项目A和B,这两个项目都包含单元测试。 单元测试是使用TestNG实现的,但我不认为我的问题特定于TestNG,所以它也可能是JUnit

在项目A中,我在测试包中实现了一个helper类
MyHelper
,用于单元测试。它取决于源程序包中的类
和另一个类froma

项目结构

项目A

  • 源程序包
    • ClassFromA.java
    • 另一个类froma.java
  • 测试包
    • ClassFromATest.java
    • MyHelper.java->imports
      AnotherClassFromA
现在在项目B中,我还有单元测试。我想在单元测试中导入类
MyHelper
,以便重用现有代码

项目B

  • 源程序包
    • ClassFromB.java
  • 测试包
    • ClassFromBTest.java->我想在这里导入
      MyHelper
我已经将项目A添加到项目B的库中,因为B中需要来自A的其他类(在项目B中:属性->库->编译选项卡->添加项目)。 但是因为
MyHelper
是在项目A的测试包中实现的(不是在它的源包中),所以它不在项目B的测试包的类路径中

我已经尝试过,但没有成功:

  • 将项目A添加到B的编译测试库中(在项目B中:属性->库->编译测试选项卡->添加项目),但类路径中不包含
    MyHelper
  • 将A的测试包的路径添加到B的测试包文件夹(在项目B中:属性->源->测试包文件夹->添加文件夹),但我得到错误“项目中已使用包文件夹”
  • 创建第三个项目C,将项目a添加为库(在项目C中:属性->库->编译选项卡->添加项目),并在项目C的源程序包(非测试程序包)中实现
    MyHelper
    。然后我将C作为编译测试库添加到项目a中(在项目a中:属性->库->编译测试选项卡->添加项目),但我得到错误“无法添加循环引用”
  • 一种解决方案是将项目A分成几个较小的项目,但由于项目A相当复杂,我宁愿不这样做。那么,还有其他方法可以实现这一点吗

    我使用的Netbeans版本是8.2,项目是使用Ant构建的