View Javadoc

1   package org.apache.maven.surefire.its;
2   /*
3    * Licensed to the Apache Software Foundation (ASF) under one
4    * or more contributor license agreements.  See the NOTICE file
5    * distributed with this work for additional information
6    * regarding copyright ownership.  The ASF licenses this file
7    * to you under the Apache License, Version 2.0 (the
8    * "License"); you may not use this file except in compliance
9    * with the License.  You may obtain a copy of the License at
10   *
11   *     http://www.apache.org/licenses/LICENSE-2.0
12   *
13   * Unless required by applicable law or agreed to in writing,
14   * software distributed under the License is distributed on an
15   * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16   * KIND, either express or implied.  See the License for the
17   * specific language governing permissions and limitations
18   * under the License.
19   */
20  
21  import org.apache.maven.it.VerificationException;
22  import org.apache.maven.it.Verifier;
23  import org.apache.maven.it.util.ResourceExtractor;
24  
25  import java.io.File;
26  
27  /**
28   * Test for checking that the output from a forked suite is properly captured even if the suite encounters a severe error.
29   *
30   * @author <a href="mailto:dfabulich@apache.org">Dan Fabulich</a>
31   */
32  public class CheckTestNgExecuteErrorIT
33      extends AbstractSurefireIntegrationTestClass
34  {
35      public void testExecuteError()
36          throws Exception
37      {
38          File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/testng-execute-error" );
39  
40          Verifier verifier = new Verifier( testDir.getAbsolutePath() );
41          try
42          {
43              this.executeGoal( verifier, "test" );
44          }
45          catch ( VerificationException e )
46          {
47          } // expected 
48  
49          verifier.resetStreams();
50          assertTrue( new File( testDir, "target/surefire-reports/TestSuite-output.txt" ).length() > 0 );
51      }
52  }