Updates to the Selenium WebDriver tests.

This commit is contained in:
Graham Triggs 2016-01-26 20:52:43 +00:00
parent 5053b4cff4
commit aac9373f85
55 changed files with 2224 additions and 774 deletions

View file

@ -8,6 +8,10 @@ public final class DriverFactory {
private static WebDriver driver = null;
private static Object closeToken = null;
static {
Runtime.getRuntime().addShutdownHook(new ShutdownHook());
}
public static WebDriver getDriver() {
if (driver == null) {
driver = new FirefoxDriver();
@ -16,23 +20,47 @@ public final class DriverFactory {
return driver;
}
public static void close() {
public static boolean close() {
if (closeToken == null && driver != null) {
driver.quit();
driver = null;
return true;
}
return false;
}
public static boolean close(Object token) {
if (closeToken == token || (closeToken != null && closeToken.equals(token))) {
if (driver != null) {
driver.quit();
driver = null;
closeToken = null;
return true;
}
}
public static void close(Object token) {
if (closeToken == token || (closeToken != null && closeToken.equals(token))) {
return false;
}
public static boolean setCloseToken(Object token) {
if (closeToken == null) {
closeToken = token;
return true;
}
return false;
}
private static class ShutdownHook extends Thread {
ShutdownHook() { }
@Override
public void run() {
if (driver != null) {
driver.quit();
driver = null;
}
}
}
public static void setCloseToken(Object token) {
closeToken = token;
}
}

View file

@ -1,26 +1,18 @@
package org.vivoweb.vivo.selenium.tests;
package org.vivoweb.vivo.selenium;
import org.apache.commons.lang3.StringUtils;
import org.junit.After;
import org.junit.Assert;
import org.junit.Before;
import org.junit.Test;
import org.openqa.selenium.Alert;
import org.openqa.selenium.By;
import org.openqa.selenium.Keys;
import org.openqa.selenium.NoSuchElementException;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.interactions.Actions;
import org.openqa.selenium.support.ui.ExpectedConditions;
import org.openqa.selenium.support.ui.Select;
import org.openqa.selenium.support.ui.WebDriverWait;
import org.vivoweb.vivo.selenium.DriverFactory;
import org.vivoweb.vivo.selenium.SeleniumUtils;
public class AbstractVIVOSeleniumTest extends AbstractSeleniumTest {
protected void vivoAutoCompleteSelect(By by, String text, Keys... keys) {
WebElement element = driver.findElement(by);
public final class VIVOAppTester extends WebAppTester {
private static String loggedInAs = null;
private VIVOAppTester() { }
public static void vivoAutoCompleteSelect(By by, String text, Keys... keys) {
WebElement element = driver().findElement(by);
int count = 0;
WebElement autoComplete = null;
@ -33,7 +25,7 @@ public class AbstractVIVOSeleniumTest extends AbstractSeleniumTest {
try {
Thread.sleep(250);
autoComplete = driver.findElement(By.className("ui-autocomplete"));
autoComplete = driver().findElement(By.className("ui-autocomplete"));
} catch (InterruptedException e) {
throw new RuntimeException(e);
} catch (NoSuchElementException nse) {
@ -75,13 +67,13 @@ public class AbstractVIVOSeleniumTest extends AbstractSeleniumTest {
throw new RuntimeException(e);
}
WebElement selected = driver.findElement(By.id("ui-active-menuitem"));
WebElement selected = driver().findElement(By.id("ui-active-menuitem"));
if (selected != null) {
selected.click();
}
}
protected void vivoDeleteIndividual(String category, String individual) {
public static void vivoDeleteIndividual(String category, String individual) {
clickAndWait(By.linkText("Index"));
assertTitle("Index of Contents");
@ -92,7 +84,7 @@ public class AbstractVIVOSeleniumTest extends AbstractSeleniumTest {
int pageCount = 1;
do {
try {
individualLink = driver.findElement(By.linkText(individual));
individualLink = driver().findElement(By.linkText(individual));
} catch (NoSuchElementException nse) {
}
@ -113,7 +105,7 @@ public class AbstractVIVOSeleniumTest extends AbstractSeleniumTest {
vivoDeleteIndividual();
}
protected void vivoDeleteIndividual() {
public static void vivoDeleteIndividual() {
clickAndWait(By.linkText("Edit this individual"));
assertTitle("Individual Control Panel");
@ -126,7 +118,11 @@ public class AbstractVIVOSeleniumTest extends AbstractSeleniumTest {
assertTitle("VIVO Site Administration");
}
protected void vivoLogIn(String email, String password) {
public static void vivoLogIn(String email, String password) {
if (loggedInAs != null) {
vivoLogOut();
}
clickAndWait(By.linkText("Log in")); // clickAndWait,link=Log in
assertTitle("Log in to VIVO"); // aseertTitle,Log in to VIVO
@ -135,13 +131,40 @@ public class AbstractVIVOSeleniumTest extends AbstractSeleniumTest {
clickAndWait(By.name("loginForm")); // clickAndWait,name=loginForm
assertTitle("VIVO"); // assertTitle,VIVO
loggedInAs = email;
}
protected void vivoLogOut() {
Actions actions = new Actions(driver);
actions.moveToElement( driver.findElement(By.id("user-menu")) ).perform();
driver.findElement(By.linkText("Log out")).click();
public static void vivoLogOut() {
if (loggedInAs != null) {
Actions actions = new Actions(driver());
actions.moveToElement(driver().findElement(By.id("user-menu"))).perform();
driver().findElement(By.linkText("Log out")).click();
loggedInAs = null;
}
}
public static void startTests() {
Class token = getCallingClass(VIVOAppTester.class);
if (token != null) {
if (DriverFactory.setCloseToken(token)) {
deleteAllVisibleCookies();
}
}
open("/");
assertTitle("VIVO");
}
public static void endTests() {
Class token = getCallingClass(VIVOAppTester.class);
if (token != null) {
DriverFactory.close(token);
} else {
DriverFactory.close();
}
}
}

View file

@ -0,0 +1,152 @@
package org.vivoweb.vivo.selenium;
import com.sun.tools.internal.xjc.Driver;
import org.apache.commons.lang3.StringUtils;
import org.junit.Assert;
import org.openqa.selenium.Alert;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.firefox.FirefoxDriver;
import org.openqa.selenium.support.ui.ExpectedConditions;
import org.openqa.selenium.support.ui.Select;
import org.openqa.selenium.support.ui.WebDriverWait;
public class WebAppTester {
private static WebAppTester webAppTester = new WebAppTester();
public static void assertConfirmation(String text) {
WebDriverWait wait = new WebDriverWait(driver(), 2);
wait.until(ExpectedConditions.alertIsPresent());
Alert alert = driver().switchTo().alert();
if (!StringUtils.isEmpty(text)) {
Assert.assertTrue(text.equalsIgnoreCase(alert.getText()));
}
alert.accept();
driver().switchTo().defaultContent();
}
public static void assertTitle(String title) {
Assert.assertEquals(title, driver().getTitle());
}
public static void clickAndWait(By by) {
driver().findElement(by).click();
}
public static void deleteAllVisibleCookies() {
driver().manage().deleteAllCookies();
}
public static void open(String urlPart) {
SeleniumUtils.navigate(driver(), urlPart);
}
public static void pause(long timeout) {
try {
Thread.sleep(timeout);
} catch (InterruptedException e) {
}
}
public static void selectByLabel(By by, String label) {
Select select = new Select(driver().findElement(by));
select.selectByVisibleText(label);
}
public static void type(By by, String text) {
WebElement element = driver().findElement(by);
element.sendKeys(text);
}
public static void typeTinyMCE(String text) {
// <td> tinyMCE.activeEditor.setContent('The Primate College of America is a privately-funded college for the study of primates.')</td>
driver().switchTo().frame("literal_ifr");
WebElement element = driver().findElement(By.cssSelector("body"));
element.click();
element.sendKeys(text);
driver().switchTo().defaultContent();
}
public static void verifyElementPresent(By by) {
Assert.assertNotNull(driver().findElement(by));
}
public static void verifyTextPresent(String... text) {
if (text != null) {
String bodyText = driver().findElement(By.xpath("//body")).getText();
for (String str : text) {
Assert.assertTrue(bodyText.contains(str));
}
}
// Assert.assertNotNull(driver().findElement(xpathForTextPresent(text)));
}
public static boolean waitForElementPresent(By by) {
return waitForElementPresent(by, 30);
}
public static boolean waitForElementPresent(By by, int timeout) {
WebDriverWait wait = new WebDriverWait(driver(), timeout);
return wait.until(ExpectedConditions.presenceOfElementLocated(by)) != null;
}
public static boolean waitForTextPresent(String text) {
return waitForTextPresent(text, 30);
}
public static boolean waitForTextPresent(String text, int timeout) {
WebDriverWait wait = new WebDriverWait(driver(), timeout);
return wait.until(ExpectedConditions.presenceOfElementLocated(xpathForTextPresent(text))) != null;
}
protected static By xpathForTextPresent(String text) {
return By.xpath("//*[text()[contains(.,'" + text + "')]]");
}
protected static WebDriver driver() {
return DriverFactory.getDriver();
}
public static void startTests() {
Class token = getCallingClass(WebAppTester.class);
if (token != null) {
DriverFactory.setCloseToken(token);
}
}
public static void endTests() {
Class token = getCallingClass(WebAppTester.class);
if (token != null) {
DriverFactory.setCloseToken(token);
}
}
protected static Class getCallingClass(Class thisClass) {
boolean foundThisClass = false;
StackTraceElement[] elements = Thread.currentThread().getStackTrace();
int idx = 0;
while (idx < elements.length) {
if (foundThisClass) {
if (!thisClass.getCanonicalName().equals(elements[idx].getClassName())) {
try {
return Class.forName(elements[idx].getClassName());
} catch (ClassNotFoundException e) {
}
}
} else {
}
if (thisClass.getCanonicalName().equals(elements[idx].getClassName())) {
foundThisClass = true;
}
idx++;
}
return null;
}
}

View file

@ -4,7 +4,7 @@ import org.junit.AfterClass;
import org.junit.BeforeClass;
import org.junit.runner.RunWith;
import org.junit.runners.Suite.SuiteClasses;
import org.vivoweb.vivo.selenium.DriverFactory;
import org.vivoweb.vivo.selenium.VIVOAppTester;
import org.vivoweb.vivo.selenium.VIVOSuite;
import org.vivoweb.vivo.selenium.tests.CheckBrowseOptions;
import org.vivoweb.vivo.selenium.tests.CheckIndexView;
@ -56,11 +56,11 @@ import org.vivoweb.vivo.selenium.tests.VerifyAllThingsSearchable;
public class AddNonPersonThings {
@BeforeClass
public static void setup() {
DriverFactory.setCloseToken(AddNonPersonThings.class);
VIVOAppTester.startTests();
}
@AfterClass
public static void shutdown() {
DriverFactory.close(AddNonPersonThings.class);
VIVOAppTester.endTests();
}
}

View file

@ -1,119 +0,0 @@
package org.vivoweb.vivo.selenium.tests;
import org.apache.commons.lang3.StringUtils;
import org.junit.After;
import org.junit.Assert;
import org.junit.Before;
import org.openqa.selenium.Alert;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.support.ui.ExpectedConditions;
import org.openqa.selenium.support.ui.Select;
import org.openqa.selenium.support.ui.WebDriverWait;
import org.vivoweb.vivo.selenium.DriverFactory;
import org.vivoweb.vivo.selenium.SeleniumUtils;
public class AbstractSeleniumTest {
protected WebDriver driver;
public void assertConfirmation(String text) {
WebDriverWait wait = new WebDriverWait(driver, 2);
wait.until(ExpectedConditions.alertIsPresent());
Alert alert = driver.switchTo().alert();
if (!StringUtils.isEmpty(text)) {
Assert.assertTrue(text.equalsIgnoreCase(alert.getText()));
}
alert.accept();
driver.switchTo().defaultContent();
}
protected void assertTitle(String title) {
Assert.assertEquals(title, driver.getTitle());
}
protected void clickAndWait(By by) {
driver.findElement(by).click();
}
protected void deleteAllVisibleCookies() {
driver.manage().deleteAllCookies();
}
protected void open(String urlPart) {
SeleniumUtils.navigate(driver, urlPart);
}
protected void pause(long timeout) {
try {
Thread.sleep(timeout);
} catch (InterruptedException e) {
}
}
protected void selectByLabel(By by, String label) {
Select select = new Select(driver.findElement(by));
select.selectByVisibleText(label);
}
protected void type(By by, String text) {
WebElement element = driver.findElement(by);
element.sendKeys(text);
}
protected void typeTinyMCE(String text) {
// <td> tinyMCE.activeEditor.setContent('The Primate College of America is a privately-funded college for the study of primates.')</td>
driver.switchTo().frame("literal_ifr");
WebElement element = driver.findElement(By.cssSelector("body"));
element.click();
element.sendKeys(text);
driver.switchTo().defaultContent();
}
protected void verifyElementPresent(By by) {
Assert.assertNotNull(driver.findElement(by));
}
protected void verifyTextPresent(String... text) {
if (text != null) {
String bodyText = driver.findElement(By.xpath("//body")).getText();
for (String str : text) {
Assert.assertTrue(bodyText.contains(str));
}
}
// Assert.assertNotNull(driver.findElement(xpathForTextPresent(text)));
}
protected boolean waitForElementPresent(By by) {
return waitForElementPresent(by, 30);
}
protected boolean waitForElementPresent(By by, int timeout) {
WebDriverWait wait = new WebDriverWait(driver, timeout);
return wait.until(ExpectedConditions.presenceOfElementLocated(by)) != null;
}
protected boolean waitForTextPresent(String text) {
return waitForTextPresent(text, 30);
}
protected boolean waitForTextPresent(String text, int timeout) {
WebDriverWait wait = new WebDriverWait(driver, timeout);
return wait.until(ExpectedConditions.presenceOfElementLocated(xpathForTextPresent(text))) != null;
}
protected By xpathForTextPresent(String text) {
return By.xpath("//*[text()[contains(.,'" + text + "')]]");
}
@Before
public void setup() {
driver = DriverFactory.getDriver();
}
@After
public void cleanup() {
DriverFactory.close();
}
}

View file

@ -1,16 +1,28 @@
package org.vivoweb.vivo.selenium.tests;
import org.junit.AfterClass;
import org.junit.BeforeClass;
import org.junit.FixMethodOrder;
import org.junit.Test;
import org.junit.runners.MethodSorters;
import org.openqa.selenium.By;
import static org.vivoweb.vivo.selenium.VIVOAppTester.*;
@FixMethodOrder(MethodSorters.NAME_ASCENDING)
public class CheckBrowseOptions {
@BeforeClass
public static void setUp() {
startTests();
vivoLogOut();
}
@AfterClass
public static void tearDown() {
endTests();
}
public class CheckBrowseOptions extends AbstractVIVOSeleniumTest {
@Test
public void checkBrowseOptions() {
deleteAllVisibleCookies();
open("/");
assertTitle("VIVO");
verifyElementPresent(By.linkText("Books"));
verifyElementPresent(By.linkText("Grants"));

View file

@ -1,16 +1,28 @@
package org.vivoweb.vivo.selenium.tests;
import org.junit.AfterClass;
import org.junit.BeforeClass;
import org.junit.FixMethodOrder;
import org.junit.Test;
import org.junit.runners.MethodSorters;
import org.openqa.selenium.By;
import static org.vivoweb.vivo.selenium.VIVOAppTester.*;
@FixMethodOrder(MethodSorters.NAME_ASCENDING)
public class CheckIndexView {
@BeforeClass
public static void setUp() {
startTests();
vivoLogOut();
}
@AfterClass
public static void tearDown() {
endTests();
}
public class CheckIndexView extends AbstractVIVOSeleniumTest {
@Test
public void checkIndexView() {
deleteAllVisibleCookies();
open("/");
assertTitle("VIVO");
clickAndWait(By.linkText("Index"));
verifyTextPresent(

View file

@ -1,16 +1,28 @@
package org.vivoweb.vivo.selenium.tests;
import org.junit.AfterClass;
import org.junit.BeforeClass;
import org.junit.FixMethodOrder;
import org.junit.Test;
import org.junit.runners.MethodSorters;
import org.openqa.selenium.By;
import static org.vivoweb.vivo.selenium.VIVOAppTester.*;
@FixMethodOrder(MethodSorters.NAME_ASCENDING)
public class CheckPublicView {
@BeforeClass
public static void setUp() {
startTests();
vivoLogOut();
}
@AfterClass
public static void tearDown() {
endTests();
}
public class CheckPublicView extends AbstractVIVOSeleniumTest {
@Test
public void checkPublicView() {
deleteAllVisibleCookies();
open("/");
assertTitle("VIVO");
clickAndWait(By.linkText("Index"));
assertTitle("Index of Contents");

View file

@ -1,19 +1,30 @@
package org.vivoweb.vivo.selenium.tests;
import org.junit.AfterClass;
import org.junit.BeforeClass;
import org.junit.FixMethodOrder;
import org.junit.Test;
import org.junit.runners.MethodSorters;
import org.openqa.selenium.By;
import org.openqa.selenium.Keys;
import static org.vivoweb.vivo.selenium.VIVOAppTester.*;
@FixMethodOrder(MethodSorters.NAME_ASCENDING)
public class CreateActivity {
@BeforeClass
public static void setUp() {
startTests();
vivoLogIn("testAdmin@cornell.edu", "Password");
}
@AfterClass
public static void tearDown() {
vivoLogOut();
endTests();
}
public class CreateActivity extends AbstractVIVOSeleniumTest {
@Test
public void createActivity() {
deleteAllVisibleCookies();
open("/");
assertTitle("VIVO");
vivoLogIn("testAdmin@cornell.edu", "Password");
clickAndWait(By.linkText("Site Admin"));
assertTitle("VIVO Site Administration");
@ -205,7 +216,5 @@ public class CreateActivity extends AbstractVIVOSeleniumTest {
verifyElementPresent(By.linkText("Primate Habitat Research Grant"));
verifyElementPresent(By.linkText("Primate Survival Planning Grant"));
verifyElementPresent(By.linkText("Primate Info"));
vivoLogOut();
}
}

View file

@ -1,19 +1,30 @@
package org.vivoweb.vivo.selenium.tests;
import org.junit.AfterClass;
import org.junit.BeforeClass;
import org.junit.FixMethodOrder;
import org.junit.Test;
import org.junit.runners.MethodSorters;
import org.openqa.selenium.By;
import org.openqa.selenium.Keys;
import static org.vivoweb.vivo.selenium.VIVOAppTester.*;
@FixMethodOrder(MethodSorters.NAME_ASCENDING)
public class CreateCourses {
@BeforeClass
public static void setUp() {
startTests();
vivoLogIn("testAdmin@cornell.edu", "Password");
}
@AfterClass
public static void tearDown() {
vivoLogOut();
endTests();
}
public class CreateCourses extends AbstractVIVOSeleniumTest {
@Test
public void createCourses() {
deleteAllVisibleCookies();
open("/");
assertTitle("VIVO");
vivoLogIn("testAdmin@cornell.edu", "Password");
clickAndWait(By.linkText("Site Admin"));
assertTitle("VIVO Site Administration");
@ -231,8 +242,5 @@ public class CreateCourses extends AbstractVIVOSeleniumTest {
verifyElementPresent(By.linkText("Primate Memorial Building"));
verifyElementPresent(By.linkText("Liberia"));
verifyElementPresent(By.linkText("Introduction to Primates"));
vivoLogOut();
}
}

View file

@ -1,19 +1,30 @@
package org.vivoweb.vivo.selenium.tests;
import org.junit.AfterClass;
import org.junit.BeforeClass;
import org.junit.FixMethodOrder;
import org.junit.Test;
import org.junit.runners.MethodSorters;
import org.openqa.selenium.By;
import org.openqa.selenium.Keys;
import static org.vivoweb.vivo.selenium.VIVOAppTester.*;
@FixMethodOrder(MethodSorters.NAME_ASCENDING)
public class CreateEquipment {
@BeforeClass
public static void setUp() {
startTests();
vivoLogIn("testAdmin@cornell.edu", "Password");
}
@AfterClass
public static void tearDown() {
vivoLogOut();
endTests();
}
public class CreateEquipment extends AbstractVIVOSeleniumTest {
@Test
public void createEquipment() {
deleteAllVisibleCookies();
open("/");
assertTitle("VIVO");
vivoLogIn("testAdmin@cornell.edu", "Password");
clickAndWait(By.linkText("Site Admin"));
assertTitle("VIVO Site Administration");
@ -125,7 +136,5 @@ public class CreateEquipment extends AbstractVIVOSeleniumTest {
verifyElementPresent(By.linkText("Primate University of America"));
verifyElementPresent(By.linkText("Primate Health Check"));
verifyElementPresent(By.linkText("United States of America"));
vivoLogOut();
}
}

View file

@ -1,19 +1,30 @@
package org.vivoweb.vivo.selenium.tests;
import org.junit.AfterClass;
import org.junit.BeforeClass;
import org.junit.FixMethodOrder;
import org.junit.Test;
import org.junit.runners.MethodSorters;
import org.openqa.selenium.By;
import org.openqa.selenium.Keys;
import static org.vivoweb.vivo.selenium.VIVOAppTester.*;
@FixMethodOrder(MethodSorters.NAME_ASCENDING)
public class CreateEvent {
@BeforeClass
public static void setUp() {
startTests();
vivoLogIn("testAdmin@cornell.edu", "Password");
}
@AfterClass
public static void tearDown() {
vivoLogOut();
endTests();
}
public class CreateEvent extends AbstractVIVOSeleniumTest {
@Test
public void createEvent() {
deleteAllVisibleCookies();
open("/");
assertTitle("VIVO");
vivoLogIn("testAdmin@cornell.edu", "Password");
clickAndWait(By.linkText("Site Admin"));
assertTitle("VIVO Site Administration");
@ -204,7 +215,5 @@ public class CreateEvent extends AbstractVIVOSeleniumTest {
verifyElementPresent(By.linkText("http://primatehealthintro.cornell.edu"));
verifyElementPresent(By.linkText("State Fair Park"));
verifyElementPresent(By.linkText("Congo"));
vivoLogOut();
}
}

View file

@ -1,19 +1,30 @@
package org.vivoweb.vivo.selenium.tests;
import org.junit.AfterClass;
import org.junit.BeforeClass;
import org.junit.FixMethodOrder;
import org.junit.Test;
import org.junit.runners.MethodSorters;
import org.openqa.selenium.By;
import org.openqa.selenium.Keys;
import static org.vivoweb.vivo.selenium.VIVOAppTester.*;
@FixMethodOrder(MethodSorters.NAME_ASCENDING)
public class CreateLocation {
@BeforeClass
public static void setUp() {
startTests();
vivoLogIn("testAdmin@cornell.edu", "Password");
}
@AfterClass
public static void tearDown() {
vivoLogOut();
endTests();
}
public class CreateLocation extends AbstractVIVOSeleniumTest {
@Test
public void createLocation() {
deleteAllVisibleCookies();
open("/");
assertTitle("VIVO");
vivoLogIn("testAdmin@cornell.edu", "Password");
clickAndWait(By.linkText("Site Admin"));
assertTitle("VIVO Site Administration");
@ -112,7 +123,5 @@ public class CreateLocation extends AbstractVIVOSeleniumTest {
verifyElementPresent(By.linkText("Primate Health Check"));
verifyElementPresent(By.linkText("Lab Admin Office"));
verifyElementPresent(By.linkText("Primate Quad"));
vivoLogOut();
}
}

View file

@ -1,19 +1,30 @@
package org.vivoweb.vivo.selenium.tests;
import org.junit.AfterClass;
import org.junit.BeforeClass;
import org.junit.FixMethodOrder;
import org.junit.Test;
import org.junit.runners.MethodSorters;
import org.openqa.selenium.By;
import org.openqa.selenium.Keys;
import static org.vivoweb.vivo.selenium.VIVOAppTester.*;
@FixMethodOrder(MethodSorters.NAME_ASCENDING)
public class CreateOrganization {
@BeforeClass
public static void setUp() {
startTests();
vivoLogIn("testAdmin@cornell.edu", "Password");
}
@AfterClass
public static void tearDown() {
vivoLogOut();
endTests();
}
public class CreateOrganization extends AbstractVIVOSeleniumTest {
@Test
public void createOrganization() {
deleteAllVisibleCookies();
open("/");
assertTitle("VIVO");
vivoLogIn("testAdmin@cornell.edu", "Password");
clickAndWait(By.linkText("Site Admin"));
assertTitle("VIVO Site Administration");
@ -564,7 +575,5 @@ public class CreateOrganization extends AbstractVIVOSeleniumTest {
verifyElementPresent(By.linkText("Primate College of New York"));
verifyElementPresent(By.linkText("Primate University of America"));
verifyElementPresent(By.linkText("Primate Colleges of the World"));
vivoLogOut();
}
}

View file

@ -1,19 +1,30 @@
package org.vivoweb.vivo.selenium.tests;
import org.junit.AfterClass;
import org.junit.BeforeClass;
import org.junit.FixMethodOrder;
import org.junit.Test;
import org.junit.runners.MethodSorters;
import org.openqa.selenium.By;
import org.openqa.selenium.Keys;
import static org.vivoweb.vivo.selenium.VIVOAppTester.*;
@FixMethodOrder(MethodSorters.NAME_ASCENDING)
public class CreateTopic {
@BeforeClass
public static void setUp() {
startTests();
vivoLogIn("testAdmin@cornell.edu", "Password");
}
@AfterClass
public static void tearDown() {
vivoLogOut();
endTests();
}
public class CreateTopic extends AbstractVIVOSeleniumTest {
@Test
public void createTopic() {
deleteAllVisibleCookies();
open("/");
assertTitle("VIVO");
vivoLogIn("testAdmin@cornell.edu", "Password");
clickAndWait(By.linkText("Site Admin"));
assertTitle("VIVO Site Administration");
@ -88,7 +99,5 @@ public class CreateTopic extends AbstractVIVOSeleniumTest {
verifyElementPresent(By.linkText("Animal Health"));
verifyElementPresent(By.linkText("Primate Diet"));
verifyElementPresent(By.linkText("Ape Health"));
vivoLogOut();
}
}

View file

@ -1,51 +1,39 @@
package org.vivoweb.vivo.selenium.tests;
import org.junit.AfterClass;
import org.junit.BeforeClass;
import org.junit.FixMethodOrder;
import org.junit.Test;
import org.junit.runners.MethodSorters;
import org.openqa.selenium.By;
import static org.vivoweb.vivo.selenium.VIVOAppTester.*;
public class DeleteActivities extends AbstractVIVOSeleniumTest {
@Test
public void deleteActivities() {
deleteAllVisibleCookies();
open("/");
assertTitle("VIVO");
@FixMethodOrder(MethodSorters.NAME_ASCENDING)
public class DeleteActivities {
@BeforeClass
public static void setUp() {
startTests();
vivoLogIn("testAdmin@cornell.edu", "Password");
}
clickAndWait(By.linkText("Index"));
assertTitle("Index of Contents");
clickAndWait(By.linkText("Project"));
assertTitle("Project");
clickAndWait(By.linkText("Human and Ape Brain Comparison"));
assertTitle("Human and Ape Brain Comparison");
vivoDeleteIndividual();
clickAndWait(By.linkText("Index"));
assertTitle("Index of Contents");
clickAndWait(By.linkText("Service"));
assertTitle("Service");
clickAndWait(By.linkText("Gorilla Moving Company"));
assertTitle("Gorilla Moving Company");
vivoDeleteIndividual();
clickAndWait(By.linkText("Index"));
assertTitle("Index of Contents");
clickAndWait(By.linkText("Service"));
assertTitle("Service");
clickAndWait(By.linkText("Primate Heart Health"));
assertTitle("Primate Heart Health");
vivoDeleteIndividual();
@AfterClass
public static void tearDown() {
vivoLogOut();
endTests();
}
@Test
public void deleteProjectHumanApeBrainComparison() {
vivoDeleteIndividual("Project", "Human and Ape Brain Comparison");
}
@Test
public void deleteServiceGorillaMovingCompany() {
vivoDeleteIndividual("Service", "Gorilla Moving Company");
}
@Test
public void deleteServicePrimateHeartHealth() {
vivoDeleteIndividual("Service", "Primate Heart Health");
}
}

View file

@ -1,42 +1,35 @@
package org.vivoweb.vivo.selenium.tests;
import org.junit.AfterClass;
import org.junit.BeforeClass;
import org.junit.FixMethodOrder;
import org.junit.Test;
import org.junit.runners.MethodSorters;
import org.openqa.selenium.By;
import static org.vivoweb.vivo.selenium.VIVOAppTester.*;
public class DeleteCourses extends AbstractVIVOSeleniumTest {
@Test
public void deleteCourses() {
deleteAllVisibleCookies();
open("/");
assertTitle("VIVO");
@FixMethodOrder(MethodSorters.NAME_ASCENDING)
public class DeleteCourses {
@BeforeClass
public static void setUp() {
startTests();
vivoLogIn("testAdmin@cornell.edu", "Password");
}
/* From CreateCourses */
clickAndWait(By.linkText("Index"));
assertTitle("Index of Contents");
clickAndWait(By.linkText("Course"));
assertTitle("Course");
clickAndWait(By.linkText("Introduction to Primate Health"));
assertTitle("Introduction to Primate Health");
vivoDeleteIndividual();
/* */
clickAndWait(By.linkText("Index"));
assertTitle("Index of Contents");
clickAndWait(By.linkText("Course"));
assertTitle("Course");
clickAndWait(By.linkText("Introduction to Primates"));
assertTitle("Introduction to Primates");
vivoDeleteIndividual();
@AfterClass
public static void tearDown() {
vivoLogOut();
endTests();
}
@Test
public void deleteCourseIntroductionPrimateHealth() {
// From CreateCourses
vivoDeleteIndividual("Course", "Introduction to Primate Health");
}
@Test
public void deleteCourseIntroductionPrimates() {
vivoDeleteIndividual("Course", "Introduction to Primates");
}
}

View file

@ -1,41 +1,35 @@
package org.vivoweb.vivo.selenium.tests;
import org.junit.AfterClass;
import org.junit.BeforeClass;
import org.junit.FixMethodOrder;
import org.junit.Test;
import org.junit.runners.MethodSorters;
import org.openqa.selenium.By;
import static org.vivoweb.vivo.selenium.VIVOAppTester.*;
public class DeleteEquipment extends AbstractVIVOSeleniumTest {
@Test
public void deleteEquipment() {
deleteAllVisibleCookies();
open("/");
assertTitle("VIVO");
@FixMethodOrder(MethodSorters.NAME_ASCENDING)
public class DeleteEquipment {
@BeforeClass
public static void setUp() {
startTests();
vivoLogIn("testAdmin@cornell.edu", "Password");
}
clickAndWait(By.linkText("Index"));
assertTitle("Index of Contents");
clickAndWait(By.linkText("Equipment"));
assertTitle("Equipment");
clickAndWait(By.linkText("Portable Primate Habitat"));
assertTitle("Portable Primate Habitat");
vivoDeleteIndividual();
/* From CreateEquipment */
clickAndWait(By.linkText("Index"));
assertTitle("Index of Contents");
clickAndWait(By.linkText("Equipment"));
assertTitle("Equipment");
clickAndWait(By.linkText("Primate Feeder"));
assertTitle("Primate Feeder");
vivoDeleteIndividual();
/* */
@AfterClass
public static void tearDown() {
vivoLogOut();
endTests();
}
@Test
public void deleteEquipmentPortablePrimateHabitat() {
vivoDeleteIndividual("Equipment", "Portable Primate Habitat");
}
@Test
public void deleteEquipmentPrimateFeeder() {
// From CreateEquipment
vivoDeleteIndividual("Equipment", "Primate Feeder");
}
}

View file

@ -1,88 +1,58 @@
package org.vivoweb.vivo.selenium.tests;
import org.junit.AfterClass;
import org.junit.BeforeClass;
import org.junit.FixMethodOrder;
import org.junit.Test;
import org.junit.runners.MethodSorters;
import org.openqa.selenium.By;
import static org.vivoweb.vivo.selenium.VIVOAppTester.*;
public class DeleteEvents extends AbstractVIVOSeleniumTest {
@Test
public void deleteEvents() {
deleteAllVisibleCookies();
open("/");
assertTitle("VIVO");
@FixMethodOrder(MethodSorters.NAME_ASCENDING)
public class DeleteEvents {
@BeforeClass
public static void setUp() {
startTests();
vivoLogIn("testAdmin@cornell.edu", "Password");
clickAndWait(By.linkText("Index"));
assertTitle("Index of Contents");
clickAndWait(By.linkText("Event"));
assertTitle("Event");
clickAndWait(By.linkText("New Primate Students"));
assertTitle("New Primate Students");
vivoDeleteIndividual();
clickAndWait(By.linkText("Index"));
assertTitle("Index of Contents");
clickAndWait(By.linkText("Event"));
assertTitle("Event");
clickAndWait(By.linkText("Primate Health and Fitness"));
assertTitle("Primate Health and Fitness");
vivoDeleteIndividual();
clickAndWait(By.linkText("Index"));
assertTitle("Index of Contents");
clickAndWait(By.linkText("Event"));
assertTitle("Event");
clickAndWait(By.linkText("Primate Health Check"));
assertTitle("Primate Health Check");
vivoDeleteIndividual();
/* From CreateEvent */
clickAndWait(By.linkText("Index"));
assertTitle("Index of Contents");
clickAndWait(By.linkText("Event"));
assertTitle("Event");
clickAndWait(By.linkText("Primate Health Conference"));
assertTitle("Primate Health Conference");
vivoDeleteIndividual();
/* */
clickAndWait(By.linkText("Index"));
assertTitle("Index of Contents");
clickAndWait(By.linkText("Event"));
assertTitle("Event");
clickAndWait(By.linkText("Primates in the Wild"));
assertTitle("Primates in the Wild");
vivoDeleteIndividual();
/* From CreateCourses */
clickAndWait(By.linkText("Index"));
assertTitle("Index of Contents");
clickAndWait(By.linkText("Seminar Series"));
assertTitle("Seminar Series");
clickAndWait(By.linkText("Primate Health Talks"));
assertTitle("Primate Health Talks");
vivoDeleteIndividual();
/* */
// Where is Introduction to Primates??
vivoLogOut();
}
@AfterClass
public static void tearDown() {
vivoLogOut();
endTests();
}
@Test
public void deleteEventNewPrimateStudents() {
vivoDeleteIndividual("Event", "New Primate Students");
}
@Test
public void deleteEventPrimateHealthAndFitness() {
vivoDeleteIndividual("Event", "Primate Health and Fitness");
}
@Test
public void deleteEventPrimateHealthCheck() {
vivoDeleteIndividual("Event", "Primate Health Check");
}
@Test
public void deleteEventPrimateHealthConference() {
// From CreateEvent
vivoDeleteIndividual("Event", "Primate Health Conference");
}
@Test
public void deleteEventPrimatesInTheWild() {
vivoDeleteIndividual("Event", "Primates in the Wild");
}
@Test
public void deleteSeminarPrimateHealthTalks() {
// From CreateCourses
vivoDeleteIndividual("Seminar Series", "Primate Health Talks");
}
// Where is Introduction to Primates??
}

View file

@ -1,55 +1,60 @@
package org.vivoweb.vivo.selenium.tests;
import org.junit.AfterClass;
import org.junit.BeforeClass;
import org.junit.FixMethodOrder;
import org.junit.Test;
import org.junit.runners.MethodSorters;
import org.openqa.selenium.By;
import static org.vivoweb.vivo.selenium.VIVOAppTester.*;
public class DeleteLocations extends AbstractVIVOSeleniumTest {
@Test
public void deleteLocations() {
deleteAllVisibleCookies();
open("/");
assertTitle("VIVO");
@FixMethodOrder(MethodSorters.NAME_ASCENDING)
public class DeleteLocations {
@BeforeClass
public static void setUp() {
startTests();
vivoLogIn("testAdmin@cornell.edu", "Password");
}
/* from CreateCourses */
clickAndWait(By.linkText("Index"));
assertTitle("Index of Contents");
vivoDeleteIndividual("Building", "Primate Memorial Building");
/* */
/* from CreateEquipment */
clickAndWait(By.linkText("Index"));
assertTitle("Index of Contents");
vivoDeleteIndividual("Facility", "Primate Research Lab Room 123");
/* */
/* from CreateEvent */
clickAndWait(By.linkText("Index"));
assertTitle("Index of Contents");
vivoDeleteIndividual("Facility", "State Fair Park");
/* */
/* from CreateLocation */
clickAndWait(By.linkText("Index"));
assertTitle("Index of Contents");
vivoDeleteIndividual("Building", "Jane Memorial Building");
clickAndWait(By.linkText("Index"));
assertTitle("Index of Contents");
vivoDeleteIndividual("Facility", "Lab Admin Office");
clickAndWait(By.linkText("Index"));
assertTitle("Index of Contents");
vivoDeleteIndividual("Geographic Location", "Primate Quad");
/* */
@AfterClass
public static void tearDown() {
vivoLogOut();
endTests();
}
@Test
public void deleteBuildingPrimateMemorialBuilding() {
// from CreateCourses
vivoDeleteIndividual("Building", "Primate Memorial Building");
}
@Test
public void deleteFacilityPrimateResearchLabRoom123() {
// from CreateEquipment
vivoDeleteIndividual("Facility", "Primate Research Lab Room 123");
}
@Test
public void deleteFacilityStateFairPark() {
// from CreateEvent
vivoDeleteIndividual("Facility", "State Fair Park");
}
@Test
public void deleteBuildingJaneMemorialBuilding() {
// from CreateLocation
vivoDeleteIndividual("Building", "Jane Memorial Building");
}
@Test
public void deleteFacilityLabAdminOffice() {
// from CreateLocation
vivoDeleteIndividual("Facility", "Lab Admin Office");
}
@Test
public void deleteGeograpihcPrimateQuad() {
// from CreateLocation
vivoDeleteIndividual("Geographic Location", "Primate Quad");
}
}
/*
Primate Quad
*/

View file

@ -1,106 +1,64 @@
package org.vivoweb.vivo.selenium.tests;
import org.junit.AfterClass;
import org.junit.BeforeClass;
import org.junit.FixMethodOrder;
import org.junit.Test;
import org.junit.runners.MethodSorters;
import org.openqa.selenium.By;
import static org.vivoweb.vivo.selenium.VIVOAppTester.*;
public class DeleteOrganization extends AbstractVIVOSeleniumTest {
@Test
public void deleteOrganization() {
deleteAllVisibleCookies();
open("/");
assertTitle("VIVO");
@FixMethodOrder(MethodSorters.NAME_ASCENDING)
public class DeleteOrganization {
@BeforeClass
public static void setUp() {
startTests();
vivoLogIn("testAdmin@cornell.edu", "Password");
}
clickAndWait(By.linkText("Index"));
assertTitle("Index of Contents");
clickAndWait(By.linkText("Organization"));
assertTitle("Organization");
clickAndWait(By.linkText("Primate College of America"));
assertTitle("Primate College of America");
vivoDeleteIndividual();
clickAndWait(By.linkText("Index"));
assertTitle("Index of Contents");
clickAndWait(By.linkText("Organization"));
assertTitle("Organization");
clickAndWait(By.linkText("Primate College of New York"));
assertTitle("Primate College of New York");
vivoDeleteIndividual();
clickAndWait(By.linkText("Index"));
assertTitle("Index of Contents");
clickAndWait(By.linkText("Organization"));
assertTitle("Organization");
clickAndWait(By.linkText("Primate Colleges of the World"));
assertTitle("Primate Colleges of the World");
vivoDeleteIndividual();
clickAndWait(By.linkText("Index"));
assertTitle("Index of Contents");
clickAndWait(By.linkText("Organization"));
assertTitle("Organization");
clickAndWait(By.linkText("Primate History Library"));
assertTitle("Primate History Library");
vivoDeleteIndividual();
clickAndWait(By.linkText("Index"));
assertTitle("Index of Contents");
clickAndWait(By.linkText("Organization"));
assertTitle("Organization");
clickAndWait(By.linkText("Primate Research Laboratory"));
assertTitle("Primate Research Laboratory");
vivoDeleteIndividual();
clickAndWait(By.linkText("Index"));
assertTitle("Index of Contents");
clickAndWait(By.linkText("Organization"));
assertTitle("Organization");
clickAndWait(By.linkText("Primate University of America"));
assertTitle("Primate University of America");
vivoDeleteIndividual();
clickAndWait(By.linkText("Index"));
assertTitle("Index of Contents");
clickAndWait(By.linkText("Organization"));
assertTitle("Organization");
clickAndWait(By.linkText("Primates-r-us"));
assertTitle("Primates-r-us");
vivoDeleteIndividual();
clickAndWait(By.linkText("Index"));
assertTitle("Index of Contents");
clickAndWait(By.linkText("Person"));
assertTitle("Person");
clickAndWait(By.linkText("Person, Polly"));
assertTitle("Person, Polly");
vivoDeleteIndividual();
@AfterClass
public static void tearDown() {
vivoLogOut();
endTests();
}
@Test
public void deletePrimateCollegeOfAmerica() {
vivoDeleteIndividual("Organization", "Primate College of America");
}
@Test
public void deletePrimateCollegeOfNewYork() {
vivoDeleteIndividual("Organization", "Primate College of New York");
}
@Test
public void deletePrimateCollegesOfTheWorld() {
vivoDeleteIndividual("Organization", "Primate Colleges of the World");
}
@Test
public void deletePrimateHistoryLibrary() {
vivoDeleteIndividual("Organization", "Primate History Library");
}
@Test
public void deletePrimateResearchLaboratory() {
vivoDeleteIndividual("Organization", "Primate Research Laboratory");
}
@Test
public void deletePrimateUniversityOfAmerica() {
vivoDeleteIndividual("Organization", "Primate University of America");
}
@Test
public void deletePrimatesRUs() {
vivoDeleteIndividual("Organization", "Primates-r-us");
}
@Test
public void deletePollyPerson() {
vivoDeleteIndividual("Person", "Person, Polly");
}
}

View file

@ -1,190 +1,115 @@
package org.vivoweb.vivo.selenium.tests;
import org.junit.AfterClass;
import org.junit.BeforeClass;
import org.junit.FixMethodOrder;
import org.junit.Test;
import org.junit.runners.MethodSorters;
import org.openqa.selenium.By;
import static org.vivoweb.vivo.selenium.VIVOAppTester.*;
public class DeleteResearch extends AbstractVIVOSeleniumTest {
@Test
public void deleteResearch() {
deleteAllVisibleCookies();
open("/");
assertTitle("VIVO");
@FixMethodOrder(MethodSorters.NAME_ASCENDING)
public class DeleteResearch {
@BeforeClass
public static void setUp() {
startTests();
vivoLogIn("testAdmin@cornell.edu", "Password");
}
clickAndWait(By.linkText("Index"));
assertTitle("Index of Contents");
clickAndWait(By.linkText("Article"));
assertTitle("Article");
clickAndWait(By.linkText("Primate Happenings"));
assertTitle("Primate Happenings");
vivoDeleteIndividual();
clickAndWait(By.linkText("Index"));
assertTitle("Index of Contents");
clickAndWait(By.linkText("Award or Honor"));
assertTitle("Award or Honor");
clickAndWait(By.linkText("Best Primate College"));
assertTitle("Best Primate College");
vivoDeleteIndividual();
clickAndWait(By.linkText("Index"));
assertTitle("Index of Contents");
clickAndWait(By.linkText("Award or Honor"));
assertTitle("Award or Honor");
clickAndWait(By.linkText("Primate Student of the Year"));
assertTitle("Primate Student of the Year");
vivoDeleteIndividual();
/* From CreateEvent */
clickAndWait(By.linkText("Index"));
assertTitle("Index of Contents");
clickAndWait(By.linkText("Book"));
assertTitle("Book");
clickAndWait(By.linkText("PHC Proceedings"));
assertTitle("PHC Proceedings");
vivoDeleteIndividual();
/* */
/* From CreateTopic */
clickAndWait(By.linkText("Index"));
assertTitle("Index of Contents");
clickAndWait(By.linkText("Concept"));
assertTitle("Concept");
clickAndWait(By.linkText("Ape Health"));
assertTitle("Ape Health");
vivoDeleteIndividual();
clickAndWait(By.linkText("Index"));
assertTitle("Index of Contents");
clickAndWait(By.linkText("Concept"));
assertTitle("Concept");
clickAndWait(By.linkText("Primate Diet"));
assertTitle("Primate Diet");
vivoDeleteIndividual();
clickAndWait(By.linkText("Index"));
assertTitle("Index of Contents");
clickAndWait(By.linkText("Concept"));
assertTitle("Concept");
clickAndWait(By.linkText("Primate Health"));
assertTitle("Primate Health");
vivoDeleteIndividual();
/* */
/* From CreateActivity */
clickAndWait(By.linkText("Index"));
assertTitle("Index of Contents");
clickAndWait(By.linkText("Concept"));
assertTitle("Concept");
clickAndWait(By.linkText("Elderly Care"));
assertTitle("Elderly Care");
vivoDeleteIndividual();
/* */
/* From CreateCourses */
clickAndWait(By.linkText("Index"));
assertTitle("Index of Contents");
clickAndWait(By.linkText("Concept"));
assertTitle("Concept");
clickAndWait(By.linkText("Animal Health"));
assertTitle("Animal Health");
vivoDeleteIndividual();
/* */
clickAndWait(By.linkText("Index"));
assertTitle("Index of Contents");
clickAndWait(By.linkText("Database"));
assertTitle("Database");
clickAndWait(By.linkText("Primate Info"));
assertTitle("Primate Info");
vivoDeleteIndividual();
/* Delete grant from createActivity */
clickAndWait(By.linkText("Index"));
assertTitle("Index of Contents");
clickAndWait(By.linkText("Grant"));
assertTitle("Grant");
clickAndWait(By.linkText("Primate Elderly Care"));
assertTitle("Primate Elderly Care");
vivoDeleteIndividual();
/* */
clickAndWait(By.linkText("Index"));
assertTitle("Index of Contents");
clickAndWait(By.linkText("Grant"));
assertTitle("Grant");
clickAndWait(By.linkText("Primate Habitat Research Grant"));
assertTitle("Primate Habitat Research Grant");
vivoDeleteIndividual();
clickAndWait(By.linkText("Index"));
assertTitle("Index of Contents");
clickAndWait(By.linkText("Grant"));
assertTitle("Grant");
clickAndWait(By.linkText("Primate Survival Planning Grant"));
assertTitle("Primate Survival Planning Grant");
vivoDeleteIndividual();
clickAndWait(By.linkText("Index"));
assertTitle("Index of Contents");
clickAndWait(By.linkText("Patent"));
assertTitle("Patent");
clickAndWait(By.linkText("USA222333444555"));
assertTitle("USA222333444555");
vivoDeleteIndividual();
/* From CreateCourses */
clickAndWait(By.linkText("Index"));
assertTitle("Index of Contents");
clickAndWait(By.linkText("Webpage"));
assertTitle("Webpage");
clickAndWait(By.linkText("http://primatehealthintro.cornell.edu"));
assertTitle("http://primatehealthintro.cornell.edu");
vivoDeleteIndividual();
/* */
@AfterClass
public static void tearDown() {
vivoLogOut();
endTests();
}
@Test
public void deleteArticlePrimateHappenings() {
vivoDeleteIndividual("Article", "Primate Happenings");
}
@Test
public void deleteAwardBestPrimateCollege() {
vivoDeleteIndividual("Award or Honor", "Best Primate College");
}
@Test
public void deleteAwardPrimateStudentOfTheYear() {
vivoDeleteIndividual("Award or Honor", "Primate Student of the Year");
}
@Test
public void deleteBookPHCProceedings() {
// From CreateEvent
vivoDeleteIndividual("Book", "PHC Proceedings");
}
@Test
public void deleteConceptApeHealth() {
// From CreateTopic
vivoDeleteIndividual("Concept", "Ape Health");
}
@Test
public void deleteConceptPrimateDiet() {
// From CreateTopic
vivoDeleteIndividual("Concept", "Primate Diet");
}
@Test
public void deleteConceptPrimateHealth() {
// From CreateTopic
vivoDeleteIndividual("Concept", "Primate Health");
}
@Test
public void deleteConceptElderlyCare() {
// From CreateActivity
vivoDeleteIndividual("Concept", "Elderly Care");
}
@Test
public void deleteConceptAnimalHealth() {
// From CreateCourses
vivoDeleteIndividual("Concept", "Animal Health");
}
@Test
public void deleteDatabasePrimateInfo() {
vivoDeleteIndividual("Database", "Primate Info");
}
@Test
public void deleteGrantPrimateElderlyCare() {
// From CreateActivity
vivoDeleteIndividual("Grant", "Primate Elderly Care");
}
@Test
public void deleteGrantPrimateHabitatResearchGrant() {
vivoDeleteIndividual("Grant", "Primate Habitat Research Grant");
}
@Test
public void deleteGrantPrimateSurvivalPlanningGrant() {
vivoDeleteIndividual("Grant", "Primate Survival Planning Grant");
}
@Test
public void deletePatentUSA222333444555() {
vivoDeleteIndividual("Patent", "USA222333444555");
}
@Test
public void deleteWebPagePrimateHealthIntro() {
// From CreateCourses
vivoDeleteIndividual("Webpage", "http://primatehealthintro.cornell.edu");
}
}

View file

@ -1,18 +1,27 @@
package org.vivoweb.vivo.selenium.tests;
import org.junit.AfterClass;
import org.junit.Before;
import org.junit.BeforeClass;
import org.junit.Test;
import org.openqa.selenium.By;
import static org.vivoweb.vivo.selenium.VIVOAppTester.*;
public class RebuildSearchIndex {
@BeforeClass
public static void setUp() {
startTests();
vivoLogIn("testAdmin@cornell.edu", "Password");
}
@AfterClass
public static void tearDown() {
vivoLogOut();
endTests();
}
public class RebuildSearchIndex extends AbstractVIVOSeleniumTest {
@Test
public void rebuildSearchIndexTest() {
deleteAllVisibleCookies();
open("/");
assertTitle("VIVO"); // assertTitle,VIVO
vivoLogIn("testAdmin@cornell.edu", "Password");
clickAndWait(By.linkText("Site Admin")); // clickAndWait,link=Site Admin
assertTitle("VIVO Site Administration"); // assertTitle,VIVO Site Administration
@ -25,7 +34,5 @@ public class RebuildSearchIndex extends AbstractVIVOSeleniumTest {
assertTitle("Rebuild Search Index"); // assertTitle, Rebuild Search Index
waitForTextPresent("Reset the search index and re-populate it."); // waitForTextPresent,Reset the search index and re-populate it.
vivoLogOut(); // clickAndWait,Log out
}
}

View file

@ -1,18 +1,26 @@
package org.vivoweb.vivo.selenium.tests;
import org.junit.AfterClass;
import org.junit.BeforeClass;
import org.junit.Test;
import org.openqa.selenium.By;
import static org.vivoweb.vivo.selenium.VIVOAppTester.*;
public class TestMenuManagement {
@BeforeClass
public static void setUp() {
startTests();
vivoLogIn("testAdmin@cornell.edu", "Password");
}
@AfterClass
public static void tearDown() {
vivoLogOut();
endTests();
}
public class TestMenuManagement extends AbstractVIVOSeleniumTest {
@Test
public void testMenuManagement() {
deleteAllVisibleCookies();
open("/");
assertTitle("VIVO");
vivoLogIn("testAdmin@cornell.edu", "Password");
clickAndWait(By.linkText("Site Admin"));
assertTitle("VIVO Site Administration");
@ -239,7 +247,5 @@ public class TestMenuManagement extends AbstractVIVOSeleniumTest {
assertConfirmation("Are you sure you wish to delete this page: Locations?");
assertTitle("Pages");
vivoLogOut(); // clickAndWait,Log out
}
}

View file

@ -1,16 +1,25 @@
package org.vivoweb.vivo.selenium.tests;
import org.junit.AfterClass;
import org.junit.BeforeClass;
import org.junit.Test;
import org.openqa.selenium.By;
import static org.vivoweb.vivo.selenium.VIVOAppTester.*;
public class VerifyAllThingsSearchable {
@BeforeClass
public static void setUp() {
startTests();
vivoLogOut();
}
@AfterClass
public static void tearDown() {
endTests();
}
public class VerifyAllThingsSearchable extends AbstractVIVOSeleniumTest {
@Test
public void verifyAllThingsSearchable() {
deleteAllVisibleCookies();
open("/");
assertTitle("VIVO");
type(By.name("querytext"), "primates");
clickAndWait(By.xpath("//input[@value='Search']"));

View file

@ -0,0 +1,191 @@
<html>
<head>
<title>TestNG: Command line test</title>
<link href="../testng.css" rel="stylesheet" type="text/css" />
<link href="../my-testng.css" rel="stylesheet" type="text/css" />
<style type="text/css">
.log { display: none;}
.stack-trace { display: none;}
</style>
<script type="text/javascript">
<!--
function flip(e) {
current = e.style.display;
if (current == 'block') {
e.style.display = 'none';
return 0;
}
else {
e.style.display = 'block';
return 1;
}
}
function toggleBox(szDivId, elem, msg1, msg2)
{
var res = -1; if (document.getElementById) {
res = flip(document.getElementById(szDivId));
}
else if (document.all) {
// this is the way old msie versions work
res = flip(document.all[szDivId]);
}
if(elem) {
if(res == 0) elem.innerHTML = msg1; else elem.innerHTML = msg2;
}
}
function toggleAllBoxes() {
if (document.getElementsByTagName) {
d = document.getElementsByTagName('div');
for (i = 0; i < d.length; i++) {
if (d[i].className == 'log') {
flip(d[i]);
}
}
}
}
// -->
</script>
</head>
<body>
<h2 align='center'>Command line test</h2><table border='1' align="center">
<tr>
<td>Tests passed/Failed/Skipped:</td><td>0/1/0</td>
</tr><tr>
<td>Started on:</td><td>Sat Jan 23 20:20:12 GMT 2016</td>
</tr>
<tr><td>Total time:</td><td>1 seconds (1334 ms)</td>
</tr><tr>
<td>Included groups:</td><td></td>
</tr><tr>
<td>Excluded groups:</td><td></td>
</tr>
</table><p/>
<small><i>(Hover the method name to see the test class name)</i></small><p/>
<table width='100%' border='1' class='invocation-failed'>
<tr><td colspan='4' align='center'><b>FAILED TESTS</b></td></tr>
<tr><td><b>Test method</b></td>
<td width="30%"><b>Exception</b></td>
<td width="10%"><b>Time (seconds)</b></td>
<td><b>Instance</b></td>
</tr>
<tr>
<td title='org.vivoweb.vivo.selenium.tests.RebuildSearchIndex.rebuildSearchIndexTest()'><b>rebuildSearchIndexTest</b><br>Test class: org.vivoweb.vivo.selenium.tests.RebuildSearchIndex</td>
<td><div><pre>org.openqa.selenium.NoSuchElementException: Unable to locate element: {&quot;method&quot;:&quot;link text&quot;,&quot;selector&quot;:&quot;Site Admin&quot;}
Command duration or timeout: 1.18 seconds
For documentation on this error, please visit: http://seleniumhq.org/exceptions/no_such_element.html
Build info: version: &apos;2.48.2&apos;, revision: &apos;41bccdd10cf2c0560f637404c2d96164b67d9d67&apos;, time: &apos;2015-10-09 13:08:06&apos;
System info: host: &apos;Grahams-MBP-2&apos;, ip: &apos;192.168.1.239&apos;, os.name: &apos;Mac OS X&apos;, os.arch: &apos;x86_64&apos;, os.version: &apos;10.11.3&apos;, java.version: &apos;1.8.0_60&apos;
Driver info: org.openqa.selenium.firefox.FirefoxDriver
Capabilities [{applicationCacheEnabled=true, rotatable=false, handlesAlerts=true, databaseEnabled=true, version=43.0.4, platform=MAC, nativeEvents=false, acceptSslCerts=true, webStorageEnabled=true, locationContextEnabled=true, browserName=firefox, takesScreenshot=true, javascriptEnabled=true, cssSelectorsEnabled=true}]
Session ID: 0454c462-95d4-4143-85a7-404602e998cd
*** Element info: {Using=link text, value=Site Admin}
at org.openqa.selenium.remote.ErrorHandler.createThrowable(ErrorHandler.java:206)
at org.openqa.selenium.remote.ErrorHandler.throwIfResponseFailed(ErrorHandler.java:158)
at org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:647)
at org.openqa.selenium.remote.RemoteWebDriver.findElement(RemoteWebDriver.java:353)
at org.openqa.selenium.remote.RemoteWebDriver.findElementByLinkText(RemoteWebDriver.java:418)
at org.openqa.selenium.By$ByLinkText.findElement(By.java:246)
at org.openqa.selenium.remote.RemoteWebDriver.findElement(RemoteWebDriver.java:345)
at org.vivoweb.vivo.selenium.tests.AbstractSeleniumTest.clickAndWait(AbstractSeleniumTest.java:46)
at org.vivoweb.vivo.selenium.tests.RebuildSearchIndex.rebuildSearchIndexTest(RebuildSearchIndex.java:15)
at org.vivoweb.vivo.selenium.suites.Suite2.suite2(Suite2.java:18)
at com.intellij.rt.execution.application.AppMain.main(AppMain.java:144)
Caused by: org.openqa.selenium.NoSuchElementException: Unable to locate element: {&quot;method&quot;:&quot;link text&quot;,&quot;selector&quot;:&quot;Site Admin&quot;}
For documentation on this error, please visit: http://seleniumhq.org/exceptions/no_such_element.html
Build info: version: &apos;2.48.2&apos;, revision: &apos;41bccdd10cf2c0560f637404c2d96164b67d9d67&apos;, time: &apos;2015-10-09 13:08:06&apos;
System info: host: &apos;Grahams-MBP-2&apos;, ip: &apos;192.168.1.239&apos;, os.name: &apos;Mac OS X&apos;, os.arch: &apos;x86_64&apos;, os.version: &apos;10.11.3&apos;, java.version: &apos;1.8.0_60&apos;
Driver info: driver.version: unknown
at &lt;anonymous class&gt;.FirefoxDriver.prototype.findElementInternal_(file:///var/folders/7d/pmw9wv8n4nz_x9t4ztp_6tgw0000gn/T/anonymous8499514178617750884webdriver-profile/extensions/fxdriver@googlecode.com/components/driver-component.js:10659)
at &lt;anonymous class&gt;.FirefoxDriver.prototype.findElement(file:///var/folders/7d/pmw9wv8n4nz_x9t4ztp_6tgw0000gn/T/anonymous8499514178617750884webdriver-profile/extensions/fxdriver@googlecode.com/components/driver-component.js:10668)
at &lt;anonymous class&gt;.DelayedCommand.prototype.executeInternal_/h(file:///var/folders/7d/pmw9wv8n4nz_x9t4ztp_6tgw0000gn/T/anonymous8499514178617750884webdriver-profile/extensions/fxdriver@googlecode.com/components/command-processor.js:12534)
at &lt;anonymous class&gt;.DelayedCommand.prototype.executeInternal_(file:///var/folders/7d/pmw9wv8n4nz_x9t4ztp_6tgw0000gn/T/anonymous8499514178617750884webdriver-profile/extensions/fxdriver@googlecode.com/components/command-processor.js:12539)
at &lt;anonymous class&gt;.DelayedCommand.prototype.execute/&lt;(file:///var/folders/7d/pmw9wv8n4nz_x9t4ztp_6tgw0000gn/T/anonymous8499514178617750884webdriver-profile/extensions/fxdriver@googlecode.com/components/command-processor.js:12481)
... Removed 46 stack frames</pre></div><a href='#' onClick='toggleBox("stack-trace795242171", this, "Click to show all stack frames", "Click to hide stack frames")'>Click to show all stack frames</a>
<div class='stack-trace' id='stack-trace795242171'><pre>org.openqa.selenium.NoSuchElementException: Unable to locate element: {&quot;method&quot;:&quot;link text&quot;,&quot;selector&quot;:&quot;Site Admin&quot;}
Command duration or timeout: 1.18 seconds
For documentation on this error, please visit: http://seleniumhq.org/exceptions/no_such_element.html
Build info: version: &apos;2.48.2&apos;, revision: &apos;41bccdd10cf2c0560f637404c2d96164b67d9d67&apos;, time: &apos;2015-10-09 13:08:06&apos;
System info: host: &apos;Grahams-MBP-2&apos;, ip: &apos;192.168.1.239&apos;, os.name: &apos;Mac OS X&apos;, os.arch: &apos;x86_64&apos;, os.version: &apos;10.11.3&apos;, java.version: &apos;1.8.0_60&apos;
Driver info: org.openqa.selenium.firefox.FirefoxDriver
Capabilities [{applicationCacheEnabled=true, rotatable=false, handlesAlerts=true, databaseEnabled=true, version=43.0.4, platform=MAC, nativeEvents=false, acceptSslCerts=true, webStorageEnabled=true, locationContextEnabled=true, browserName=firefox, takesScreenshot=true, javascriptEnabled=true, cssSelectorsEnabled=true}]
Session ID: 0454c462-95d4-4143-85a7-404602e998cd
*** Element info: {Using=link text, value=Site Admin}
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:422)
at org.openqa.selenium.remote.ErrorHandler.createThrowable(ErrorHandler.java:206)
at org.openqa.selenium.remote.ErrorHandler.throwIfResponseFailed(ErrorHandler.java:158)
at org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:647)
at org.openqa.selenium.remote.RemoteWebDriver.findElement(RemoteWebDriver.java:353)
at org.openqa.selenium.remote.RemoteWebDriver.findElementByLinkText(RemoteWebDriver.java:418)
at org.openqa.selenium.By$ByLinkText.findElement(By.java:246)
at org.openqa.selenium.remote.RemoteWebDriver.findElement(RemoteWebDriver.java:345)
at org.vivoweb.vivo.selenium.tests.AbstractSeleniumTest.clickAndWait(AbstractSeleniumTest.java:46)
at org.vivoweb.vivo.selenium.tests.RebuildSearchIndex.rebuildSearchIndexTest(RebuildSearchIndex.java:15)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:497)
at org.testng.internal.MethodInvocationHelper.invokeMethod(MethodInvocationHelper.java:86)
at org.testng.internal.Invoker.invokeMethod(Invoker.java:643)
at org.testng.internal.Invoker.invokeTestMethod(Invoker.java:820)
at org.testng.internal.Invoker.invokeTestMethods(Invoker.java:1128)
at org.testng.internal.TestMethodWorker.invokeTestMethods(TestMethodWorker.java:129)
at org.testng.internal.TestMethodWorker.run(TestMethodWorker.java:112)
at org.testng.TestRunner.privateRun(TestRunner.java:782)
at org.testng.TestRunner.run(TestRunner.java:632)
at org.testng.SuiteRunner.runTest(SuiteRunner.java:366)
at org.testng.SuiteRunner.runSequentially(SuiteRunner.java:361)
at org.testng.SuiteRunner.privateRun(SuiteRunner.java:319)
at org.testng.SuiteRunner.run(SuiteRunner.java:268)
at org.testng.SuiteRunnerWorker.runSuite(SuiteRunnerWorker.java:52)
at org.testng.SuiteRunnerWorker.run(SuiteRunnerWorker.java:86)
at org.testng.TestNG.runSuitesSequentially(TestNG.java:1244)
at org.testng.TestNG.runSuitesLocally(TestNG.java:1169)
at org.testng.TestNG.run(TestNG.java:1064)
at org.vivoweb.vivo.selenium.suites.Suite2.suite2(Suite2.java:18)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:497)
at org.testng.internal.MethodInvocationHelper.invokeMethod(MethodInvocationHelper.java:86)
at org.testng.internal.Invoker.invokeConfigurationMethod(Invoker.java:514)
at org.testng.internal.Invoker.invokeConfigurations(Invoker.java:215)
at org.testng.internal.Invoker.invokeConfigurations(Invoker.java:142)
at org.testng.SuiteRunner.privateRun(SuiteRunner.java:305)
at org.testng.SuiteRunner.run(SuiteRunner.java:268)
at org.testng.SuiteRunnerWorker.runSuite(SuiteRunnerWorker.java:52)
at org.testng.SuiteRunnerWorker.run(SuiteRunnerWorker.java:86)
at org.testng.TestNG.runSuitesSequentially(TestNG.java:1244)
at org.testng.TestNG.runSuitesLocally(TestNG.java:1169)
at org.testng.TestNG.run(TestNG.java:1064)
at org.testng.IDEARemoteTestNG.run(IDEARemoteTestNG.java:72)
at org.testng.RemoteTestNGStarter.main(RemoteTestNGStarter.java:122)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:497)
at com.intellij.rt.execution.application.AppMain.main(AppMain.java:144)
Caused by: org.openqa.selenium.NoSuchElementException: Unable to locate element: {&quot;method&quot;:&quot;link text&quot;,&quot;selector&quot;:&quot;Site Admin&quot;}
For documentation on this error, please visit: http://seleniumhq.org/exceptions/no_such_element.html
Build info: version: &apos;2.48.2&apos;, revision: &apos;41bccdd10cf2c0560f637404c2d96164b67d9d67&apos;, time: &apos;2015-10-09 13:08:06&apos;
System info: host: &apos;Grahams-MBP-2&apos;, ip: &apos;192.168.1.239&apos;, os.name: &apos;Mac OS X&apos;, os.arch: &apos;x86_64&apos;, os.version: &apos;10.11.3&apos;, java.version: &apos;1.8.0_60&apos;
Driver info: driver.version: unknown
at &lt;anonymous class&gt;.FirefoxDriver.prototype.findElementInternal_(file:///var/folders/7d/pmw9wv8n4nz_x9t4ztp_6tgw0000gn/T/anonymous8499514178617750884webdriver-profile/extensions/fxdriver@googlecode.com/components/driver-component.js:10659)
at &lt;anonymous class&gt;.FirefoxDriver.prototype.findElement(file:///var/folders/7d/pmw9wv8n4nz_x9t4ztp_6tgw0000gn/T/anonymous8499514178617750884webdriver-profile/extensions/fxdriver@googlecode.com/components/driver-component.js:10668)
at &lt;anonymous class&gt;.DelayedCommand.prototype.executeInternal_/h(file:///var/folders/7d/pmw9wv8n4nz_x9t4ztp_6tgw0000gn/T/anonymous8499514178617750884webdriver-profile/extensions/fxdriver@googlecode.com/components/command-processor.js:12534)
at &lt;anonymous class&gt;.DelayedCommand.prototype.executeInternal_(file:///var/folders/7d/pmw9wv8n4nz_x9t4ztp_6tgw0000gn/T/anonymous8499514178617750884webdriver-profile/extensions/fxdriver@googlecode.com/components/command-processor.js:12539)
at &lt;anonymous class&gt;.DelayedCommand.prototype.execute/&lt;(file:///var/folders/7d/pmw9wv8n4nz_x9t4ztp_6tgw0000gn/T/anonymous8499514178617750884webdriver-profile/extensions/fxdriver@googlecode.com/components/command-processor.js:12481)
</pre></div></td>
<td>1</td>
<td>org.vivoweb.vivo.selenium.tests.RebuildSearchIndex@1cf56a1c</td></tr>
</table><p>
</body>
</html>

View file

@ -0,0 +1,47 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- Generated by org.testng.reporters.JUnitXMLReporter -->
<testsuite hostname="Grahams-MBP-2" name="Command line test" tests="1" failures="1" timestamp="23 Jan 2016 20:20:13 GMT" time="1.334" errors="0">
<testcase name="rebuildSearchIndexTest" time="1.191" classname="org.vivoweb.vivo.selenium.tests.RebuildSearchIndex">
<failure type="org.openqa.selenium.NoSuchElementException" message="Unable to locate element: {&amp;quot;method&amp;quot;:&amp;quot;link text&amp;quot;,&amp;quot;selector&amp;quot;:&amp;quot;Site Admin&amp;quot;}
Command duration or timeout: 1.18 seconds
For documentation on this error, please visit: http://seleniumhq.org/exceptions/no_such_element.html
Build info: version: &amp;apos;2.48.2&amp;apos;, revision: &amp;apos;41bccdd10cf2c0560f637404c2d96164b67d9d67&amp;apos;, time: &amp;apos;2015-10-09 13:08:06&amp;apos;
System info: host: &amp;apos;Grahams-MBP-2&amp;apos;, ip: &amp;apos;192.168.1.239&amp;apos;, os.name: &amp;apos;Mac OS X&amp;apos;, os.arch: &amp;apos;x86_64&amp;apos;, os.version: &amp;apos;10.11.3&amp;apos;, java.version: &amp;apos;1.8.0_60&amp;apos;
Driver info: org.openqa.selenium.firefox.FirefoxDriver
Capabilities [{applicationCacheEnabled=true, rotatable=false, handlesAlerts=true, databaseEnabled=true, version=43.0.4, platform=MAC, nativeEvents=false, acceptSslCerts=true, webStorageEnabled=true, locationContextEnabled=true, browserName=firefox, takesScreenshot=true, javascriptEnabled=true, cssSelectorsEnabled=true}]
Session ID: 0454c462-95d4-4143-85a7-404602e998cd
*** Element info: {Using=link text, value=Site Admin}">
<![CDATA[org.openqa.selenium.NoSuchElementException: Unable to locate element: {"method":"link text","selector":"Site Admin"}
Command duration or timeout: 1.18 seconds
For documentation on this error, please visit: http://seleniumhq.org/exceptions/no_such_element.html
Build info: version: '2.48.2', revision: '41bccdd10cf2c0560f637404c2d96164b67d9d67', time: '2015-10-09 13:08:06'
System info: host: 'Grahams-MBP-2', ip: '192.168.1.239', os.name: 'Mac OS X', os.arch: 'x86_64', os.version: '10.11.3', java.version: '1.8.0_60'
Driver info: org.openqa.selenium.firefox.FirefoxDriver
Capabilities [{applicationCacheEnabled=true, rotatable=false, handlesAlerts=true, databaseEnabled=true, version=43.0.4, platform=MAC, nativeEvents=false, acceptSslCerts=true, webStorageEnabled=true, locationContextEnabled=true, browserName=firefox, takesScreenshot=true, javascriptEnabled=true, cssSelectorsEnabled=true}]
Session ID: 0454c462-95d4-4143-85a7-404602e998cd
*** Element info: {Using=link text, value=Site Admin}
at org.openqa.selenium.remote.ErrorHandler.createThrowable(ErrorHandler.java:206)
at org.openqa.selenium.remote.ErrorHandler.throwIfResponseFailed(ErrorHandler.java:158)
at org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:647)
at org.openqa.selenium.remote.RemoteWebDriver.findElement(RemoteWebDriver.java:353)
at org.openqa.selenium.remote.RemoteWebDriver.findElementByLinkText(RemoteWebDriver.java:418)
at org.openqa.selenium.By$ByLinkText.findElement(By.java:246)
at org.openqa.selenium.remote.RemoteWebDriver.findElement(RemoteWebDriver.java:345)
at org.vivoweb.vivo.selenium.tests.AbstractSeleniumTest.clickAndWait(AbstractSeleniumTest.java:46)
at org.vivoweb.vivo.selenium.tests.RebuildSearchIndex.rebuildSearchIndexTest(RebuildSearchIndex.java:15)
at org.vivoweb.vivo.selenium.suites.Suite2.suite2(Suite2.java:18)
at com.intellij.rt.execution.application.AppMain.main(AppMain.java:144)
Caused by: org.openqa.selenium.NoSuchElementException: Unable to locate element: {"method":"link text","selector":"Site Admin"}
For documentation on this error, please visit: http://seleniumhq.org/exceptions/no_such_element.html
Build info: version: '2.48.2', revision: '41bccdd10cf2c0560f637404c2d96164b67d9d67', time: '2015-10-09 13:08:06'
System info: host: 'Grahams-MBP-2', ip: '192.168.1.239', os.name: 'Mac OS X', os.arch: 'x86_64', os.version: '10.11.3', java.version: '1.8.0_60'
Driver info: driver.version: unknown
at <anonymous class>.FirefoxDriver.prototype.findElementInternal_(file:///var/folders/7d/pmw9wv8n4nz_x9t4ztp_6tgw0000gn/T/anonymous8499514178617750884webdriver-profile/extensions/fxdriver@googlecode.com/components/driver-component.js:10659)
at <anonymous class>.FirefoxDriver.prototype.findElement(file:///var/folders/7d/pmw9wv8n4nz_x9t4ztp_6tgw0000gn/T/anonymous8499514178617750884webdriver-profile/extensions/fxdriver@googlecode.com/components/driver-component.js:10668)
at <anonymous class>.DelayedCommand.prototype.executeInternal_/h(file:///var/folders/7d/pmw9wv8n4nz_x9t4ztp_6tgw0000gn/T/anonymous8499514178617750884webdriver-profile/extensions/fxdriver@googlecode.com/components/command-processor.js:12534)
at <anonymous class>.DelayedCommand.prototype.executeInternal_(file:///var/folders/7d/pmw9wv8n4nz_x9t4ztp_6tgw0000gn/T/anonymous8499514178617750884webdriver-profile/extensions/fxdriver@googlecode.com/components/command-processor.js:12539)
at <anonymous class>.DelayedCommand.prototype.execute/<(file:///var/folders/7d/pmw9wv8n4nz_x9t4ztp_6tgw0000gn/T/anonymous8499514178617750884webdriver-profile/extensions/fxdriver@googlecode.com/components/command-processor.js:12481)
... Removed 46 stack frames]]>
</failure>
</testcase> <!-- rebuildSearchIndexTest -->
</testsuite> <!-- Command line test -->

View file

@ -0,0 +1,23 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd">
<suite name="Failed suite [Command line suite]">
<test name="Command line test" preserve-order="false">
<classes>
<class name="org.vivoweb.vivo.selenium.tests.RebuildSearchIndex"/>
</classes>
</test> <!-- Command line test -->
<test name="Command line test(failed)">
<classes>
<class name="org.vivoweb.vivo.selenium.tests.RebuildSearchIndex">
<methods>
<include name="cleanup"/>
<include name="rebuildSearchIndexTest"/>
<include name="vivoSetup"/>
<include name="setUp"/>
<include name="vivoTeardown"/>
<include name="setup"/>
</methods>
</class> <!-- org.vivoweb.vivo.selenium.tests.RebuildSearchIndex -->
</classes>
</test> <!-- Command line test(failed) -->
</suite> <!-- Failed suite [Command line suite] -->

Binary file not shown.

After

Width:  |  Height:  |  Size: 356 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 157 B

View file

@ -0,0 +1,32 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>TestNG Report</title><style type="text/css">table {margin-bottom:10px;border-collapse:collapse;empty-cells:show}th,td {border:1px solid #009;padding:.25em .5em}th {vertical-align:bottom}td {vertical-align:top}table a {font-weight:bold}.stripe td {background-color: #E6EBF9}.num {text-align:right}.passedodd td {background-color: #3F3}.passedeven td {background-color: #0A0}.skippedodd td {background-color: #DDD}.skippedeven td {background-color: #CCC}.failedodd td,.attn {background-color: #F33}.failedeven td,.stripe .attn {background-color: #D00}.stacktrace {white-space:pre;font-family:monospace}.totop {font-size:85%;text-align:center;border-bottom:2px solid #000}</style></head><body><table><tr><th>Test</th><th># Passed</th><th># Skipped</th><th># Failed</th><th>Time (ms)</th><th>Included Groups</th><th>Excluded Groups</th></tr><tr><th colspan="7">Command line suite</th></tr><tr><td><a href="#t0">Command line test</a></td><td class="num">0</td><td class="num">0</td><td class="num attn">1</td><td class="num">1,334</td><td></td><td></td></tr></table><table><thead><tr><th>Class</th><th>Method</th><th>Start</th><th>Time (ms)</th></tr></thead><tbody><tr><th colspan="4">Command line suite</th></tr></tbody><tbody id="t0"><tr><th colspan="4">Command line test &#8212; failed</th></tr><tr class="failedeven"><td rowspan="1">org.vivoweb.vivo.selenium.tests.RebuildSearchIndex</td><td><a href="#m0">rebuildSearchIndexTest</a></td><td rowspan="1">1453580412047</td><td rowspan="1">1191</td></tr></tbody></table><h2>Command line test</h2><h3 id="m0">org.vivoweb.vivo.selenium.tests.RebuildSearchIndex#rebuildSearchIndexTest</h3><table class="result"><tr><th>Exception</th></tr><tr><td><div class="stacktrace">org.openqa.selenium.NoSuchElementException: Unable to locate element: {&quot;method&quot;:&quot;link text&quot;,&quot;selector&quot;:&quot;Site Admin&quot;}
Command duration or timeout: 1.18 seconds
For documentation on this error, please visit: http://seleniumhq.org/exceptions/no_such_element.html
Build info: version: &apos;2.48.2&apos;, revision: &apos;41bccdd10cf2c0560f637404c2d96164b67d9d67&apos;, time: &apos;2015-10-09 13:08:06&apos;
System info: host: &apos;Grahams-MBP-2&apos;, ip: &apos;192.168.1.239&apos;, os.name: &apos;Mac OS X&apos;, os.arch: &apos;x86_64&apos;, os.version: &apos;10.11.3&apos;, java.version: &apos;1.8.0_60&apos;
Driver info: org.openqa.selenium.firefox.FirefoxDriver
Capabilities [{applicationCacheEnabled=true, rotatable=false, handlesAlerts=true, databaseEnabled=true, version=43.0.4, platform=MAC, nativeEvents=false, acceptSslCerts=true, webStorageEnabled=true, locationContextEnabled=true, browserName=firefox, takesScreenshot=true, javascriptEnabled=true, cssSelectorsEnabled=true}]
Session ID: 0454c462-95d4-4143-85a7-404602e998cd
*** Element info: {Using=link text, value=Site Admin}
at org.openqa.selenium.remote.ErrorHandler.createThrowable(ErrorHandler.java:206)
at org.openqa.selenium.remote.ErrorHandler.throwIfResponseFailed(ErrorHandler.java:158)
at org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:647)
at org.openqa.selenium.remote.RemoteWebDriver.findElement(RemoteWebDriver.java:353)
at org.openqa.selenium.remote.RemoteWebDriver.findElementByLinkText(RemoteWebDriver.java:418)
at org.openqa.selenium.By$ByLinkText.findElement(By.java:246)
at org.openqa.selenium.remote.RemoteWebDriver.findElement(RemoteWebDriver.java:345)
at org.vivoweb.vivo.selenium.tests.AbstractSeleniumTest.clickAndWait(AbstractSeleniumTest.java:46)
at org.vivoweb.vivo.selenium.tests.RebuildSearchIndex.rebuildSearchIndexTest(RebuildSearchIndex.java:15)
at org.vivoweb.vivo.selenium.suites.Suite2.suite2(Suite2.java:18)
at com.intellij.rt.execution.application.AppMain.main(AppMain.java:144)
Caused by: org.openqa.selenium.NoSuchElementException: Unable to locate element: {&quot;method&quot;:&quot;link text&quot;,&quot;selector&quot;:&quot;Site Admin&quot;}
For documentation on this error, please visit: http://seleniumhq.org/exceptions/no_such_element.html
Build info: version: &apos;2.48.2&apos;, revision: &apos;41bccdd10cf2c0560f637404c2d96164b67d9d67&apos;, time: &apos;2015-10-09 13:08:06&apos;
System info: host: &apos;Grahams-MBP-2&apos;, ip: &apos;192.168.1.239&apos;, os.name: &apos;Mac OS X&apos;, os.arch: &apos;x86_64&apos;, os.version: &apos;10.11.3&apos;, java.version: &apos;1.8.0_60&apos;
Driver info: driver.version: unknown
at &lt;anonymous class&gt;.FirefoxDriver.prototype.findElementInternal_(file:///var/folders/7d/pmw9wv8n4nz_x9t4ztp_6tgw0000gn/T/anonymous8499514178617750884webdriver-profile/extensions/fxdriver@googlecode.com/components/driver-component.js:10659)
at &lt;anonymous class&gt;.FirefoxDriver.prototype.findElement(file:///var/folders/7d/pmw9wv8n4nz_x9t4ztp_6tgw0000gn/T/anonymous8499514178617750884webdriver-profile/extensions/fxdriver@googlecode.com/components/driver-component.js:10668)
at &lt;anonymous class&gt;.DelayedCommand.prototype.executeInternal_/h(file:///var/folders/7d/pmw9wv8n4nz_x9t4ztp_6tgw0000gn/T/anonymous8499514178617750884webdriver-profile/extensions/fxdriver@googlecode.com/components/command-processor.js:12534)
at &lt;anonymous class&gt;.DelayedCommand.prototype.executeInternal_(file:///var/folders/7d/pmw9wv8n4nz_x9t4ztp_6tgw0000gn/T/anonymous8499514178617750884webdriver-profile/extensions/fxdriver@googlecode.com/components/command-processor.js:12539)
at &lt;anonymous class&gt;.DelayedCommand.prototype.execute/&lt;(file:///var/folders/7d/pmw9wv8n4nz_x9t4ztp_6tgw0000gn/T/anonymous8499514178617750884webdriver-profile/extensions/fxdriver@googlecode.com/components/command-processor.js:12481)
... Removed 46 stack frames</div></td></tr></table><p class="totop"><a href="#summary">back to summary</a></p></body></html>

Binary file not shown.

After

Width:  |  Height:  |  Size: 977 B

View file

@ -0,0 +1,302 @@
<!DOCTYPE html>
<html>
<head>
<meta charset='utf-8'>
<title>TestNG reports</title>
<link type="text/css" href="testng-reports.css" rel="stylesheet" />
<script type="text/javascript" src="jquery-1.7.1.min.js"></script>
<script type="text/javascript" src="testng-reports.js"></script>
<script type="text/javascript" src="https://www.google.com/jsapi"></script>
<script type='text/javascript'>
google.load('visualization', '1', {packages:['table']});
google.setOnLoadCallback(drawTable);
var suiteTableInitFunctions = new Array();
var suiteTableData = new Array();
</script>
<!--
<script type="text/javascript" src="jquery-ui/js/jquery-ui-1.8.16.custom.min.js"></script>
-->
</head>
<body>
<div class="top-banner-root">
<span class="top-banner-title-font">Test results</span>
<br/>
<span class="top-banner-font-1">1 suite, 1 failed test</span>
</div> <!-- top-banner-root -->
<div class="navigator-root">
<div class="navigator-suite-header">
<span>All suites</span>
<a href="#" class="collapse-all-link" title="Collapse/expand all the suites">
<img class="collapse-all-icon" src="collapseall.gif">
</img> <!-- collapse-all-icon -->
</a> <!-- collapse-all-link -->
</div> <!-- navigator-suite-header -->
<div class="suite">
<div class="rounded-window">
<div class="suite-header light-rounded-window-top">
<a href="#" class="navigator-link" panel-name="suite-Command_line_suite">
<span class="suite-name border-failed">Command line suite</span>
</a> <!-- navigator-link -->
</div> <!-- suite-header light-rounded-window-top -->
<div class="navigator-suite-content">
<div class="suite-section-title">
<span>Info</span>
</div> <!-- suite-section-title -->
<div class="suite-section-content">
<ul>
<li>
<a href="#" class="navigator-link " panel-name="test-xml-Command_line_suite">
<span>[unset file name]</span>
</a> <!-- navigator-link -->
</li>
<li>
<a href="#" class="navigator-link " panel-name="testlist-Command_line_suite">
<span class="test-stats">2 tests</span>
</a> <!-- navigator-link -->
</li>
<li>
<a href="#" class="navigator-link " panel-name="group-Command_line_suite">
<span>0 groups</span>
</a> <!-- navigator-link -->
</li>
<li>
<a href="#" class="navigator-link " panel-name="times-Command_line_suite">
<span>Times</span>
</a> <!-- navigator-link -->
</li>
<li>
<a href="#" class="navigator-link " panel-name="reporter-Command_line_suite">
<span>Reporter output</span>
</a> <!-- navigator-link -->
</li>
<li>
<a href="#" class="navigator-link " panel-name="ignored-methods-Command_line_suite">
<span>Ignored methods</span>
</a> <!-- navigator-link -->
</li>
<li>
<a href="#" class="navigator-link " panel-name="chronological-Command_line_suite">
<span>Chronological view</span>
</a> <!-- navigator-link -->
</li>
</ul>
</div> <!-- suite-section-content -->
<div class="result-section">
<div class="suite-section-title">
<span>Results</span>
</div> <!-- suite-section-title -->
<div class="suite-section-content">
<ul>
<li>
<span class="method-stats">1 method, 1 failed, </span>
</li>
<li>
<span class="method-list-title failed">Failed methods</span>
<span class="show-or-hide-methods failed">
<a href="#" panel-name="suite-Command_line_suite" class="hide-methods failed suite-Command_line_suite"> (hide)</a> <!-- hide-methods failed suite-Command_line_suite -->
<a href="#" panel-name="suite-Command_line_suite" class="show-methods failed suite-Command_line_suite"> (show)</a> <!-- show-methods failed suite-Command_line_suite -->
</span>
<div class="method-list-content failed suite-Command_line_suite">
<span>
<img width="3%" src="failed.png"/>
<a href="#" class="method navigator-link" panel-name="suite-Command_line_suite" title="org.vivoweb.vivo.selenium.tests.RebuildSearchIndex" hash-for-method="rebuildSearchIndexTest">rebuildSearchIndexTest</a> <!-- method navigator-link -->
</span>
<br/>
</div> <!-- method-list-content failed suite-Command_line_suite -->
</li>
</ul>
</div> <!-- suite-section-content -->
</div> <!-- result-section -->
</div> <!-- navigator-suite-content -->
</div> <!-- rounded-window -->
</div> <!-- suite -->
</div> <!-- navigator-root -->
<div class="wrapper">
<div class="main-panel-root">
<div panel-name="suite-Command_line_suite" class="panel Command_line_suite">
<div class="suite-Command_line_suite-class-failed">
<div class="main-panel-header rounded-window-top">
<img src="failed.png"/>
<span class="class-name">org.vivoweb.vivo.selenium.tests.RebuildSearchIndex</span>
</div> <!-- main-panel-header rounded-window-top -->
<div class="main-panel-content rounded-window-bottom">
<div class="method">
<div class="method-content">
<a name="rebuildSearchIndexTest">
</a> <!-- rebuildSearchIndexTest -->
<span class="method-name">rebuildSearchIndexTest</span>
<div class="stack-trace">org.openqa.selenium.NoSuchElementException: Unable to locate element: {&quot;method&quot;:&quot;link text&quot;,&quot;selector&quot;:&quot;Site Admin&quot;}
Command duration or timeout: 1.18 seconds
For documentation on this error, please visit: http://seleniumhq.org/exceptions/no_such_element.html
Build info: version: &apos;2.48.2&apos;, revision: &apos;41bccdd10cf2c0560f637404c2d96164b67d9d67&apos;, time: &apos;2015-10-09 13:08:06&apos;
System info: host: &apos;Grahams-MBP-2&apos;, ip: &apos;192.168.1.239&apos;, os.name: &apos;Mac OS X&apos;, os.arch: &apos;x86_64&apos;, os.version: &apos;10.11.3&apos;, java.version: &apos;1.8.0_60&apos;
Driver info: org.openqa.selenium.firefox.FirefoxDriver
Capabilities [{applicationCacheEnabled=true, rotatable=false, handlesAlerts=true, databaseEnabled=true, version=43.0.4, platform=MAC, nativeEvents=false, acceptSslCerts=true, webStorageEnabled=true, locationContextEnabled=true, browserName=firefox, takesScreenshot=true, javascriptEnabled=true, cssSelectorsEnabled=true}]
Session ID: 0454c462-95d4-4143-85a7-404602e998cd
*** Element info: {Using=link text, value=Site Admin}
at org.openqa.selenium.remote.ErrorHandler.createThrowable(ErrorHandler.java:206)
at org.openqa.selenium.remote.ErrorHandler.throwIfResponseFailed(ErrorHandler.java:158)
at org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:647)
at org.openqa.selenium.remote.RemoteWebDriver.findElement(RemoteWebDriver.java:353)
at org.openqa.selenium.remote.RemoteWebDriver.findElementByLinkText(RemoteWebDriver.java:418)
at org.openqa.selenium.By$ByLinkText.findElement(By.java:246)
at org.openqa.selenium.remote.RemoteWebDriver.findElement(RemoteWebDriver.java:345)
at org.vivoweb.vivo.selenium.tests.AbstractSeleniumTest.clickAndWait(AbstractSeleniumTest.java:46)
at org.vivoweb.vivo.selenium.tests.RebuildSearchIndex.rebuildSearchIndexTest(RebuildSearchIndex.java:15)
at org.vivoweb.vivo.selenium.suites.Suite2.suite2(Suite2.java:18)
at com.intellij.rt.execution.application.AppMain.main(AppMain.java:144)
Caused by: org.openqa.selenium.NoSuchElementException: Unable to locate element: {&quot;method&quot;:&quot;link text&quot;,&quot;selector&quot;:&quot;Site Admin&quot;}
For documentation on this error, please visit: http://seleniumhq.org/exceptions/no_such_element.html
Build info: version: &apos;2.48.2&apos;, revision: &apos;41bccdd10cf2c0560f637404c2d96164b67d9d67&apos;, time: &apos;2015-10-09 13:08:06&apos;
System info: host: &apos;Grahams-MBP-2&apos;, ip: &apos;192.168.1.239&apos;, os.name: &apos;Mac OS X&apos;, os.arch: &apos;x86_64&apos;, os.version: &apos;10.11.3&apos;, java.version: &apos;1.8.0_60&apos;
Driver info: driver.version: unknown
at &lt;anonymous class&gt;.FirefoxDriver.prototype.findElementInternal_(file:///var/folders/7d/pmw9wv8n4nz_x9t4ztp_6tgw0000gn/T/anonymous8499514178617750884webdriver-profile/extensions/fxdriver@googlecode.com/components/driver-component.js:10659)
at &lt;anonymous class&gt;.FirefoxDriver.prototype.findElement(file:///var/folders/7d/pmw9wv8n4nz_x9t4ztp_6tgw0000gn/T/anonymous8499514178617750884webdriver-profile/extensions/fxdriver@googlecode.com/components/driver-component.js:10668)
at &lt;anonymous class&gt;.DelayedCommand.prototype.executeInternal_/h(file:///var/folders/7d/pmw9wv8n4nz_x9t4ztp_6tgw0000gn/T/anonymous8499514178617750884webdriver-profile/extensions/fxdriver@googlecode.com/components/command-processor.js:12534)
at &lt;anonymous class&gt;.DelayedCommand.prototype.executeInternal_(file:///var/folders/7d/pmw9wv8n4nz_x9t4ztp_6tgw0000gn/T/anonymous8499514178617750884webdriver-profile/extensions/fxdriver@googlecode.com/components/command-processor.js:12539)
at &lt;anonymous class&gt;.DelayedCommand.prototype.execute/&lt;(file:///var/folders/7d/pmw9wv8n4nz_x9t4ztp_6tgw0000gn/T/anonymous8499514178617750884webdriver-profile/extensions/fxdriver@googlecode.com/components/command-processor.js:12481)
... Removed 46 stack frames
</div> <!-- stack-trace -->
</div> <!-- method-content -->
</div> <!-- method -->
</div> <!-- main-panel-content rounded-window-bottom -->
</div> <!-- suite-Command_line_suite-class-failed -->
</div> <!-- panel Command_line_suite -->
<div panel-name="test-xml-Command_line_suite" class="panel">
<div class="main-panel-header rounded-window-top">
</div> <!-- main-panel-header rounded-window-top -->
<div class="main-panel-content rounded-window-bottom">
<pre>
&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;
&lt;!DOCTYPE suite SYSTEM &quot;http://testng.org/testng-1.0.dtd&quot;&gt;
&lt;suite name=&quot;Command line suite&quot;&gt;
&lt;test name=&quot;Command line test&quot; preserve-order=&quot;false&quot;&gt;
&lt;classes&gt;
&lt;class name=&quot;org.vivoweb.vivo.selenium.tests.RebuildSearchIndex&quot;/&gt;
&lt;/classes&gt;
&lt;/test&gt; &lt;!-- Command line test --&gt;
&lt;test name=&quot;Command line test(failed)&quot;&gt;
&lt;classes&gt;
&lt;class name=&quot;org.vivoweb.vivo.selenium.tests.RebuildSearchIndex&quot;&gt;
&lt;methods&gt;
&lt;include name=&quot;cleanup&quot;/&gt;
&lt;include name=&quot;rebuildSearchIndexTest&quot;/&gt;
&lt;include name=&quot;vivoSetup&quot;/&gt;
&lt;include name=&quot;setUp&quot;/&gt;
&lt;include name=&quot;vivoTeardown&quot;/&gt;
&lt;include name=&quot;setup&quot;/&gt;
&lt;/methods&gt;
&lt;/class&gt; &lt;!-- org.vivoweb.vivo.selenium.tests.RebuildSearchIndex --&gt;
&lt;/classes&gt;
&lt;/test&gt; &lt;!-- Command line test(failed) --&gt;
&lt;/suite&gt; &lt;!-- Command line suite --&gt;
</pre>
</div> <!-- main-panel-content rounded-window-bottom -->
</div> <!-- panel -->
<div panel-name="testlist-Command_line_suite" class="panel">
<div class="main-panel-header rounded-window-top">
<span class="header-content">Tests for Command line suite</span>
</div> <!-- main-panel-header rounded-window-top -->
<div class="main-panel-content rounded-window-bottom">
<ul>
<li>
<span class="test-name">Command line test (1 class)</span>
</li>
<li>
<span class="test-name">Command line test(failed) (1 class)</span>
</li>
</ul>
</div> <!-- main-panel-content rounded-window-bottom -->
</div> <!-- panel -->
<div panel-name="group-Command_line_suite" class="panel">
<div class="main-panel-header rounded-window-top">
<span class="header-content">Groups for Command line suite</span>
</div> <!-- main-panel-header rounded-window-top -->
<div class="main-panel-content rounded-window-bottom">
</div> <!-- main-panel-content rounded-window-bottom -->
</div> <!-- panel -->
<div panel-name="times-Command_line_suite" class="panel">
<div class="main-panel-header rounded-window-top">
<span class="header-content">Times for Command line suite</span>
</div> <!-- main-panel-header rounded-window-top -->
<div class="main-panel-content rounded-window-bottom">
<div class="times-div">
<script type="text/javascript">
suiteTableInitFunctions.push('tableData_Command_line_suite');
function tableData_Command_line_suite() {
var data = new google.visualization.DataTable();
data.addColumn('number', 'Number');
data.addColumn('string', 'Method');
data.addColumn('string', 'Class');
data.addColumn('number', 'Time (ms)');
data.addRows(1);
data.setCell(0, 0, 0)
data.setCell(0, 1, 'rebuildSearchIndexTest')
data.setCell(0, 2, 'org.vivoweb.vivo.selenium.tests.RebuildSearchIndex')
data.setCell(0, 3, 1191);
window.suiteTableData['Command_line_suite']= { tableData: data, tableDiv: 'times-div-Command_line_suite'}
return data;
}
</script>
<span class="suite-total-time">Total running time: 1 seconds</span>
<div id="times-div-Command_line_suite">
</div> <!-- times-div-Command_line_suite -->
</div> <!-- times-div -->
</div> <!-- main-panel-content rounded-window-bottom -->
</div> <!-- panel -->
<div panel-name="reporter-Command_line_suite" class="panel">
<div class="main-panel-header rounded-window-top">
<span class="header-content">Reporter output for Command line suite</span>
</div> <!-- main-panel-header rounded-window-top -->
<div class="main-panel-content rounded-window-bottom">
</div> <!-- main-panel-content rounded-window-bottom -->
</div> <!-- panel -->
<div panel-name="ignored-methods-Command_line_suite" class="panel">
<div class="main-panel-header rounded-window-top">
<span class="header-content">0 ignored methods</span>
</div> <!-- main-panel-header rounded-window-top -->
<div class="main-panel-content rounded-window-bottom">
</div> <!-- main-panel-content rounded-window-bottom -->
</div> <!-- panel -->
<div panel-name="chronological-Command_line_suite" class="panel">
<div class="main-panel-header rounded-window-top">
<span class="header-content">Methods in chronological order</span>
</div> <!-- main-panel-header rounded-window-top -->
<div class="main-panel-content rounded-window-bottom">
<div class="chronological-class">
<div class="chronological-class-name">org.vivoweb.vivo.selenium.tests.RebuildSearchIndex</div> <!-- chronological-class-name -->
<div class="configuration-test before">
<span class="method-name">vivoSetup</span>
<span class="method-start">0 ms</span>
</div> <!-- configuration-test before -->
<div class="configuration-class before">
<span class="method-name">setup</span>
<span class="method-start">0 ms</span>
</div> <!-- configuration-class before -->
<div class="configuration-class before">
<span class="method-name">setUp</span>
<span class="method-start">0 ms</span>
</div> <!-- configuration-class before -->
<div class="test-method">
<img src="failed.png">
</img>
<span class="method-name">rebuildSearchIndexTest</span>
<span class="method-start">0 ms</span>
</div> <!-- test-method -->
<div class="configuration-class after">
<span class="method-name">vivoTeardown</span>
<span class="method-start">1191 ms</span>
</div> <!-- configuration-class after -->
<div class="configuration-class after">
<span class="method-name">cleanup</span>
<span class="method-start">1191 ms</span>
</div> <!-- configuration-class after -->
</div> <!-- main-panel-content rounded-window-bottom -->
</div> <!-- panel -->
</div> <!-- main-panel-root -->
</div> <!-- wrapper -->
</body>
</html>

File diff suppressed because one or more lines are too long

View file

@ -0,0 +1,93 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- Generated by org.testng.reporters.JUnitReportReporter -->
<testsuite hostname="Grahams-MBP-2" name="org.vivoweb.vivo.selenium.tests.RebuildSearchIndex" tests="1" failures="0" timestamp="23 Jan 2016 20:20:13 GMT" time="1.191" errors="1">
<testcase name="rebuildSearchIndexTest" time="1.191" classname="org.vivoweb.vivo.selenium.tests.RebuildSearchIndex">
<error type="org.openqa.selenium.NoSuchElementException" message="Unable to locate element: {&quot;method&quot;:&quot;link text&quot;,&quot;selector&quot;:&quot;Site Admin&quot;}
Command duration or timeout: 1.18 seconds
For documentation on this error, please visit: http://seleniumhq.org/exceptions/no_such_element.html
Build info: version: &#039;2.48.2&#039;, revision: &#039;41bccdd10cf2c0560f637404c2d96164b67d9d67&#039;, time: &#039;2015-10-09 13:08:06&#039;
System info: host: &#039;Grahams-MBP-2&#039;, ip: &#039;192.168.1.239&#039;, os.name: &#039;Mac OS X&#039;, os.arch: &#039;x86_64&#039;, os.version: &#039;10.11.3&#039;, java.version: &#039;1.8.0_60&#039;
Driver info: org.openqa.selenium.firefox.FirefoxDriver
Capabilities [{applicationCacheEnabled=true, rotatable=false, handlesAlerts=true, databaseEnabled=true, version=43.0.4, platform=MAC, nativeEvents=false, acceptSslCerts=true, webStorageEnabled=true, locationContextEnabled=true, browserName=firefox, takesScreenshot=true, javascriptEnabled=true, cssSelectorsEnabled=true}]
Session ID: 0454c462-95d4-4143-85a7-404602e998cd
*** Element info: {Using=link text, value=Site Admin}">
<![CDATA[org.openqa.selenium.NoSuchElementException: Unable to locate element: {"method":"link text","selector":"Site Admin"}
Command duration or timeout: 1.18 seconds
For documentation on this error, please visit: http://seleniumhq.org/exceptions/no_such_element.html
Build info: version: '2.48.2', revision: '41bccdd10cf2c0560f637404c2d96164b67d9d67', time: '2015-10-09 13:08:06'
System info: host: 'Grahams-MBP-2', ip: '192.168.1.239', os.name: 'Mac OS X', os.arch: 'x86_64', os.version: '10.11.3', java.version: '1.8.0_60'
Driver info: org.openqa.selenium.firefox.FirefoxDriver
Capabilities [{applicationCacheEnabled=true, rotatable=false, handlesAlerts=true, databaseEnabled=true, version=43.0.4, platform=MAC, nativeEvents=false, acceptSslCerts=true, webStorageEnabled=true, locationContextEnabled=true, browserName=firefox, takesScreenshot=true, javascriptEnabled=true, cssSelectorsEnabled=true}]
Session ID: 0454c462-95d4-4143-85a7-404602e998cd
*** Element info: {Using=link text, value=Site Admin}
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:422)
at org.openqa.selenium.remote.ErrorHandler.createThrowable(ErrorHandler.java:206)
at org.openqa.selenium.remote.ErrorHandler.throwIfResponseFailed(ErrorHandler.java:158)
at org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:647)
at org.openqa.selenium.remote.RemoteWebDriver.findElement(RemoteWebDriver.java:353)
at org.openqa.selenium.remote.RemoteWebDriver.findElementByLinkText(RemoteWebDriver.java:418)
at org.openqa.selenium.By$ByLinkText.findElement(By.java:246)
at org.openqa.selenium.remote.RemoteWebDriver.findElement(RemoteWebDriver.java:345)
at org.vivoweb.vivo.selenium.tests.AbstractSeleniumTest.clickAndWait(AbstractSeleniumTest.java:46)
at org.vivoweb.vivo.selenium.tests.RebuildSearchIndex.rebuildSearchIndexTest(RebuildSearchIndex.java:15)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:497)
at org.testng.internal.MethodInvocationHelper.invokeMethod(MethodInvocationHelper.java:86)
at org.testng.internal.Invoker.invokeMethod(Invoker.java:643)
at org.testng.internal.Invoker.invokeTestMethod(Invoker.java:820)
at org.testng.internal.Invoker.invokeTestMethods(Invoker.java:1128)
at org.testng.internal.TestMethodWorker.invokeTestMethods(TestMethodWorker.java:129)
at org.testng.internal.TestMethodWorker.run(TestMethodWorker.java:112)
at org.testng.TestRunner.privateRun(TestRunner.java:782)
at org.testng.TestRunner.run(TestRunner.java:632)
at org.testng.SuiteRunner.runTest(SuiteRunner.java:366)
at org.testng.SuiteRunner.runSequentially(SuiteRunner.java:361)
at org.testng.SuiteRunner.privateRun(SuiteRunner.java:319)
at org.testng.SuiteRunner.run(SuiteRunner.java:268)
at org.testng.SuiteRunnerWorker.runSuite(SuiteRunnerWorker.java:52)
at org.testng.SuiteRunnerWorker.run(SuiteRunnerWorker.java:86)
at org.testng.TestNG.runSuitesSequentially(TestNG.java:1244)
at org.testng.TestNG.runSuitesLocally(TestNG.java:1169)
at org.testng.TestNG.run(TestNG.java:1064)
at org.vivoweb.vivo.selenium.suites.Suite2.suite2(Suite2.java:18)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:497)
at org.testng.internal.MethodInvocationHelper.invokeMethod(MethodInvocationHelper.java:86)
at org.testng.internal.Invoker.invokeConfigurationMethod(Invoker.java:514)
at org.testng.internal.Invoker.invokeConfigurations(Invoker.java:215)
at org.testng.internal.Invoker.invokeConfigurations(Invoker.java:142)
at org.testng.SuiteRunner.privateRun(SuiteRunner.java:305)
at org.testng.SuiteRunner.run(SuiteRunner.java:268)
at org.testng.SuiteRunnerWorker.runSuite(SuiteRunnerWorker.java:52)
at org.testng.SuiteRunnerWorker.run(SuiteRunnerWorker.java:86)
at org.testng.TestNG.runSuitesSequentially(TestNG.java:1244)
at org.testng.TestNG.runSuitesLocally(TestNG.java:1169)
at org.testng.TestNG.run(TestNG.java:1064)
at org.testng.IDEARemoteTestNG.run(IDEARemoteTestNG.java:72)
at org.testng.RemoteTestNGStarter.main(RemoteTestNGStarter.java:122)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:497)
at com.intellij.rt.execution.application.AppMain.main(AppMain.java:144)
Caused by: org.openqa.selenium.NoSuchElementException: Unable to locate element: {"method":"link text","selector":"Site Admin"}
For documentation on this error, please visit: http://seleniumhq.org/exceptions/no_such_element.html
Build info: version: '2.48.2', revision: '41bccdd10cf2c0560f637404c2d96164b67d9d67', time: '2015-10-09 13:08:06'
System info: host: 'Grahams-MBP-2', ip: '192.168.1.239', os.name: 'Mac OS X', os.arch: 'x86_64', os.version: '10.11.3', java.version: '1.8.0_60'
Driver info: driver.version: unknown
at <anonymous class>.FirefoxDriver.prototype.findElementInternal_(file:///var/folders/7d/pmw9wv8n4nz_x9t4ztp_6tgw0000gn/T/anonymous8499514178617750884webdriver-profile/extensions/fxdriver@googlecode.com/components/driver-component.js:10659)
at <anonymous class>.FirefoxDriver.prototype.findElement(file:///var/folders/7d/pmw9wv8n4nz_x9t4ztp_6tgw0000gn/T/anonymous8499514178617750884webdriver-profile/extensions/fxdriver@googlecode.com/components/driver-component.js:10668)
at <anonymous class>.DelayedCommand.prototype.executeInternal_/h(file:///var/folders/7d/pmw9wv8n4nz_x9t4ztp_6tgw0000gn/T/anonymous8499514178617750884webdriver-profile/extensions/fxdriver@googlecode.com/components/command-processor.js:12534)
at <anonymous class>.DelayedCommand.prototype.executeInternal_(file:///var/folders/7d/pmw9wv8n4nz_x9t4ztp_6tgw0000gn/T/anonymous8499514178617750884webdriver-profile/extensions/fxdriver@googlecode.com/components/command-processor.js:12539)
at <anonymous class>.DelayedCommand.prototype.execute/<(file:///var/folders/7d/pmw9wv8n4nz_x9t4ztp_6tgw0000gn/T/anonymous8499514178617750884webdriver-profile/extensions/fxdriver@googlecode.com/components/command-processor.js:12481)
]]>
</error>
</testcase> <!-- rebuildSearchIndexTest -->
</testsuite> <!-- org.vivoweb.vivo.selenium.tests.RebuildSearchIndex -->

Binary file not shown.

After

Width:  |  Height:  |  Size: 352 B

View file

@ -0,0 +1 @@
[SuiteResult context=Command line test]

View file

@ -0,0 +1,44 @@
<table border='1'>
<tr>
<th>Class name</th>
<th>Method name</th>
<th>Groups</th>
</tr><tr>
<td>org.vivoweb.vivo.selenium.tests.RebuildSearchIndex</td>
<td>&nbsp;</td><td>&nbsp;</td></tr>
<tr>
<td align='center' colspan='3'>@Test</td>
</tr>
<tr>
<td>&nbsp;</td>
<td>rebuildSearchIndexTest</td>
<td>&nbsp;</td></tr>
<tr>
<td align='center' colspan='3'>@BeforeClass</td>
</tr>
<tr>
<td>&nbsp;</td>
<td>setup</td>
<td>&nbsp;</td></tr>
<tr>
<td>&nbsp;</td>
<td>setUp</td>
<td>&nbsp;</td></tr>
<tr>
<td align='center' colspan='3'>@BeforeMethod</td>
</tr>
<tr>
<td align='center' colspan='3'>@AfterMethod</td>
</tr>
<tr>
<td align='center' colspan='3'>@AfterClass</td>
</tr>
<tr>
<td>&nbsp;</td>
<td>vivoTeardown</td>
<td>&nbsp;</td></tr>
<tr>
<td>&nbsp;</td>
<td>cleanup</td>
<td>&nbsp;</td></tr>
</table>

View file

@ -0,0 +1 @@
<h2>Groups used for this test run</h2>

View file

@ -0,0 +1,6 @@
<html><head><title>Results for Command line suite</title></head>
<frameset cols="26%,74%">
<frame src="toc.html" name="navFrame">
<frame src="main.html" name="mainFrame">
</frameset>
</html>

View file

@ -0,0 +1,2 @@
<html><head><title>Results for Command line suite</title></head>
<body>Select a result on the left-hand pane.</body></html>

View file

@ -0,0 +1,16 @@
<h2>Methods run, sorted chronologically</h2><h3>&gt;&gt; means before, &lt;&lt; means after</h3><p/><br/><em>Command line suite</em><p/><small><i>(Hover the method name to see the test class name)</i></small><p/>
<table border="1">
<tr><th>Time</th><th>Delta (ms)</th><th>Suite<br>configuration</th><th>Test<br>configuration</th><th>Class<br>configuration</th><th>Groups<br>configuration</th><th>Method<br>configuration</th><th>Test<br>method</th><th>Thread</th><th>Instances</th></tr>
<tr bgcolor="71cca7"> <td>16/01/23 20:20:13</td> <td>0</td> <td>&nbsp;</td><td>&nbsp;</td><td title="&lt;&lt;AbstractSeleniumTest.cleanup()[pri:0, instance:org.vivoweb.vivo.selenium.tests.RebuildSearchIndex@1cf56a1c]">&lt;&lt;cleanup</td>
<td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td> <td>main@1627960023</td> <td></td> </tr>
<tr bgcolor="aaed64"> <td>16/01/23 20:20:12</td> <td>-1191</td> <td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td title="RebuildSearchIndex.rebuildSearchIndexTest()[pri:0, instance:org.vivoweb.vivo.selenium.tests.RebuildSearchIndex@1cf56a1c]">rebuildSearchIndexTest</td>
<td>main@1627960023</td> <td></td> </tr>
<tr bgcolor="aaed64"> <td>16/01/23 20:20:12</td> <td>-1191</td> <td>&nbsp;</td><td>&nbsp;</td><td title="&gt;&gt;RebuildSearchIndex.setUp()[pri:0, instance:org.vivoweb.vivo.selenium.tests.RebuildSearchIndex@1cf56a1c]">&gt;&gt;setUp</td>
<td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td> <td>main@1627960023</td> <td></td> </tr>
<tr bgcolor="71cca7"> <td>16/01/23 20:20:12</td> <td>-1191</td> <td>&nbsp;</td><td>&nbsp;</td><td title="&gt;&gt;AbstractSeleniumTest.setup()[pri:0, instance:org.vivoweb.vivo.selenium.tests.RebuildSearchIndex@1cf56a1c]">&gt;&gt;setup</td>
<td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td> <td>main@1627960023</td> <td></td> </tr>
<tr bgcolor="febc6f"> <td>16/01/23 20:20:12</td> <td>-1191</td> <td>&nbsp;</td><td title="&gt;&gt;AbstractVIVOSeleniumTest.vivoSetup()[pri:0, instance:org.vivoweb.vivo.selenium.tests.RebuildSearchIndex@1cf56a1c]">&gt;&gt;vivoSetup</td>
<td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td> <td>main@1627960023</td> <td></td> </tr>
<tr bgcolor="febc6f"> <td>16/01/23 20:20:13</td> <td>0</td> <td>&nbsp;</td><td>&nbsp;</td><td title="&lt;&lt;AbstractVIVOSeleniumTest.vivoTeardown()[pri:0, instance:org.vivoweb.vivo.selenium.tests.RebuildSearchIndex@1cf56a1c]">&lt;&lt;vivoTeardown</td>
<td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td> <td>main@1627960023</td> <td></td> </tr>
</table>

View file

@ -0,0 +1,2 @@
<h2>Methods that were not run</h2><table>
</table>

View file

@ -0,0 +1,16 @@
<h2>Methods run, sorted chronologically</h2><h3>&gt;&gt; means before, &lt;&lt; means after</h3><p/><br/><em>Command line suite</em><p/><small><i>(Hover the method name to see the test class name)</i></small><p/>
<table border="1">
<tr><th>Time</th><th>Delta (ms)</th><th>Suite<br>configuration</th><th>Test<br>configuration</th><th>Class<br>configuration</th><th>Groups<br>configuration</th><th>Method<br>configuration</th><th>Test<br>method</th><th>Thread</th><th>Instances</th></tr>
<tr bgcolor="febc6f"> <td>16/01/23 20:20:12</td> <td>0</td> <td>&nbsp;</td><td title="&gt;&gt;AbstractVIVOSeleniumTest.vivoSetup()[pri:0, instance:org.vivoweb.vivo.selenium.tests.RebuildSearchIndex@1cf56a1c]">&gt;&gt;vivoSetup</td>
<td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td> <td>main@1627960023</td> <td></td> </tr>
<tr bgcolor="71cca7"> <td>16/01/23 20:20:12</td> <td>0</td> <td>&nbsp;</td><td>&nbsp;</td><td title="&gt;&gt;AbstractSeleniumTest.setup()[pri:0, instance:org.vivoweb.vivo.selenium.tests.RebuildSearchIndex@1cf56a1c]">&gt;&gt;setup</td>
<td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td> <td>main@1627960023</td> <td></td> </tr>
<tr bgcolor="aaed64"> <td>16/01/23 20:20:12</td> <td>0</td> <td>&nbsp;</td><td>&nbsp;</td><td title="&gt;&gt;RebuildSearchIndex.setUp()[pri:0, instance:org.vivoweb.vivo.selenium.tests.RebuildSearchIndex@1cf56a1c]">&gt;&gt;setUp</td>
<td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td> <td>main@1627960023</td> <td></td> </tr>
<tr bgcolor="aaed64"> <td>16/01/23 20:20:12</td> <td>0</td> <td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td title="RebuildSearchIndex.rebuildSearchIndexTest()[pri:0, instance:org.vivoweb.vivo.selenium.tests.RebuildSearchIndex@1cf56a1c]">rebuildSearchIndexTest</td>
<td>main@1627960023</td> <td></td> </tr>
<tr bgcolor="febc6f"> <td>16/01/23 20:20:13</td> <td>1191</td> <td>&nbsp;</td><td>&nbsp;</td><td title="&lt;&lt;AbstractVIVOSeleniumTest.vivoTeardown()[pri:0, instance:org.vivoweb.vivo.selenium.tests.RebuildSearchIndex@1cf56a1c]">&lt;&lt;vivoTeardown</td>
<td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td> <td>main@1627960023</td> <td></td> </tr>
<tr bgcolor="71cca7"> <td>16/01/23 20:20:13</td> <td>1191</td> <td>&nbsp;</td><td>&nbsp;</td><td title="&lt;&lt;AbstractSeleniumTest.cleanup()[pri:0, instance:org.vivoweb.vivo.selenium.tests.RebuildSearchIndex@1cf56a1c]">&lt;&lt;cleanup</td>
<td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td> <td>main@1627960023</td> <td></td> </tr>
</table>

View file

@ -0,0 +1 @@
<h2>Reporter output</h2><table></table>

View file

@ -0,0 +1 @@
<html><head><title>testng.xml for Command line suite</title></head><body><tt>&lt;?xml&nbsp;version="1.0"&nbsp;encoding="UTF-8"?&gt;<br/>&lt;!DOCTYPE&nbsp;suite&nbsp;SYSTEM&nbsp;"http://testng.org/testng-1.0.dtd"&gt;<br/>&lt;suite&nbsp;name="Command&nbsp;line&nbsp;suite"&gt;<br/>&nbsp;&nbsp;&lt;test&nbsp;name="Command&nbsp;line&nbsp;test"&nbsp;preserve-order="false"&gt;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&lt;classes&gt;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;class&nbsp;name="org.vivoweb.vivo.selenium.tests.RebuildSearchIndex"/&gt;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&lt;/classes&gt;<br/>&nbsp;&nbsp;&lt;/test&gt;&nbsp;&lt;!--&nbsp;Command&nbsp;line&nbsp;test&nbsp;--&gt;<br/>&nbsp;&nbsp;&lt;test&nbsp;name="Command&nbsp;line&nbsp;test(failed)"&gt;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&lt;classes&gt;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;class&nbsp;name="org.vivoweb.vivo.selenium.tests.RebuildSearchIndex"&gt;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;methods&gt;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;include&nbsp;name="cleanup"/&gt;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;include&nbsp;name="rebuildSearchIndexTest"/&gt;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;include&nbsp;name="vivoSetup"/&gt;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;include&nbsp;name="setUp"/&gt;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;include&nbsp;name="vivoTeardown"/&gt;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;include&nbsp;name="setup"/&gt;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;/methods&gt;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;/class&gt;&nbsp;&lt;!--&nbsp;org.vivoweb.vivo.selenium.tests.RebuildSearchIndex&nbsp;--&gt;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&lt;/classes&gt;<br/>&nbsp;&nbsp;&lt;/test&gt;&nbsp;&lt;!--&nbsp;Command&nbsp;line&nbsp;test(failed)&nbsp;--&gt;<br/>&lt;/suite&gt;&nbsp;&lt;!--&nbsp;Command&nbsp;line&nbsp;suite&nbsp;--&gt;<br/></tt></body></html>

View file

@ -0,0 +1,30 @@
<html>
<head>
<title>Results for Command line suite</title>
<link href="../testng.css" rel="stylesheet" type="text/css" />
<link href="../my-testng.css" rel="stylesheet" type="text/css" />
</head>
<body>
<h3><p align="center">Results for<br/><em>Command line suite</em></p></h3>
<table border='1' width='100%'>
<tr valign='top'>
<td>1 test</td>
<td><a target='mainFrame' href='classes.html'>1 class</a></td>
<td>1 method:<br/>
&nbsp;&nbsp;<a target='mainFrame' href='methods.html'>chronological</a><br/>
&nbsp;&nbsp;<a target='mainFrame' href='methods-alphabetical.html'>alphabetical</a><br/>
&nbsp;&nbsp;<a target='mainFrame' href='methods-not-run.html'>not run (0)</a></td>
</tr>
<tr>
<td><a target='mainFrame' href='groups.html'>0 group</a></td>
<td><a target='mainFrame' href='reporter-output.html'>reporter output</a></td>
<td><a target='mainFrame' href='testng.xml.html'>testng.xml</a></td>
</tr></table>
<table width='100%' class='test-failed'>
<tr><td>
<table style='width: 100%'><tr><td valign='top'>Command line test (0/1/0)</td><td valign='top' align='right'>
<a href='Command line test.html' target='mainFrame'>Results</a>
</td></tr></table>
</td></tr><p/>
</table>
</body></html>

View file

@ -0,0 +1,9 @@
<html>
<head><title>Test results</title><link href="./testng.css" rel="stylesheet" type="text/css" />
<link href="./my-testng.css" rel="stylesheet" type="text/css" />
</head><body>
<h2><p align='center'>Test results</p></h2>
<table border='1' width='100%' class='main-page'><tr><th>Suite</th><th>Passed</th><th>Failed</th><th>Skipped</th><th>testng.xml</th></tr>
<tr align='center' class='invocation-failed'><td><em>Total</em></td><td><em>0</em></td><td><em>1</em></td><td><em>0</em></td><td>&nbsp;</td></tr>
<tr align='center' class='invocation-failed'><td><a href='Command line suite/index.html'>Command line suite</a></td>
<td>0</td><td>1</td><td>0</td><td><a href='Command line suite/testng.xml.html'>Link</a></td></tr></table></body></html>

Binary file not shown.

After

Width:  |  Height:  |  Size: 1,019 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 967 B

View file

@ -0,0 +1,23 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd">
<suite name="Failed suite [Command line suite]">
<test name="Command line test" preserve-order="false">
<classes>
<class name="org.vivoweb.vivo.selenium.tests.RebuildSearchIndex"/>
</classes>
</test> <!-- Command line test -->
<test name="Command line test(failed)">
<classes>
<class name="org.vivoweb.vivo.selenium.tests.RebuildSearchIndex">
<methods>
<include name="cleanup"/>
<include name="rebuildSearchIndexTest"/>
<include name="vivoSetup"/>
<include name="setUp"/>
<include name="vivoTeardown"/>
<include name="setup"/>
</methods>
</class> <!-- org.vivoweb.vivo.selenium.tests.RebuildSearchIndex -->
</classes>
</test> <!-- Command line test(failed) -->
</suite> <!-- Failed suite [Command line suite] -->

View file

@ -0,0 +1,309 @@
body {
margin: 0px 0px 5px 5px;
}
ul {
margin: 0px;
}
li {
list-style-type: none;
}
a {
text-decoration: none;
}
a:hover {
text-decoration: underline;
}
.navigator-selected {
background: #ffa500;
}
.wrapper {
position: absolute;
top: 60px;
bottom: 0;
left: 400px;
right: 0;
overflow: auto;
}
.navigator-root {
position: absolute;
top: 60px;
bottom: 0;
left: 0;
width: 400px;
overflow-y: auto;
}
.suite {
margin: 0px 10px 10px 0px;
background-color: #fff8dc;
}
.suite-name {
padding-left: 10px;
font-size: 25px;
font-family: Times;
}
.main-panel-header {
padding: 5px;
background-color: #9FB4D9; //afeeee;
font-family: monospace;
font-size: 18px;
}
.main-panel-content {
padding: 5px;
margin-bottom: 10px;
background-color: #DEE8FC; //d0ffff;
}
.rounded-window {
border-radius: 10px;
border-style: solid;
border-width: 1px;
}
.rounded-window-top {
border-top-right-radius: 10px 10px;
border-top-left-radius: 10px 10px;
border-style: solid;
border-width: 1px;
overflow: auto;
}
.light-rounded-window-top {
border-top-right-radius: 10px 10px;
border-top-left-radius: 10px 10px;
}
.rounded-window-bottom {
border-style: solid;
border-width: 0px 1px 1px 1px;
border-bottom-right-radius: 10px 10px;
border-bottom-left-radius: 10px 10px;
overflow: auto;
}
.method-name {
font-size: 12px;
font-family: monospace;
}
.method-content {
border-style: solid;
border-width: 0px 0px 1px 0px;
margin-bottom: 10;
padding-bottom: 5px;
width: 80%;
}
.parameters {
font-size: 14px;
font-family: monospace;
}
.stack-trace {
white-space: pre;
font-family: monospace;
font-size: 12px;
font-weight: bold;
margin-top: 0px;
margin-left: 20px;
}
.testng-xml {
font-family: monospace;
}
.method-list-content {
margin-left: 10px;
}
.navigator-suite-content {
margin-left: 10px;
font: 12px 'Lucida Grande';
}
.suite-section-title {
margin-top: 10px;
width: 80%;
border-style: solid;
border-width: 1px 0px 0px 0px;
font-family: Times;
font-size: 18px;
font-weight: bold;
}
.suite-section-content {
list-style-image: url(bullet_point.png);
}
.top-banner-root {
position: absolute;
top: 0;
height: 45px;
left: 0;
right: 0;
padding: 5px;
margin: 0px 0px 5px 0px;
background-color: #0066ff;
font-family: Times;
color: #fff;
text-align: center;
}
.top-banner-title-font {
font-size: 25px;
}
.test-name {
font-family: 'Lucida Grande';
font-size: 16px;
}
.suite-icon {
padding: 5px;
float: right;
height: 20;
}
.test-group {
font: 20px 'Lucida Grande';
margin: 5px 5px 10px 5px;
border-width: 0px 0px 1px 0px;
border-style: solid;
padding: 5px;
}
.test-group-name {
font-weight: bold;
}
.method-in-group {
font-size: 16px;
margin-left: 80px;
}
table.google-visualization-table-table {
width: 100%;
}
.reporter-method-name {
font-size: 14px;
font-family: monospace;
}
.reporter-method-output-div {
padding: 5px;
margin: 0px 0px 5px 20px;
font-size: 12px;
font-family: monospace;
border-width: 0px 0px 0px 1px;
border-style: solid;
}
.ignored-class-div {
font-size: 14px;
font-family: monospace;
}
.ignored-methods-div {
padding: 5px;
margin: 0px 0px 5px 20px;
font-size: 12px;
font-family: monospace;
border-width: 0px 0px 0px 1px;
border-style: solid;
}
.border-failed {
border-top-left-radius: 10px 10px;
border-bottom-left-radius: 10px 10px;
border-style: solid;
border-width: 0px 0px 0px 10px;
border-color: #f00;
}
.border-skipped {
border-top-left-radius: 10px 10px;
border-bottom-left-radius: 10px 10px;
border-style: solid;
border-width: 0px 0px 0px 10px;
border-color: #edc600;
}
.border-passed {
border-top-left-radius: 10px 10px;
border-bottom-left-radius: 10px 10px;
border-style: solid;
border-width: 0px 0px 0px 10px;
border-color: #19f52d;
}
.times-div {
text-align: center;
padding: 5px;
}
.suite-total-time {
font: 16px 'Lucida Grande';
}
.configuration-suite {
margin-left: 20px;
}
.configuration-test {
margin-left: 40px;
}
.configuration-class {
margin-left: 60px;
}
.configuration-method {
margin-left: 80px;
}
.test-method {
margin-left: 100px;
}
.chronological-class {
background-color: #0ccff;
border-style: solid;
border-width: 0px 0px 1px 1px;
}
.method-start {
float: right;
}
.chronological-class-name {
padding: 0px 0px 0px 5px;
color: #008;
}
.after, .before, .test-method {
font-family: monospace;
font-size: 14px;
}
.navigator-suite-header {
font-size: 22px;
margin: 0px 10px 5px 0px;
background-color: #deb887;
text-align: center;
}
.collapse-all-icon {
padding: 5px;
float: right;
}

View file

@ -0,0 +1,122 @@
$(document).ready(function() {
$('a.navigator-link').click(function() {
// Extract the panel for this link
var panel = getPanelName($(this));
// Mark this link as currently selected
$('.navigator-link').parent().removeClass('navigator-selected');
$(this).parent().addClass('navigator-selected');
showPanel(panel);
});
installMethodHandlers('failed');
installMethodHandlers('skipped');
installMethodHandlers('passed', true); // hide passed methods by default
$('a.method').click(function() {
showMethod($(this));
return false;
});
// Hide all the panels and display the first one (do this last
// to make sure the click() will invoke the listeners)
$('.panel').hide();
$('.navigator-link').first().click();
// Collapse/expand the suites
$('a.collapse-all-link').click(function() {
var contents = $('.navigator-suite-content');
if (contents.css('display') == 'none') {
contents.show();
} else {
contents.hide();
}
});
});
// The handlers that take care of showing/hiding the methods
function installMethodHandlers(name, hide) {
function getContent(t) {
return $('.method-list-content.' + name + "." + t.attr('panel-name'));
}
function getHideLink(t, name) {
var s = 'a.hide-methods.' + name + "." + t.attr('panel-name');
return $(s);
}
function getShowLink(t, name) {
return $('a.show-methods.' + name + "." + t.attr('panel-name'));
}
function getMethodPanelClassSel(element, name) {
var panelName = getPanelName(element);
var sel = '.' + panelName + "-class-" + name;
return $(sel);
}
$('a.hide-methods.' + name).click(function() {
var w = getContent($(this));
w.hide();
getHideLink($(this), name).hide();
getShowLink($(this), name).show();
getMethodPanelClassSel($(this), name).hide();
});
$('a.show-methods.' + name).click(function() {
var w = getContent($(this));
w.show();
getHideLink($(this), name).show();
getShowLink($(this), name).hide();
showPanel(getPanelName($(this)));
getMethodPanelClassSel($(this), name).show();
});
if (hide) {
$('a.hide-methods.' + name).click();
} else {
$('a.show-methods.' + name).click();
}
}
function getHashForMethod(element) {
return element.attr('hash-for-method');
}
function getPanelName(element) {
return element.attr('panel-name');
}
function showPanel(panelName) {
$('.panel').hide();
var panel = $('.panel[panel-name="' + panelName + '"]');
panel.show();
}
function showMethod(element) {
var hashTag = getHashForMethod(element);
var panelName = getPanelName(element);
showPanel(panelName);
var current = document.location.href;
var base = current.substring(0, current.indexOf('#'))
document.location.href = base + '#' + hashTag;
var newPosition = $(document).scrollTop() - 65;
$(document).scrollTop(newPosition);
}
function drawTable() {
for (var i = 0; i < suiteTableInitFunctions.length; i++) {
window[suiteTableInitFunctions[i]]();
}
for (var k in window.suiteTableData) {
var v = window.suiteTableData[k];
var div = v.tableDiv;
var data = v.tableData
var table = new google.visualization.Table(document.getElementById(div));
table.draw(data, {
showRowNumber : false
});
}
}

View file

@ -0,0 +1,129 @@
<?xml version="1.0" encoding="UTF-8"?>
<testng-results skipped="0" failed="1" total="1" passed="0">
<reporter-output>
</reporter-output>
<suite name="Command line suite" duration-ms="1334" started-at="2016-01-23T20:20:12Z" finished-at="2016-01-23T20:20:13Z">
<groups>
</groups>
<test name="Command line test" duration-ms="1334" started-at="2016-01-23T20:20:12Z" finished-at="2016-01-23T20:20:13Z">
<class name="org.vivoweb.vivo.selenium.tests.RebuildSearchIndex">
<test-method status="PASS" signature="setup()[pri:0, instance:org.vivoweb.vivo.selenium.tests.RebuildSearchIndex@1cf56a1c]" name="setup" is-config="true" duration-ms="0" started-at="2016-01-23T20:20:12Z" finished-at="2016-01-23T20:20:12Z">
<reporter-output>
</reporter-output>
</test-method> <!-- setup -->
<test-method status="PASS" signature="setUp()[pri:0, instance:org.vivoweb.vivo.selenium.tests.RebuildSearchIndex@1cf56a1c]" name="setUp" is-config="true" duration-ms="0" started-at="2016-01-23T20:20:12Z" finished-at="2016-01-23T20:20:12Z">
<reporter-output>
</reporter-output>
</test-method> <!-- setUp -->
<test-method status="PASS" signature="vivoSetup()[pri:0, instance:org.vivoweb.vivo.selenium.tests.RebuildSearchIndex@1cf56a1c]" name="vivoSetup" is-config="true" duration-ms="0" started-at="2016-01-23T20:20:12Z" finished-at="2016-01-23T20:20:12Z">
<reporter-output>
</reporter-output>
</test-method> <!-- vivoSetup -->
<test-method status="FAIL" signature="rebuildSearchIndexTest()[pri:0, instance:org.vivoweb.vivo.selenium.tests.RebuildSearchIndex@1cf56a1c]" name="rebuildSearchIndexTest" duration-ms="1191" started-at="2016-01-23T20:20:12Z" finished-at="2016-01-23T20:20:13Z">
<exception class="org.openqa.selenium.NoSuchElementException">
<message>
<![CDATA[Unable to locate element: {"method":"link text","selector":"Site Admin"}
Command duration or timeout: 1.18 seconds
For documentation on this error, please visit: http://seleniumhq.org/exceptions/no_such_element.html
Build info: version: '2.48.2', revision: '41bccdd10cf2c0560f637404c2d96164b67d9d67', time: '2015-10-09 13:08:06'
System info: host: 'Grahams-MBP-2', ip: '192.168.1.239', os.name: 'Mac OS X', os.arch: 'x86_64', os.version: '10.11.3', java.version: '1.8.0_60'
Driver info: org.openqa.selenium.firefox.FirefoxDriver
Capabilities [{applicationCacheEnabled=true, rotatable=false, handlesAlerts=true, databaseEnabled=true, version=43.0.4, platform=MAC, nativeEvents=false, acceptSslCerts=true, webStorageEnabled=true, locationContextEnabled=true, browserName=firefox, takesScreenshot=true, javascriptEnabled=true, cssSelectorsEnabled=true}]
Session ID: 0454c462-95d4-4143-85a7-404602e998cd
*** Element info: {Using=link text, value=Site Admin}]]>
</message>
<full-stacktrace>
<![CDATA[org.openqa.selenium.NoSuchElementException: Unable to locate element: {"method":"link text","selector":"Site Admin"}
Command duration or timeout: 1.18 seconds
For documentation on this error, please visit: http://seleniumhq.org/exceptions/no_such_element.html
Build info: version: '2.48.2', revision: '41bccdd10cf2c0560f637404c2d96164b67d9d67', time: '2015-10-09 13:08:06'
System info: host: 'Grahams-MBP-2', ip: '192.168.1.239', os.name: 'Mac OS X', os.arch: 'x86_64', os.version: '10.11.3', java.version: '1.8.0_60'
Driver info: org.openqa.selenium.firefox.FirefoxDriver
Capabilities [{applicationCacheEnabled=true, rotatable=false, handlesAlerts=true, databaseEnabled=true, version=43.0.4, platform=MAC, nativeEvents=false, acceptSslCerts=true, webStorageEnabled=true, locationContextEnabled=true, browserName=firefox, takesScreenshot=true, javascriptEnabled=true, cssSelectorsEnabled=true}]
Session ID: 0454c462-95d4-4143-85a7-404602e998cd
*** Element info: {Using=link text, value=Site Admin}
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:422)
at org.openqa.selenium.remote.ErrorHandler.createThrowable(ErrorHandler.java:206)
at org.openqa.selenium.remote.ErrorHandler.throwIfResponseFailed(ErrorHandler.java:158)
at org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:647)
at org.openqa.selenium.remote.RemoteWebDriver.findElement(RemoteWebDriver.java:353)
at org.openqa.selenium.remote.RemoteWebDriver.findElementByLinkText(RemoteWebDriver.java:418)
at org.openqa.selenium.By$ByLinkText.findElement(By.java:246)
at org.openqa.selenium.remote.RemoteWebDriver.findElement(RemoteWebDriver.java:345)
at org.vivoweb.vivo.selenium.tests.AbstractSeleniumTest.clickAndWait(AbstractSeleniumTest.java:46)
at org.vivoweb.vivo.selenium.tests.RebuildSearchIndex.rebuildSearchIndexTest(RebuildSearchIndex.java:15)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:497)
at org.testng.internal.MethodInvocationHelper.invokeMethod(MethodInvocationHelper.java:86)
at org.testng.internal.Invoker.invokeMethod(Invoker.java:643)
at org.testng.internal.Invoker.invokeTestMethod(Invoker.java:820)
at org.testng.internal.Invoker.invokeTestMethods(Invoker.java:1128)
at org.testng.internal.TestMethodWorker.invokeTestMethods(TestMethodWorker.java:129)
at org.testng.internal.TestMethodWorker.run(TestMethodWorker.java:112)
at org.testng.TestRunner.privateRun(TestRunner.java:782)
at org.testng.TestRunner.run(TestRunner.java:632)
at org.testng.SuiteRunner.runTest(SuiteRunner.java:366)
at org.testng.SuiteRunner.runSequentially(SuiteRunner.java:361)
at org.testng.SuiteRunner.privateRun(SuiteRunner.java:319)
at org.testng.SuiteRunner.run(SuiteRunner.java:268)
at org.testng.SuiteRunnerWorker.runSuite(SuiteRunnerWorker.java:52)
at org.testng.SuiteRunnerWorker.run(SuiteRunnerWorker.java:86)
at org.testng.TestNG.runSuitesSequentially(TestNG.java:1244)
at org.testng.TestNG.runSuitesLocally(TestNG.java:1169)
at org.testng.TestNG.run(TestNG.java:1064)
at org.vivoweb.vivo.selenium.suites.Suite2.suite2(Suite2.java:18)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:497)
at org.testng.internal.MethodInvocationHelper.invokeMethod(MethodInvocationHelper.java:86)
at org.testng.internal.Invoker.invokeConfigurationMethod(Invoker.java:514)
at org.testng.internal.Invoker.invokeConfigurations(Invoker.java:215)
at org.testng.internal.Invoker.invokeConfigurations(Invoker.java:142)
at org.testng.SuiteRunner.privateRun(SuiteRunner.java:305)
at org.testng.SuiteRunner.run(SuiteRunner.java:268)
at org.testng.SuiteRunnerWorker.runSuite(SuiteRunnerWorker.java:52)
at org.testng.SuiteRunnerWorker.run(SuiteRunnerWorker.java:86)
at org.testng.TestNG.runSuitesSequentially(TestNG.java:1244)
at org.testng.TestNG.runSuitesLocally(TestNG.java:1169)
at org.testng.TestNG.run(TestNG.java:1064)
at org.testng.IDEARemoteTestNG.run(IDEARemoteTestNG.java:72)
at org.testng.RemoteTestNGStarter.main(RemoteTestNGStarter.java:122)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:497)
at com.intellij.rt.execution.application.AppMain.main(AppMain.java:144)
Caused by: org.openqa.selenium.NoSuchElementException: Unable to locate element: {"method":"link text","selector":"Site Admin"}
For documentation on this error, please visit: http://seleniumhq.org/exceptions/no_such_element.html
Build info: version: '2.48.2', revision: '41bccdd10cf2c0560f637404c2d96164b67d9d67', time: '2015-10-09 13:08:06'
System info: host: 'Grahams-MBP-2', ip: '192.168.1.239', os.name: 'Mac OS X', os.arch: 'x86_64', os.version: '10.11.3', java.version: '1.8.0_60'
Driver info: driver.version: unknown
at <anonymous class>.FirefoxDriver.prototype.findElementInternal_(file:///var/folders/7d/pmw9wv8n4nz_x9t4ztp_6tgw0000gn/T/anonymous8499514178617750884webdriver-profile/extensions/fxdriver@googlecode.com/components/driver-component.js:10659)
at <anonymous class>.FirefoxDriver.prototype.findElement(file:///var/folders/7d/pmw9wv8n4nz_x9t4ztp_6tgw0000gn/T/anonymous8499514178617750884webdriver-profile/extensions/fxdriver@googlecode.com/components/driver-component.js:10668)
at <anonymous class>.DelayedCommand.prototype.executeInternal_/h(file:///var/folders/7d/pmw9wv8n4nz_x9t4ztp_6tgw0000gn/T/anonymous8499514178617750884webdriver-profile/extensions/fxdriver@googlecode.com/components/command-processor.js:12534)
at <anonymous class>.DelayedCommand.prototype.executeInternal_(file:///var/folders/7d/pmw9wv8n4nz_x9t4ztp_6tgw0000gn/T/anonymous8499514178617750884webdriver-profile/extensions/fxdriver@googlecode.com/components/command-processor.js:12539)
at <anonymous class>.DelayedCommand.prototype.execute/<(file:///var/folders/7d/pmw9wv8n4nz_x9t4ztp_6tgw0000gn/T/anonymous8499514178617750884webdriver-profile/extensions/fxdriver@googlecode.com/components/command-processor.js:12481)
]]>
</full-stacktrace>
</exception> <!-- org.openqa.selenium.NoSuchElementException -->
<reporter-output>
</reporter-output>
</test-method> <!-- rebuildSearchIndexTest -->
<test-method status="PASS" signature="vivoTeardown()[pri:0, instance:org.vivoweb.vivo.selenium.tests.RebuildSearchIndex@1cf56a1c]" name="vivoTeardown" is-config="true" duration-ms="0" started-at="2016-01-23T20:20:13Z" finished-at="2016-01-23T20:20:13Z">
<reporter-output>
</reporter-output>
</test-method> <!-- vivoTeardown -->
<test-method status="PASS" signature="cleanup()[pri:0, instance:org.vivoweb.vivo.selenium.tests.RebuildSearchIndex@1cf56a1c]" name="cleanup" is-config="true" duration-ms="142" started-at="2016-01-23T20:20:13Z" finished-at="2016-01-23T20:20:13Z">
<reporter-output>
</reporter-output>
</test-method> <!-- cleanup -->
</class> <!-- org.vivoweb.vivo.selenium.tests.RebuildSearchIndex -->
</test> <!-- Command line test -->
</suite> <!-- Command line suite -->
</testng-results>

View file

@ -0,0 +1,9 @@
.invocation-failed, .test-failed { background-color: #DD0000; }
.invocation-percent, .test-percent { background-color: #006600; }
.invocation-passed, .test-passed { background-color: #00AA00; }
.invocation-skipped, .test-skipped { background-color: #CCCC00; }
.main-page {
font-size: x-large;
}