Ферма устройств AWS: APPIUM_JAVA_JUNIT_TEST_PACKAGE_CLASS_FILE_MISSING_IN_TESTS_JAR - PullRequest
0 голосов
/ 23 октября 2018

Я пытаюсь загрузить тесты Appium Java JUnit в AWS Device Farm.Я сконфигурировал свой файл 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>com.acme</groupId>
   <artifactId>acme-android-appium</artifactId>
   <version>1.0-SNAPSHOT</version>
   <packaging>jar</packaging>
       <repositories>
            <repository>
            <releases>
                <enabled>true</enabled>
                <updatePolicy>always</updatePolicy>
                <checksumPolicy>fail</checksumPolicy>
            </releases>
            <id>Experitest.repo1</id>
            <name>YourName</name>
            <url>https://cloud.experitest.com/repo/</url>
            <layout>default</layout>
        </repository>
    </repositories>
   <build>
      <sourceDirectory>src</sourceDirectory>
      <plugins>
         <plugin>
            <artifactId>maven-compiler-plugin</artifactId>
            <version>3.1</version>
            <configuration>
               <source>1.8</source>
               <target>1.8</target>
            </configuration>
         </plugin>
         <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-jar-plugin</artifactId>
            <configuration>
                <classesDirectory>dummy</classesDirectory>
            </configuration>
            <version>2.6</version>
            <executions>
               <execution>
                  <goals>
                     <goal>test-jar</goal>
                  </goals>
               </execution>
            </executions>
         </plugin>
         <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-dependency-plugin</artifactId>
            <version>2.10</version>
            <executions>
               <execution>
                  <id>copy-dependencies</id>
                  <phase>package</phase>
                  <goals>
                     <goal>copy-dependencies</goal>
                  </goals>
                  <configuration>
                     <outputDirectory>${project.build.directory}/dependency-jars/</outputDirectory>
                  </configuration>
               </execution>
            </executions>
         </plugin>
         <plugin>
            <artifactId>maven-assembly-plugin</artifactId>
            <version>2.5.4</version>
            <executions>
               <execution>
                  <phase>package</phase>
                  <goals>
                     <goal>single</goal>
                  </goals>
                  <configuration>
                     <finalName>zip-with-dependencies</finalName>
                     <appendAssemblyId>false</appendAssemblyId>
                     <descriptors>
                        <descriptor>src/main/assembly/zip.xml</descriptor>
                     </descriptors>
                  </configuration>
               </execution>
            </executions>
         </plugin>
      </plugins>
   </build>
   <dependencies>
      <dependency>
         <groupId>com.amazonaws</groupId>
         <artifactId>aws-lambda-java-core</artifactId>
         <version>1.1.0</version>
      </dependency>
      <!-- extentreports -->
      <dependency>
         <groupId>com.relevantcodes</groupId>
         <artifactId>extentreports</artifactId>
         <version>2.41.2</version>
      </dependency>
      <dependency>
         <groupId>com.experitest</groupId>
         <artifactId>appium</artifactId>
         <version>4.1.2</version>
      </dependency>
   </dependencies>
  <properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
  </properties>
</project>

Когда я пытаюсь скомпилировать мой код maven (через CMD с помощью этой команды: mvn clean package -DskipTests = true )Я получил несколько информационных строк, включая эту информацию:

[ПРЕДУПРЕЖДЕНИЕ] / C: / Users / Адам Перец / рабочая область / Sweetch / src / Utilites / CommonOps.java: некоторые входные файлы используют непроверенные или небезопасные операции.

[ПРЕДУПРЕЖДЕНИЕ] / C: / Users / Адам Перец / рабочая область / Sweetch / src / Utilites / CommonOps.java: перекомпилировать с -Xlint: не проверено для подробностей.

[WARNING] JARбудет пустым - содержимое не было помечено для включения!

[INFO] BUILD SUCCESS

и после него я загрузил " zip-with-dependencies.zip"файл в AWS Device Farm и получил эту ошибку:

Произошла ошибка при обработке вашего файла.Мы не смогли найти файл класса в файле JAR tests.Распакуйте тестовый пакет, а затем разархивируйте тестовый JAR-файл, убедитесь, что хотя бы один файл класса находится в JAR-файле, и повторите попытку.Для получения дополнительной информации об этой проблеме см. Документацию .

Что мне делать?Я действительно не знаю, что делать, я все перепробовал.

1 Ответ

0 голосов
/ 23 октября 2018

Где вы положили файлы Java?Предупреждение относится к файлу jar, который по умолчанию создается в maven, а не к * -test.jar

Device Farm использует файл * -test.jar, а в сообщении об ошибке указывается, что он пуст.Находятся ли тестовые файлы Java в папке ./src/test/java?В противном случае они должны быть в противном случае maven не будет упаковывать эти файлы классов в * -test.jar.

Вот пример для сравнения.

https://github.com/aws-samples/aws-device-farm-appium-tests-for-sample-app

Надеюсь, что поможет

Джеймс

...