问题:
1.Idea中maven项目的pom.xml文件中引入依赖testng
2.此时可以看到已经出现testng的jar包,ERPLogin.java中引用@Test发现无法引用,然后直接import org.testng.annotations.Test也无法显示
3.但是在test目录下能引用到testng
原因:
在pom.xml文件引用testng的时候,有个标签<scope>test</scope>限制了只能在test目录下使用
1 <dependency> 2 <groupId>org.testng</groupId> 3 <artifactId>testng</artifactId> 4 <version>6.14.3</version> 5 <scope>test</scope> 6 </dependency>
在POM 4中,<dependency>中引入了<scope>,它主要管理依赖的部署。目前<scope>可以使用5个值:
* compile,缺省值,适用于所有阶段,会随着项目一起发布。
* provided,类似compile,期望JDK、容器或使用者会提供这个依赖。如servlet.jar。
* runtime,只在运行时使用,如JDBC驱动,适用运行和测试阶段。
* test,只在测试时使用,用于编译和运行测试代码。不会随项目发布。
* system,类似provided,需要显式提供包含依赖的jar,Maven不会在Repository中查找它。
解决:
所以只需要将上面pom.xml文件中的<scope>test</scope>去掉或者改成<scope>compile</scope>