我以以下方式构建了UI测试自动化方案:
我希望ui-实用程序的类能够在ui-域和ui-测试中使用,也希望ui-域的类能够用于ui-测试。
下面是我的pom.xml文件的样子:
父级pom.xml:
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>uiTestAutomation</groupId>
<artifactId>uiTestAutomation</artifactId>
<packaging>pom</packaging>
<version>1.0-SNAPSHOT</version>
<modules>
<module>ui-utilities</module>
<module>ui-tests</module>
<module>ui-domain</module>
</modules>
</project>
ui-实用程序pom.xml:
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<parent>
<artifactId>uiTestAutomation</artifactId>
<groupId>uiTestAutomation</groupId>
<version>1.0-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>ui-utilities</artifactId>
<groupId>ui-utilities</groupId>
<version>1.0-SNAPSHOT</version>
<packaging>pom</packaging>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>8</source>
<target>8</target>
</configuration>
</plugin>
</plugins>
</build>
<modules>
<module>../ui-domain</module>
<module>../ui-tests</module>
</modules>
</project>
用户界面-域pom.xml:
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<parent>
<artifactId>uiTestAutomation</artifactId>
<groupId>uiTestAutomation</groupId>
<version>1.0-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>ui-domain</artifactId>
<groupId>ui-domain</groupId>
<version>1.0-SNAPSHOT</version>
<packaging>pom</packaging>
<modules>
<module>../ui-tests</module>
</modules>
<dependencies>
<dependency>
<groupId>ui-utilities</groupId>
<artifactId>ui-utilities</artifactId>
<version>1.0-SNAPSHOT</version>
</dependency>
</dependencies>
</project>
ui-测试pom.xml:
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<parent>
<artifactId>uiTestAutomation</artifactId>
<groupId>uiTestAutomation</groupId>
<version>1.0-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>ui-tests</artifactId>
<groupId>ui-tests</groupId>
<version>1.0-SNAPSHOT</version>
<packaging>pom</packaging>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>8</source>
<target>8</target>
</configuration>
</plugin>
</plugins>
</build>
<dependencies>
<dependency>
<groupId>ui-utilities</groupId>
<artifactId>ui-utilities</artifactId>
<version>1.0-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>ui-domain</groupId>
<artifactId>ui-domain</artifactId>
<version>1.0-SNAPSHOT</version>
</dependency>
</dependencies>
</project>
ui实用程序中有BasePage类,我想在ui域中创建一个名为LoginPage的类,它应该继承BasePage。但是,我收到一个错误,它说:
无法解析符号BasePage
我在pom.xml文件中的依赖项方面做错了什么?
发布于 2019-11-02 22:20:21
您有一个非常不寻常的pom.xml结构,<modules>指向整个地方。父pom.xml看起来是正确的,但是您不应该在子模块中使用<modules>,除非他们有自己的子模块。
<modules>部分,并使用<dependencies>来表示模块之间的关系。<groupId>,这是没有意义的。最好是他们从<parent>继承这一点,并且您可以简单地省略子模块中的<groupId>标记。发布于 2019-11-04 09:58:25
我再次尝试从头开始创建这个项目。原来,当从父模块创建子模块时(右键单击,添加新模块),intellij将父模块自动设置为子模块,最早是在定义artifactId、groupId的第一次弹出时。pom文件基本上是相同的,mvn干净安装对父模块和分离子模块都是无缝工作的。现在LoginPage可以成功地扩展BasePage。
https://stackoverflow.com/questions/58675619
复制相似问题