<browser>${selenium.browser}</browser>
<baseUrl>${baseUrl}</baseUrl>
<maxWaitTimeInMs>${maxWaitTimeInMs}</maxWaitTimeInMs>
+ <seleniumHost>${seleniumHost}</seleniumHost>
+ <seleniumPort>${seleniumPort}</seleniumPort>
</systemPropertyVariables>
</configuration>
</execution>
*/
import org.apache.archiva.web.test.parent.AbstractArchivaTest;
-import org.testng.Assert;
-import org.testng.annotations.AfterTest;
-import org.testng.annotations.BeforeSuite;
-import org.testng.annotations.BeforeTest;
-import org.testng.annotations.Optional;
-import org.testng.annotations.Parameters;
import org.testng.annotations.Test;
public class ArchivaAdminTest
extends AbstractArchivaTest
{
- @Override
- @AfterTest
- public void close()
- throws Exception
- {
- super.close();
- }
-
- @Override
- @BeforeSuite
- public void open()
- throws Exception
- {
- super.open();
- }
-
- @BeforeTest
- @Parameters( { "baseUrl", "browser", "maxWaitTimeInMs", "seleniumHost", "seleniumPort" } )
- public void initializeArchiva( String baseUrl, String browser, int maxWaitTimeInMs,
- @Optional( "localhost" ) String seleniumHost, @Optional( "4444" ) int seleniumPort )
- throws Exception
- {
-
- super.open( baseUrl, browser, seleniumHost, seleniumPort, Integer.toString( maxWaitTimeInMs ) );
-
- getSelenium().open( baseUrl );
-
- waitPage();
-
- // if not admin user created create one
- if ( isElementVisible( "create-admin-link" ) )
- {
- Assert.assertFalse( getSelenium().isVisible( "login-link-a" ) );
- Assert.assertFalse( getSelenium().isVisible( "register-link-a" ) );
- clickLinkWithLocator( "create-admin-link-a", false );
- assertCreateAdmin();
- String fullname = getProperty( "ADMIN_FULLNAME" );
- String username = getProperty( "ADMIN_USERNAME" );
- String mail = getProperty( "ADMIN_EMAIL" );
- String password = getProperty( "ADMIN_PASSWORD" );
- submitAdminData( fullname, mail, password );
- assertUserLoggedIn( username );
- clickLinkWithLocator( "logout-link-a" );
- }
- else
- {
- Assert.assertTrue( getSelenium().isVisible( "login-link-a" ) );
- Assert.assertTrue( getSelenium().isVisible( "register-link-a" ) );
- login( getAdminUsername(), getAdminPassword() );
- }
-
- }
-
@Test( groups = { "about" }, alwaysRun = true )
public void testHome()
{
public class LoginTest
extends AbstractArchivaTest
{
- @Test( alwaysRun = true )
+ @Test
public void testWithBadUsername()
{
goToLoginPage();
}
- @Test( dependsOnMethods = { "testWithBadUsername" }, alwaysRun = true )
+ @Test
public void testWithBadPassword()
{
goToLoginPage();
assertTextPresent( "You have entered an incorrect username and/or password" );
}
- @Test( dependsOnMethods = { "testWithBadPassword" }, alwaysRun = true )
+ @Test
public void testWithEmptyUsername()
{
goToLoginPage();
setFieldValue( "user-login-form-password", "password" );
clickLinkWithLocator( "modal-login-ok", true );
- //assertTextPresent( "User Name is required" );
assertTextPresent( "This field is required." );
}
- @Test( dependsOnMethods = { "testWithEmptyUsername" }, alwaysRun = true )
+ @Test( alwaysRun = true )
public void testWithEmptyPassword()
{
goToLoginPage();
setFieldValue( "user-login-form-username", getProperty( "ADMIN_USERNAME" ) );
clickLinkWithLocator( "modal-login-ok", true );
- //assertTextPresent( "You have entered an incorrect username and/or password" );
assertTextPresent( "This field is required." );
}
- @Test( groups = { "loginSuccess" }, dependsOnMethods = { "testWithEmptyPassword" }, alwaysRun = true )
+ @Test
public void testWithCorrectUsernamePassword()
{
goToLoginPage();
/**
* @author Olivier Lamy
*/
-@Test( groups = { "usermanagement" }, dependsOnMethods = { "testWithCorrectUsernamePassword" } )
+@Test( groups = { "usermanagement" }, dependsOnGroups = "about" )
public class RolesManagementTest
extends AbstractArchivaTest
{
+ @Test
public void testReadRolesAndUpdateDescription()
throws Exception
{
+ login( getAdminUsername(), getAdminPassword() );
clickLinkWithLocator( "menu-roles-list-a", true );
assertTextPresent( "Archiva System Administrator " );
Assert.assertTrue( StringUtils.isEmpty( getText( "role-description-Guest" ) ) );
/**
* @author Olivier Lamy
*/
-@Test( groups = { "usermanagement" }, dependsOnMethods = { "testWithCorrectUsernamePassword" } )
+@Test( groups = { "usermanagement" }, dependsOnGroups = { "about" } )
public class UserManagementTest
extends AbstractArchivaTest
{
package org.apache.archiva.web.test.parent;
import org.testng.Assert;
+import org.testng.annotations.AfterTest;
+import org.testng.annotations.BeforeSuite;
+import org.testng.annotations.BeforeTest;
+import org.testng.annotations.Optional;
+import org.testng.annotations.Parameters;
import java.io.File;
import java.io.IOException;
protected String fullname;
+ @Override
+ @AfterTest
+ public void close()
+ throws Exception
+ {
+ super.close();
+ }
+
+ @Override
+ @BeforeSuite
+ public void open()
+ throws Exception
+ {
+ super.open();
+ }
+
+ public void assertAdminCreated()
+ throws Exception
+ {
+ initializeArchiva( System.getProperty( "baseUrl" ), System.getProperty( "browser" ),
+ Integer.getInteger( "maxWaitTimeInMs" ), System.getProperty( "seleniumHost" ),
+ Integer.getInteger( "seleniumPort" ) );
+ }
+
+ @BeforeTest
+ @Parameters( { "baseUrl", "browser", "maxWaitTimeInMs", "seleniumHost", "seleniumPort" } )
+ public void initializeArchiva( String baseUrl, String browser, int maxWaitTimeInMs,
+ @Optional( "localhost" ) String seleniumHost, @Optional( "4444" ) int seleniumPort )
+ throws Exception
+ {
+
+ super.open( baseUrl, browser, seleniumHost, seleniumPort, Integer.toString( maxWaitTimeInMs ) );
+
+ getSelenium().open( baseUrl );
+
+ waitPage();
+
+ // if not admin user created create one
+ if ( isElementVisible( "create-admin-link" ) )
+ {
+ Assert.assertFalse( getSelenium().isVisible( "login-link-a" ) );
+ Assert.assertFalse( getSelenium().isVisible( "register-link-a" ) );
+ clickLinkWithLocator( "create-admin-link-a", false );
+ assertCreateAdmin();
+ String fullname = getProperty( "ADMIN_FULLNAME" );
+ String username = getAdminUsername();
+ String mail = getProperty( "ADMIN_EMAIL" );
+ String password = getProperty( "ADMIN_PASSWORD" );
+ submitAdminData( fullname, mail, password );
+ assertUserLoggedIn( username );
+ clickLinkWithLocator( "logout-link-a" );
+ }
+ else
+ {
+ Assert.assertTrue( getSelenium().isVisible( "login-link-a" ) );
+ Assert.assertTrue( getSelenium().isVisible( "register-link-a" ) );
+ login( getAdminUsername(), getAdminPassword() );
+ }
+
+ }
+
protected static String getErrorMessageText()
{
return getSelenium().getText( "//ul[@class='errorMessage']/li/span" );
public void goToHomePage()
{
- getSelenium().open( "" );
+ getSelenium().open( baseUrl );
}
// Upload Artifact
assertLinkNotVisible( "Logout" );
assertLinkVisible( "Login" );
}
+
+ protected String getAdminUserName()
+ {
+ return getProperty( "ADMIN_FULLNAME" );
+ }
}
\ No newline at end of file
<dependency>
<groupId>org.testng</groupId>
<artifactId>testng</artifactId>
- <version>6.2.1</version>
+ <version>6.4</version>
<scope>test</scope>
</dependency>
<dependency>