linuxmensch
Grünschnabel
Hi @all,
ich hab hier einige Tests die im Rahmen von Integrations Tests für Maven in TestNG geschrieben wurden. Mittlerweile wurden einige Tests aber so wichtig das auch die Live Maschinen damit getestet werden sollen. Um dies nun möglichst sinnvoll zu machen gibt es einige Tests die verschiedene Werte ermitteln und an das Monitoringsystem weiterleiten um bei Grenzüberschreitungen einen Alarm auszulösen.
Es gibt einen Test z.B. ein Selenium Test innerhalb dessen wird eine Variable mit einem Wert befüllt.
Die testng.xml:
Aufgerufen wird der Test durch ein Monitoringsystem durch folgendes:
Wie komme ich an den Inhalt der Variablen myResult?
Vorab schon einmal vielen Dank.
ich hab hier einige Tests die im Rahmen von Integrations Tests für Maven in TestNG geschrieben wurden. Mittlerweile wurden einige Tests aber so wichtig das auch die Live Maschinen damit getestet werden sollen. Um dies nun möglichst sinnvoll zu machen gibt es einige Tests die verschiedene Werte ermitteln und an das Monitoringsystem weiterleiten um bei Grenzüberschreitungen einen Alarm auszulösen.
Es gibt einen Test z.B. ein Selenium Test innerhalb dessen wird eine Variable mit einem Wert befüllt.
Code:
package com.keepcoding.test;
import static org.testng.AssertJUnit.*;
import org.testng.annotations.*;
import com.thoughtworks.selenium.*;
public class TestClass {
private Selenium selenium;
private Object myResult = null;
@BeforeClass
@Parameters({"selenium.host","selenium.port","selenium.browser","selenium.url"})
public void startSelenium(String host, String port, String browser, String url) {
this.selenium = new DefaultSelenium(host, Integer.parseInt(port), browser, url);
this.selenium.start();
this.selenium.open(url);
}
@AfterClass(alwaysRun=true)
public void stopSelenium() {
this.selenium.stop();
}
@Test
@Parameters({"search","expected"})
public void googling(String search, String expected) {
try {
myResult = new String("Irgendwas");
} catch (SeleniumException e) {
fail(e.getMessage());
}
}
}
Die testng.xml:
Code:
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd" >
<suite name="DevelEnvSuite" verbose="3">
<parameter name="selenium.host" value="localhost"></parameter>
<parameter name="selenium.port" value="4444"></parameter>
<parameter name="selenium.browser" value="*firefox3"></parameter>
<parameter name="selenium.url" value="http://localhost:7080/"></parameter>
<test name="MyFirstTestCase">
<parameter name="search" value="SearchString"></parameter>
<parameter name="expected" value="ExpectedString"></parameter>
<classes>
<class name="com.keepcoding.test.TestClass"></class>
</classes>
</test>
</suite>
Aufgerufen wird der Test durch ein Monitoringsystem durch folgendes:
Code:
TestNG testng = new TestNG();
testng.setTestJar(fdo.getAbsolutePath());
testng.setOutputDirectory(tmp.getAbsolutePath());
testng.run();
status = testng.getStatus();
Wie komme ich an den Inhalt der Variablen myResult?
Vorab schon einmal vielen Dank.