mirror of https://github.com/apache/archiva.git
merge -r909353:909402 from MRM-1025 branch, fixes for Selenium tests
git-svn-id: https://svn.apache.org/repos/asf/archiva/trunk@909410 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
parent
bfe9d3b48d
commit
e295629858
|
@ -148,9 +148,20 @@
|
|||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-surefire-plugin</artifactId>
|
||||
<configuration>
|
||||
<suiteXmlFiles>
|
||||
<suiteXmlFile>src/test/testng/config/testng.xml</suiteXmlFile>
|
||||
</suiteXmlFiles>
|
||||
<properties>
|
||||
<!--
|
||||
Use this instead of suiteXmlFiles so that we can add the exclusion, as it is only accepted without suiteXmlFiles
|
||||
-->
|
||||
<property>
|
||||
<name>listener</name>
|
||||
<value>org.apache.archiva.web.test.listener.CaptureScreenShotsListener</value>
|
||||
</property>
|
||||
<property>
|
||||
<name>excludegroups</name>
|
||||
<!-- Exclude on all browsers but Firefox, as it is the only one that Selenium supports file uploads on -->
|
||||
<value>${excluded.groups}</value>
|
||||
</property>
|
||||
</properties>
|
||||
</configuration>
|
||||
<executions>
|
||||
<execution>
|
||||
|
@ -404,6 +415,7 @@
|
|||
</activation>
|
||||
<properties>
|
||||
<selenium.browser>*firefox</selenium.browser>
|
||||
<excluded.groups />
|
||||
</properties>
|
||||
</profile>
|
||||
<profile>
|
||||
|
@ -416,6 +428,7 @@
|
|||
</activation>
|
||||
<properties>
|
||||
<selenium.browser>*iexplore</selenium.browser>
|
||||
<excluded.groups>requiresUpload</excluded.groups>
|
||||
</properties>
|
||||
</profile>
|
||||
<profile>
|
||||
|
@ -428,6 +441,7 @@
|
|||
</activation>
|
||||
<properties>
|
||||
<selenium.browser>*safari</selenium.browser>
|
||||
<excluded.groups>requiresUpload</excluded.groups>
|
||||
</properties>
|
||||
</profile>
|
||||
<profile>
|
||||
|
@ -440,6 +454,7 @@
|
|||
</activation>
|
||||
<properties>
|
||||
<selenium.browser>*custom ${browserPath}</selenium.browser>
|
||||
<excluded.groups>requiresUpload</excluded.groups>
|
||||
</properties>
|
||||
</profile>
|
||||
<profile>
|
||||
|
|
|
@ -1,52 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd">
|
||||
<!--
|
||||
Licensed to the Apache Software Foundation (ASF) under one
|
||||
or more contributor license agreements. See the NOTICE file
|
||||
distributed with this work for additional information
|
||||
regarding copyright ownership. The ASF licenses this file
|
||||
to you under the Apache License, Version 2.0 (the
|
||||
"License"); you may not use this file except in compliance
|
||||
with the License. You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing,
|
||||
software distributed under the License is distributed on an
|
||||
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
KIND, either express or implied. See the License for the
|
||||
specific language governing permissions and limitations
|
||||
under the License.
|
||||
-->
|
||||
|
||||
<suite name="ArchivaTest" verbose="1">
|
||||
<listeners>
|
||||
<listener class-name="org.apache.archiva.web.test.listener.CaptureScreenShotsListener"/>
|
||||
</listeners>
|
||||
|
||||
<test name="AdminTest" enabled="true">
|
||||
<groups>
|
||||
<run>
|
||||
<include name="about" />
|
||||
<include name= "login" />
|
||||
<include name= "userroles" />
|
||||
<include name= "reposcan" />
|
||||
<include name= "artifactmanagement" />
|
||||
<include name= "search" />
|
||||
<include name= "auditlogsreport" />
|
||||
<include name= "browse" />
|
||||
<include name= "reports" />
|
||||
<include name= "virtualrepository" />
|
||||
<include name= "networkproxies" />
|
||||
<include name= "repository" />
|
||||
<include name= "appearance" />
|
||||
<include name= "findartifact" />
|
||||
<include name= "legacysupport" />
|
||||
<include name= "database" />
|
||||
</run>
|
||||
</groups>
|
||||
<packages>
|
||||
<package name="org.apache.archiva.web.test" />
|
||||
</packages>
|
||||
</test>
|
||||
</suite>
|
|
@ -83,24 +83,22 @@ public class ArtifactManagementTest
|
|||
assertTextPresent( "Please add a file to upload." );
|
||||
}
|
||||
|
||||
@Test( enabled = false )
|
||||
@Test(groups = "requiresUpload")
|
||||
public void testAddArtifactValidValues()
|
||||
{
|
||||
// TODO: disable test on non *chrome browsers, there is no way to do file uploads (SEL-63)
|
||||
addArtifact( getGroupId() , "testAddArtifactValidValues", getVersion(), getPackaging() , getArtifactFilePath(), getRepositoryId() );
|
||||
assertTextPresent( "Artifact 'test:test:1.0' was successfully deployed to repository 'internal'" );
|
||||
assertTextPresent( "Artifact 'test:testAddArtifactValidValues:1.0' was successfully deployed to repository 'internal'" );
|
||||
}
|
||||
|
||||
//MRM-747
|
||||
@Test( enabled = false )
|
||||
@Test(groups = "requiresUpload")
|
||||
public void testAddArtifactBlockRedeployments()
|
||||
{
|
||||
// TODO: disable test on non *chrome browsers, there is no way to do file uploads (SEL-63)
|
||||
addArtifact( getGroupId() , getArtifactId(), getVersion(), getPackaging() , getArtifactFilePath(), getRepositoryId() );
|
||||
assertTextPresent( "Overwriting released artifacts in repository '" + getRepositoryId() + "' is not allowed." );
|
||||
}
|
||||
|
||||
@Test( enabled = false )
|
||||
@Test(groups = "requiresUpload")
|
||||
public void testDeleteArtifact()
|
||||
{
|
||||
//prep
|
||||
|
|
|
@ -68,8 +68,7 @@ public class AuditLogsReportTest
|
|||
}
|
||||
|
||||
// TODO: add test for adding via WebDAV
|
||||
// TODO: disable if not running on *chrome
|
||||
@Test (dependsOnMethods = { "testAddArtifactValidValues" }, enabled = false )
|
||||
@Test (dependsOnMethods = { "testAddArtifactValidValues" }, groups = "requiresUpload")
|
||||
public void testViewAuditLogsDataFound()
|
||||
{
|
||||
goToAuditLogReports();
|
||||
|
@ -89,8 +88,7 @@ public class AuditLogsReportTest
|
|||
}
|
||||
|
||||
// TODO: add test for adding via WebDAV
|
||||
// TODO: disable if not running on *chrome
|
||||
@Test (dependsOnMethods = { "testAddArtifactValidValues" }, enabled = false )
|
||||
@Test (dependsOnMethods = { "testAddArtifactValidValues" }, groups = "requiresUpload")
|
||||
public void testViewAuditLogsOnlyArtifactIdIsSpecified()
|
||||
{
|
||||
goToAuditLogReports();
|
||||
|
@ -110,8 +108,7 @@ public class AuditLogsReportTest
|
|||
}
|
||||
|
||||
// TODO: add test for adding via WebDAV
|
||||
// TODO: disable if not running on *chrome
|
||||
@Test (dependsOnMethods = { "testAddArtifactValidValues" }, enabled = false )
|
||||
@Test (dependsOnMethods = { "testAddArtifactValidValues" }, groups = "requiresUpload")
|
||||
public void testViewAuditLogsForAllRepositories()
|
||||
{
|
||||
goToAuditLogReports();
|
||||
|
@ -129,7 +126,7 @@ public class AuditLogsReportTest
|
|||
assertTextPresent( "admin" );
|
||||
}
|
||||
|
||||
@Test (dependsOnMethods = { "testAddArtifactValidValues", "testUserWithRepoManagerInternalRole" }, enabled = false )
|
||||
@Test (dependsOnMethods = { "testAddArtifactValidValues", "testUserWithRepoManagerInternalRole" }, groups = "requiresUpload")
|
||||
public void testViewAuditLogsViewAuditEventsForManageableRepositoriesOnly()
|
||||
{
|
||||
String groupId = getProperty( "SNAPSHOT_GROUPID" );
|
||||
|
|
|
@ -45,13 +45,9 @@ public class BrowseTest
|
|||
}
|
||||
|
||||
// MRM-1278
|
||||
@Test( enabled = false )
|
||||
@Test(groups = {"requiresUpload"})
|
||||
public void testCorrectRepositoryInBrowse()
|
||||
{
|
||||
File artifact =
|
||||
new File( getBasedir(),
|
||||
"/src/test/it-resources/snapshots/org/apache/maven/archiva/web/test/foo-bar/1.0-SNAPSHOT/foo-bar-1.0-SNAPSHOT.jar" );
|
||||
|
||||
String releasesRepo = getProperty( "RELEASES_REPOSITORY" );
|
||||
|
||||
// create releases repository first
|
||||
|
@ -64,10 +60,10 @@ public class BrowseTest
|
|||
|
||||
String snapshotsRepo = getProperty( "SNAPSHOTS_REPOSITORY" );
|
||||
|
||||
String path = "src/test/it-resources/snapshots/org/apache/maven/archiva/web/test/foo-bar/1.0-SNAPSHOT/foo-bar-1.0-SNAPSHOT.jar";
|
||||
// TODO: do this differently as uploading doesn't work on browsers other than *chrome (below as well)
|
||||
// upload a snapshot artifact to repository 'releases'
|
||||
addArtifact( "archiva", "archiva-webapp", "1.0-SNAPSHOT", "jar", artifact.getPath(),
|
||||
releasesRepo );
|
||||
addArtifact( "archiva", "archiva-webapp", "1.0-SNAPSHOT", "jar", path, releasesRepo );
|
||||
assertTextPresent( "Artifact 'archiva:archiva-webapp:1.0-SNAPSHOT' was successfully deployed to repository '" + releasesRepo + "'" );
|
||||
|
||||
goToBrowsePage();
|
||||
|
@ -77,8 +73,7 @@ public class BrowseTest
|
|||
assertArtifactInfoPage( "1.0-SNAPSHOT/", releasesRepo, "archiva", "archiva-webapp", "1.0-SNAPSHOT", "jar" );
|
||||
|
||||
// upload a snapshot artifact to repository 'snapshots'
|
||||
addArtifact( "continuum", "continuum-core", "1.0-SNAPSHOT", "jar", artifact.getPath(),
|
||||
snapshotsRepo );
|
||||
addArtifact( "continuum", "continuum-core", "1.0-SNAPSHOT", "jar", path, snapshotsRepo );
|
||||
assertTextPresent( "Artifact 'continuum:continuum-core:1.0-SNAPSHOT' was successfully deployed to repository '" + snapshotsRepo + "'" );
|
||||
|
||||
goToBrowsePage();
|
||||
|
|
|
@ -75,7 +75,7 @@ public class CaptureScreenShotsListener
|
|||
{
|
||||
selenium.windowMaximize();
|
||||
File fileName = new File( targetPath, fileBaseName + ".png" );
|
||||
selenium.captureEntirePageScreenshot( fileName.getAbsolutePath(), "" );
|
||||
selenium.captureEntirePageScreenshot( fileName.getAbsolutePath(), "background=#FFFFFF" );
|
||||
}
|
||||
catch ( RuntimeException e )
|
||||
{
|
||||
|
|
|
@ -1,6 +1,7 @@
|
|||
package org.apache.archiva.web.test.parent;
|
||||
|
||||
import java.io.File;
|
||||
import java.io.IOException;
|
||||
|
||||
import org.apache.archiva.web.test.XPathExpressionUtil;
|
||||
|
||||
|
@ -495,7 +496,25 @@ public abstract class AbstractArchivaTest
|
|||
checkField( "generatePom" );
|
||||
}
|
||||
|
||||
setFieldValue( "artifact", artifactFilePath );
|
||||
String path;
|
||||
if ( artifactFilePath != null && artifactFilePath.trim().length() > 0 )
|
||||
{
|
||||
File f = new File( artifactFilePath );
|
||||
try
|
||||
{
|
||||
path = f.getCanonicalPath();
|
||||
}
|
||||
catch ( IOException e )
|
||||
{
|
||||
path = f.getAbsolutePath();
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
path = artifactFilePath;
|
||||
}
|
||||
|
||||
setFieldValue( "artifact", path );
|
||||
setFieldValue( "repositoryId", repositoryId );
|
||||
|
||||
clickButtonWithValue( "Submit" );
|
||||
|
|
|
@ -1,7 +1,5 @@
|
|||
package org.apache.archiva.web.test.parent;
|
||||
|
||||
import java.io.File;
|
||||
|
||||
public abstract class AbstractArtifactManagementTest
|
||||
extends AbstractArchivaTest
|
||||
{
|
||||
|
@ -32,9 +30,7 @@ public abstract class AbstractArtifactManagementTest
|
|||
|
||||
public String getArtifactFilePath()
|
||||
{
|
||||
File f = new File( "" );
|
||||
String artifactFilePath = f.getAbsolutePath();
|
||||
return artifactFilePath + "/src/test/it-resources/snapshots/org/apache/maven/archiva/web/test/foo-bar/1.0-SNAPSHOT/foo-bar-1.0-SNAPSHOT.jar" ;
|
||||
return "src/test/it-resources/snapshots/org/apache/maven/archiva/web/test/foo-bar/1.0-SNAPSHOT/foo-bar-1.0-SNAPSHOT.jar";
|
||||
}
|
||||
|
||||
public String getRepositoryId()
|
||||
|
|
Loading…
Reference in New Issue