Package core.support.objects
Class TestObject
- java.lang.Object
-
- core.support.objects.TestObject
-
public class TestObject extends Object
testInfo columns: testID testName isFirstRun testClass currentDriver ... 1 testA true classA A DriverA 2 testB true classA B DriverB- Author:
- CAEHMAT
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classTestObject.testStatestatic classTestObject.testType
-
Field Summary
-
Constructor Summary
Constructors Constructor Description TestObject()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static ServiceObjectgetApiDef(String key)gets api object from api keywords each keyword is associated with a api call use api keywords csv files for definitionsStringgetClassName()static StringgetDefaultTestObjectId()static TestObjectgetGlobalTestInfo()gets default test object if not exist, create default test objectstatic TestObjectgetParentTestInfo(ServiceObject serviceObject)get parent test object parent id is unique for each csv test file in service tests user for inheritance of config and log filesstatic StringgetTestId()static TestObjectgetTestInfo()testInfo is a static list containing hashmap of test objects with test name as key if testObject is empty for testId, Then default test is initialized And usedstatic TestObjectgetTestInfo(String testId)static intgetTestInvocationCount(String testname)returns the invocation count for the data provider test format class-testname-test1StringgetTestName()* testname is grabbed from test id test id is in format of "class - testname" if is before class And no testname exists, empty string is returnedstatic TestObjectgetTestObjectInheritence(DriverObject driver, String testId)Inheritance structure for test object before suite -> before class -> test method before suite -> before class -> after class before suite -> after suitestatic TestObject.testStategetTestState(String testName)get the state of the test object can be suite, testClass, testMethodstatic booleanhasTestStarted()TODO: Remove is test runner returns true if test is running, not before class, or after class based on testid: classname - testnameTestObjectincremenetRunCount()static TestObjectinheritParent(DriverObject driver, String testId)Inheritance structure for test object before suite -> before class -> test method before suite -> before class -> after class before suite -> after suite Service test hierarchy: before suite -> before class -> csv file name object -> csv tests before suite -> before class -> after class before suite -> after suite note: before method inheritance not supportedstatic voidinitializeTest(DriverObject driver, String testId)once per test, initialize test object maps driver with the test associates current driver with teststatic voidinitializeTest(String testId)once per test, initialize test object maps driver with the test associates current driver with teststatic booleanisBeforeTest(String testId)static booleanisFirstRun()returns true if webdriver has not started else returns true if isFirstRun is set to truestatic booleanisTestObjectSet()static booleanisTestObjectSet(String testId)return true if testId is registeredstatic booleanisValidTestId(String testId)static voidsetLogging()static voidsetTestId(String testId)static voidsetTestId(String testclass, String testname)static voidsetTestName(String testName)static voidsetupDefaultDriver()static voidupdateAppName(DriverObject driver)updates default test app name to driver app name default test object tracks the test run app name used for report nameTestObjectwithApp(String app)TestObjectwithCaughtThrowable(Throwable caughtThrowable)TestObjectwithClassName(String className)TestObjectwithCurrentDriver(DriverObject currentDriver)TestObjectwithDescription(org.junit.runner.Description description)TestObjectwithFailTrace(ArrayList<String> failTrace)TestObjectwithIsFirstRun(Boolean isFirstRun)TestObjectwithIsForcedRestart(Boolean isForcedRestart)TestObjectwithIsTestComplete(boolean isTestComplete)TestObjectwithIsTestPass(Boolean isTestPass)TestObjectwithLog(org.apache.logging.log4j.Logger log)TestObjectwithRunCount(int rerunCount)TestObjectwithTestFileClassName(String testFileClassName)TestObjectwithTestId(String testId)TestObjectwithTestName(String testName)TestObjectwithTestScenario(com.aventstack.extentreports.ExtentTest testScenerio)TestObjectwithWebDriver(org.openqa.selenium.WebDriver webdriver)TestObjectwithWebDriverList(List<org.openqa.selenium.WebDriver> webDriverList)
-
-
-
Field Detail
-
IS_PROPERTIES_DISABLED
public static boolean IS_PROPERTIES_DISABLED
-
PROXY_ENABLED
public static final String PROXY_ENABLED
- See Also:
- Constant Field Values
-
PROXY_HOST
public static final String PROXY_HOST
- See Also:
- Constant Field Values
-
PROXY_PORT
public static final String PROXY_PORT
- See Also:
- Constant Field Values
-
PROXY_USER
public static final String PROXY_USER
- See Also:
- Constant Field Values
-
PROXY_PASS
public static final String PROXY_PASS
- See Also:
- Constant Field Values
-
PROXY_PROTOCOL
public static final String PROXY_PROTOCOL
- See Also:
- Constant Field Values
-
BEFORE_SUITE_PREFIX
public static String BEFORE_SUITE_PREFIX
-
AFTER_SUITE_PREFIX
public static String AFTER_SUITE_PREFIX
-
BEFORE_CLASS_PREFIX
public static String BEFORE_CLASS_PREFIX
-
AFTER_CLASS_PREFIX
public static String AFTER_CLASS_PREFIX
-
BEFORE_METHOD_PREFIX
public static String BEFORE_METHOD_PREFIX
-
BEFORE_TEST_FILE_PREFIX
public static String BEFORE_TEST_FILE_PREFIX
-
AFTER_TEST_FILE_PREFIX
public static String AFTER_TEST_FILE_PREFIX
-
PARENT_PREFIX
public static String PARENT_PREFIX
-
DATAPROVIDER_TEST_SUFFIX
public static String DATAPROVIDER_TEST_SUFFIX
-
DEFAULT_TEST
public static final String DEFAULT_TEST
- See Also:
- Constant Field Values
-
DEFAULT_TEST_THREAD_PREFIX
public static final String DEFAULT_TEST_THREAD_PREFIX
- See Also:
- Constant Field Values
-
RANDOM_STRING
public static final String RANDOM_STRING
- See Also:
- Constant Field Values
-
START_TIME_STRING
public static final String START_TIME_STRING
- See Also:
- Constant Field Values
-
UUID_STATIC_STRING
public static final String UUID_STATIC_STRING
- See Also:
- Constant Field Values
-
DEFAULT_APP
public static final String DEFAULT_APP
- See Also:
- Constant Field Values
-
SUITE_NAME
public static String SUITE_NAME
-
APP_IDENTIFIER
public static String APP_IDENTIFIER
-
TEST_APP_API
public static final String TEST_APP_API
- See Also:
- Constant Field Values
-
webDriverList
public List<org.openqa.selenium.WebDriver> webDriverList
-
app
public String app
-
type
public TestObject.testType type
-
testId
public String testId
-
testName
public String testName
-
className
public String className
-
deviceName
public String deviceName
-
testFileClassName
public String testFileClassName
-
currentDriver
public DriverObject currentDriver
-
isFirstRun
public Boolean isFirstRun
-
isForcedRestart
public Boolean isForcedRestart
-
login
public LoginObject login
-
runCount
public int runCount
-
isTestPass
public Boolean isTestPass
-
isTestFail
public Boolean isTestFail
-
isTestComplete
public Boolean isTestComplete
-
log
public org.apache.logging.log4j.Logger log
-
currentTestIndex
public int currentTestIndex
-
testCountInCsvFile
public int testCountInCsvFile
-
testCsvFileName
public String testCsvFileName
-
serviceObject
public ServiceObject serviceObject
-
activeServiceObject
public ServiceObject activeServiceObject
-
description
public org.junit.runner.Description description
-
caughtThrowable
public Throwable caughtThrowable
-
failedTests
public ArrayList<org.testng.ITestResult> failedTests
-
testFeature
public com.aventstack.extentreports.ExtentTest testFeature
-
testScenerio
public com.aventstack.extentreports.ExtentTest testScenerio
-
testSteps
public List<com.aventstack.extentreports.ExtentTest> testSteps
-
screenRecorder
public org.monte.screenrecorder.ScreenRecorder screenRecorder
-
isScreenRecorderInitiated
public boolean isScreenRecorderInitiated
-
apiMap
public Map<String,ServiceObject> apiMap
-
testObjects
public List<TestObject> testObjects
-
currentTestName
public static ThreadLocal<String> currentTestName
-
currentTestId
public static ThreadLocal<String> currentTestId
-
language
public String language
-
softAssert
public org.testng.asserts.SoftAssert softAssert
-
testInfo
public static Map<String,TestObject> testInfo
-
-
Method Detail
-
withWebDriver
public TestObject withWebDriver(org.openqa.selenium.WebDriver webdriver)
-
initializeTest
public static void initializeTest(String testId)
once per test, initialize test object maps driver with the test associates current driver with test
-
initializeTest
public static void initializeTest(DriverObject driver, String testId)
once per test, initialize test object maps driver with the test associates current driver with test
-
inheritParent
public static TestObject inheritParent(DriverObject driver, String testId)
Inheritance structure for test object before suite -> before class -> test method before suite -> before class -> after class before suite -> after suite Service test hierarchy: before suite -> before class -> csv file name object -> csv tests before suite -> before class -> after class before suite -> after suite note: before method inheritance not supported- Returns:
-
getTestObjectInheritence
public static TestObject getTestObjectInheritence(DriverObject driver, String testId)
Inheritance structure for test object before suite -> before class -> test method before suite -> before class -> after class before suite -> after suite- Returns:
-
isFirstRun
public static boolean isFirstRun()
returns true if webdriver has not started else returns true if isFirstRun is set to true- Returns:
-
getTestInfo
public static TestObject getTestInfo()
testInfo is a static list containing hashmap of test objects with test name as key if testObject is empty for testId, Then default test is initialized And used- Returns:
-
getGlobalTestInfo
public static TestObject getGlobalTestInfo()
gets default test object if not exist, create default test object- Returns:
-
getParentTestInfo
public static TestObject getParentTestInfo(ServiceObject serviceObject)
get parent test object parent id is unique for each csv test file in service tests user for inheritance of config and log files- Parameters:
serviceObject-- Returns:
-
setupDefaultDriver
public static void setupDefaultDriver()
-
updateAppName
public static void updateAppName(DriverObject driver)
updates default test app name to driver app name default test object tracks the test run app name used for report name- Parameters:
driver-
-
getTestState
public static TestObject.testState getTestState(String testName)
get the state of the test object can be suite, testClass, testMethod- Parameters:
testName-- Returns:
-
setTestName
public static void setTestName(String testName)
-
setTestId
public static void setTestId(String testId)
-
getTestId
public static String getTestId()
-
isTestObjectSet
public static boolean isTestObjectSet(String testId)
return true if testId is registered- Parameters:
testId-- Returns:
-
isTestObjectSet
public static boolean isTestObjectSet()
-
hasTestStarted
public static boolean hasTestStarted()
TODO: Remove is test runner returns true if test is running, not before class, or after class based on testid: classname - testname- Returns:
-
setLogging
public static void setLogging()
-
getTestInfo
public static TestObject getTestInfo(String testId)
-
isBeforeTest
public static boolean isBeforeTest(String testId)
-
isValidTestId
public static boolean isValidTestId(String testId)
-
getTestInvocationCount
public static int getTestInvocationCount(String testname)
returns the invocation count for the data provider test format class-testname-test1- Parameters:
testname-- Returns:
-
getApiDef
public static ServiceObject getApiDef(String key)
gets api object from api keywords each keyword is associated with a api call use api keywords csv files for definitions- Parameters:
key-- Returns:
-
withIsFirstRun
public TestObject withIsFirstRun(Boolean isFirstRun)
-
withIsForcedRestart
public TestObject withIsForcedRestart(Boolean isForcedRestart)
-
withCurrentDriver
public TestObject withCurrentDriver(DriverObject currentDriver)
-
withTestId
public TestObject withTestId(String testId)
-
withTestName
public TestObject withTestName(String testName)
-
withClassName
public TestObject withClassName(String className)
-
withIsTestComplete
public TestObject withIsTestComplete(boolean isTestComplete)
-
withTestFileClassName
public TestObject withTestFileClassName(String testFileClassName)
-
withWebDriverList
public TestObject withWebDriverList(List<org.openqa.selenium.WebDriver> webDriverList)
-
getTestName
public String getTestName()
* testname is grabbed from test id test id is in format of "class - testname" if is before class And no testname exists, empty string is returned- Returns:
-
getClassName
public String getClassName()
-
withRunCount
public TestObject withRunCount(int rerunCount)
-
withLog
public TestObject withLog(org.apache.logging.log4j.Logger log)
-
incremenetRunCount
public TestObject incremenetRunCount()
-
withIsTestPass
public TestObject withIsTestPass(Boolean isTestPass)
-
withDescription
public TestObject withDescription(org.junit.runner.Description description)
-
withCaughtThrowable
public TestObject withCaughtThrowable(Throwable caughtThrowable)
-
withFailTrace
public TestObject withFailTrace(ArrayList<String> failTrace)
-
withTestScenario
public TestObject withTestScenario(com.aventstack.extentreports.ExtentTest testScenerio)
-
withApp
public TestObject withApp(String app)
-
getDefaultTestObjectId
public static String getDefaultTestObjectId()
-
-