2016-11-18 3 views
0

Используя плагин plugf и плагин для плагина, я могу отправить электронное письмо с прикрепленным к получателю, если тестовый пример пройдет. В случае отказа тестового случая я получаю следующую ошибку. Я не знаю, чего мне не хватает. Пожалуйста помоги.Невозможно отправить почту при ошибке тестирования: Maven

Не удалось выполнить цель org.apache.maven.plugins: maven-surefire-plugin: 2.18.1: тест (по умолчанию-тест) в проекте FSmaven1: есть ошибки тестирования.

</project><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.ymedia</groupId> 
    <artifactId>FSmaven1</artifactId> 
    <version>0.0.1-SNAPSHOT</version> 
    <packaging>jar</packaging> 

    <name>FSmaven1</name> 
    <url>http://maven.apache.org</url> 

    <properties> 
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> 
    </properties> 

    <dependencies> 
    <dependency> 
     <groupId>org.testng</groupId> 
     <artifactId>testng</artifactId> 
     <version>6.8</version> 
    </dependency> 
    <dependency> 
     <groupId>org.seleniumhq.selenium</groupId> 
     <artifactId>selenium-java</artifactId> 
     <version>2.48.2</version> 
    </dependency> 
    <dependency> 
     <groupId>io.appium</groupId> 
     <artifactId>java-client</artifactId> 
     <version>3.4.1</version> 
    </dependency> 
     <dependency> 
     <groupId>org.seleniumhq.selenium</groupId> 
     <artifactId>selenium-server</artifactId> 
     <version>2.53.0</version> 
    </dependency> 
     <dependency> 
      <groupId>com.uttesh</groupId> 
      <artifactId>pdfngreport</artifactId> 
      <version>2.1.3</version> 
     </dependency> 
    </dependencies> 
    <build> 
     <plugins> 
     <!-- Suirefire plugin to run xml files --> 
      <plugin> 
       <groupId>org.apache.maven.plugins</groupId> 
       <artifactId>maven-surefire-plugin</artifactId> 
       <version>2.18.1</version> 
       <configuration> 
        <suiteXmlFiles> 
       <!-- TestNG suite XML files --> 
        <suiteXmlFile>testng.xml</suiteXmlFile> 
        </suiteXmlFiles> 
       </configuration> 
      </plugin> 
      <!-- Post-Man plugin --> 
     <plugin> 
      <groupId>ch.fortysix</groupId> 
      <artifactId>maven-postman-plugin</artifactId> 
      <executions> 
       <execution> 

       <id>send a mail</id> 
       <phase>test</phase> 
       <goals> 
       <goal>send-mail</goal> 
       </goals> 
       <inherited>true</inherited> 

       <configuration> 
        <!-- From Email address --> 
        <from>XXX</from> 

        <!-- Email subject --> 
        <subject>Test Automation Report</subject> 

        <!-- Fail the build if the mail doesnt reach --> 
        <failonerror>false</failonerror> 

        <!-- host --> 
        <mailhost>smtp.gmail.com</mailhost> 
        <!-- port of the host --> 
        <mailport>465</mailport> 
        <mailssl>true</mailssl> 
        <mailAltConfig>true</mailAltConfig> 

        <!-- Email Authentication(USername and Password) --> 
        <mailuser>xxx</mailuser> 
        <mailpassword>xxx</mailpassword> 

        <receivers> 
         <!-- To Email address --> 
         <receiver>xxx</receiver> 
        </receivers> 

        <fileSets> 
        <fileSet> 
         <!-- Report directory Path --> 
         <directory>./reports</directory> 
         <includes> 
          <!-- Report file name --> 
          <include>*.pdf</include> 
         </includes> 
         <!-- Use Regular Expressions like **/*.html if you want all the html files to send--> 
         </fileSet> 
        </fileSets>    

       </configuration> 
       </execution> 
      </executions> 
     </plugin> 
     </plugins> 

</build> 
+0

Отправка почты - задача для решения CI, такого как Jenkins – khmarbaise

ответ

0

Попробуйте добавить Maven Failsafe plugin к своей конструкции. Он обеспечивает безопасное выполнение в случае сбоев тестирования. Сообщите нам, если бы это сработало для вас.

Редактировать 1 Можете также попытаться добавить <testFailureIgnore>true</testFailureIgnore> в свою конфигурацию плагина Surefire?

+0

. Я добавил плагин Maven Failsafe в мой файл pom.xml. все равно Build не работает, если все же не удается. Maven-безотказное-плагин 2.19.1<Конфигурация> \t \t \t \t \t \t \t \t \t \t testng.xml \t \t \t \t \t \t \t \t \t \t \t \t \t безотказное-интеграционные тесты интеграции тест интеграции тест apporva

+0

спасибо вам помочь. Он работал после использования этого cmd: mvn clean install -Dmaven.test.failure.ignore = true – apporva

0

Ваше исполнение Maven никогда не достигает плагина отправки почты, потому что есть ошибки тестирования. Добавьте эти строки в раздел конфигурации maven-surefire-plugin:

<testErrorIgnore>true</testErrorIgnore> 
<testFailureIgnore>true</testFailureIgnore> 

Это должно решить ваши проблемы.