Control Statements


This is a companion discussion topic for the original entry at https://docs.katalon.com/katalon-studio/docs/control-statements.html

import static com.kms.katalon.core.checkpoint.CheckpointFactory.findCheckpoint
import static com.kms.katalon.core.testcase.TestCaseFactory.findTestCase
import static com.kms.katalon.core.testdata.TestDataFactory.findTestData
import static com.kms.katalon.core.testobject.ObjectRepository.findTestObject
import com.kms.katalon.core.checkpoint.Checkpoint as Checkpoint
import com.kms.katalon.core.cucumber.keyword.CucumberBuiltinKeywords as CucumberKW
import com.kms.katalon.core.mobile.keyword.MobileBuiltInKeywords as Mobile
import com.kms.katalon.core.model.FailureHandling as FailureHandling
import com.kms.katalon.core.testcase.TestCase as TestCase
import com.kms.katalon.core.testdata.TestData as TestData
import com.kms.katalon.core.testobject.TestObject as TestObject
import com.kms.katalon.core.webservice.keyword.WSBuiltInKeywords as WS
import com.kms.katalon.core.webui.keyword.WebUiBuiltInKeywords as WebUI
import com.kms.katalon.core.logging.KeywordLogger as KeywordLogger
import internal.GlobalVariable as GlobalVariable
import org.openqa.selenium.Keys as Keys
import com.kms.katalon.core.configuration.RunConfiguration as RunConfiguration

//Iteration for excel sheet
for (int rownum = 1; rownum <= findTestData(‘LLogin_Data’).getRowNumbers(); rownum++) {
//open browser
WebUI.openBrowser(‘http:/*********/admin’)

// Maximaize the window
WebUI.maximizeWindow()

// Read data from Excel Sheet
WebUI.setText(findTestObject('dashboard_OR/input_Email_email'), findTestData('LLogin_Data').getValue(1, rownum))

WebUI.setText(findTestObject('dashboard_OR/input_Password_password'), findTestData('LLogin_Data').getValue(2, rownum))

WebUI.click(findTestObject('dashboard_OR/input_Forgot Password_LOG IN'))

//title = WebUI.getWindowTitle()
if (WebUI.verifyElementText(findTestObject('Page_OryxHub/h2_Dashboard'), 'DASHBOARD').TRUE) {
    title = WebUI.getWindowTitle()
} else if (WebUI.verifyElementText(findTestObject('Page_OryxHub/h2_Dashboard'), 'DASHBOARD').FALSE)  {
    WebUI.takeScreenshot('C:\\Users\\******\\Documents\\Screenshots')
}

//Close Browser
WebUI.closeBrowser()

}

Not able to take screenshot, not able to move into else code…

Hi Kanta.s

try this way may work
// Maximaize the window
WebUI.maximizeWindow()

// Read data from Excel Sheet
WebUI.setText(findTestObject(‘dashboard_OR/input_Email_email’), findTestData(‘LLogin_Data’).getValue(1, rownum))

WebUI.setText(findTestObject(‘dashboard_OR/input_Password_password’), findTestData(‘LLogin_Data’).getValue(2, rownum))

WebUI.click(findTestObject(‘dashboard_OR/input_Forgot Password_LOG IN’))

//title = WebUI.getWindowTitle()
String dashboardText = WebUI.getText(findTestObject(‘Page_OryxHub/h2_Dashboard’))

if (dashboardText.equalsIgnoreCase(“DASHBOARD”)) {
title = WebUI.getWindowTitle()
} else {
WebUI.takeScreenshot(‘C:\Users\******\Documents\Screenshots’)
}

//Close Browser
WebUI.closeBrowser()

// Maximaize the window
WebUI.maximizeWindow()

// Read data from Excel Sheet
WebUI.setText(findTestObject(‘dashboard_OR/input_Email_email’), findTestData(‘LLogin_Data’).getValue(1, rownum))

WebUI.setText(findTestObject(‘dashboard_OR/input_Password_password’), findTestData(‘LLogin_Data’).getValue(2, rownum))

WebUI.click(findTestObject(‘dashboard_OR/input_Forgot Password_LOG IN’))

//title = WebUI.getWindowTitle()
String dashboardText = WebUI.getText(findTestObject(‘Page_OryxHub/h2_Dashboard’))

if (dashboardText.equalsIgnoreCase(“DASHBOARD”)) {
title = WebUI.getWindowTitle()
} else {
WebUI.takeScreenshot(‘C:\Users\******\Documents\Screenshots’)
}

//Close Browser
WebUI.closeBrowser()