LeanFT with Java
Introduction Supported applications Installation of LeanFT and plugins for IDEs Installing browser Extensions LeanFT settings,Object identification Center Understanding LeanFT SDK API Installing the LeanFT jar files in Maven Repository Creating LeanFT Maven Project Creating LeanFT Project with Gradle and TestNG LeanFT Properties Setting up LeanFT project in IntelliJ IDEA Creating maven project with JUnit with LeanFT in Eclipse Creating maven project with TestNG in Eclipse Description programming Application model Using regular expression in property values First web application test Identifying the Web elements using XPATH and CSS Identifying objects using Visual Relational Identifiers – VRI Handling embedded browser control in Windows app Firing events on Web Elements using LeanFT Executing JavaScript in web page Automating standard windows application Automating Java Application Automating WPF applicationsAutomating SAP Application Synchronization in LeanFT Assertions in LeanFTLeanFT with Cucumber Keyword Driven frameworks Data Driven Frameworks Converting the UFT Object Repository to Application models in LeanFTChallenges of LeanFT automation Working with third party objects using Native Object properties and methods LeanFT common issues and solutionsLeanFT Java ReferencesVRI - visual relational identifier in leanft in Java
This is the advanced feature in UFT and LeanFT that allows you to identify the objects based upon the position of adjacent objects. For example in below image we can identify the edit box using text associated with it.
package leanft;
import com.hp.lft.report.Reporter;
import com.hp.lft.report.Status;
import com.hp.lft.sdk.HorizontalVisualRelation;
import com.hp.lft.sdk.VisualRelation;
import com.hp.lft.sdk.web.*;
import org.junit.Test;
public class VriTest extends BaseTest {
@Test
public void test() throws Exception{
Browser browser = BrowserFactory.launch(BrowserType.CHROME);
try{
//Navigate to https://www.softpost.org/selenium-test-page/
browser.navigate("https://www.softpost.org/selenium-test-page/");
browser.sync();
//set value in edit box
browser.describe(EditField.class,new EditFieldDescription.Builder()
.id("fn").build()).setValue("Sagar");
WebElement e2 = browser.describe(WebElement.class,new WebElementDescription.Builder()
.xpath("//td[text()='Last Name']").build());
browser.describe(EditField.class,new EditFieldDescription.Builder()
.vri(new VisualRelation().setTestObject(e2).
setHorizontalRelation(HorizontalVisualRelation.LEFT_AND_INLINE)).build())
.setValue("Salunke");
//click on Home link
browser.describe(Link.class, new LinkDescription.Builder()
.tagName("A").innerText("Home").build()).click();
//Wait until page loads
browser.sync();
}
catch(AssertionError ex){
//Report the Exception
Reporter.reportEvent("Exception","Test failed", Status.Failed, ex);
throw ex;
}
finally{
//Close the browser
browser.close();
}
}
}
Web development and Automation testing
solutions delivered!!