What is Apex?

Apex is a programming language for salesforce (only)

    • Object Oriented Program, in which the data types have to defined.
    • Allows developers for flow execution in force.com platforms.
    • Enables developers to add business logic to most system events including button clicks, related record updates and visualforce pages.

Datatypes in Apex

  • Primitives

Apex primitives include the following datatypes.

  1. Integer
  2. Boolean
  3. Decimal
  4. Double
  5. Date
  6. Date Time
  7. Time
  8. String
  9. Long
  10. ID- Any valid salesforce.com Id.
  • sObjects
    • Any  object that can be stored in force.com platform database.
    • sObject variable unlike primitive variable refers to row of data in salesforce. That is a complete record as a variable.

What is Salesforce

Salesforce.com is an American cloud computing company.
Salesforce offers Software as a Service (SaaS) platform which helps in Customer Relationship Management.
It has a multi-tenant architecture and subscriptions.

 The following are the application clouds in Salesforce CRM.
1. Sales Cloud
2. Service Cloud
3. Marketing Cloud
4. Data cloud
5. App Cloud
6. Analytics Cloud
7. Community Cloud
Salesforce also offers Platform as a Service (PaaS) using Force.com sites.
People involved in Salesforce Implementation
1. End User ( Customer)
2. Administrator
3. Developer
4. Consultant
The following are the list of Salesforce Certifications.
1. Certified Administrator
2. Certified Advanced Administrator
3. Certified Sales Cloud Consultant
4. Certified Service Cloud Consultant
5. Certified Force.com Platform App Builder
6. Certified Force.com Platform Developer I
7. Certified Force.com Platform Developer II
8. Certified Technical Architect

Quick summary of QTP

QTP Quick summary:

Automation Frameworks

  1. Record and Playback.(Records application flow using QTP and playback)
  2. Data driven. (Data controls the automation flow through a spreadsheet/datatable)
  3. Keyword driven. (Functions are mapped to Keywords)
  4. Hybrid approach (Combination of Keyword and data driven)
  5. Business process testing(BPT)
  6. Functional Decomposition

Types of QTP Licenses

  1. Seat
  2. Concurrent

How to record/playback

  1. Open QTP/UFT
  2. Click on File > New Test
  3. Click on the ‘Record’ button
  4. Perform actions on the application under test
  5. Click ‘Stop’ at the end of Recording session

Types of QTP/UFT Add-ins

  1. Activex Controls
  2. Web
  3. Visual Basic
  4. Java Add-in 8.2
  5. Terminal Emulator for mainframe
  6. .NET
  7. Oracle
  8. SAP Solutions
  9. PeopleSoft
  10. Siebel
  11. Web Services
  12. Etc

What is Record and Run Settings

  1. Record and Run Settings window will be triggered right after the recording started for a new Test or an existing test.
  2. user can see tabs based on the loaded Add-in
  3. user can provide Application under test input criteria (like url, application path etc)

What are the various Recording Modes

There are 3 recording modes available

  • Standard Recording: this is used for normal recording to capture user operations on the application.
  • Analog Recording: this will record the exact mouse and keyboard operations.
  • Low level Recording: this will record the mouse movements with respect to the coordinates on the AUT (application under test) Window.

What is Expert View

  • Shows the every user actions done on the  application in the form of codes.

Active Screen view

  • Every code generated after recording will show corresponding application screen on Active screen window. This will help tracking the code vs application objects.

Actions in QTP:

It’s the recorded set of codes which are logically meaningful to the application flow. E.g Customer creation flow.

Types of actions in QTP:

  • Non-reusable Action – action that can be called only in the test where it is stored, and can be used only once.
  • Reusable Action – action that can be called from any QTP/UFT test
  • External Action – reusable action stored with another QTP/UFT test. External actions are read-only.

Object Repository in QTP/UFT:

  • QTP stores the recorded object details in a specific location in the tool named the ‘Object Repository’
  • Browser – page – Objects are stored in a hierarchal manner.
  • Every object will have some listed set of methods as e.g button can perform Click using QTP codes.

How to sort array values in qtp

Dim yourArray

Dim firstIteration

Dim secondIteration

Dim tempValue

yourArray=array(191,101,144,122,117,111,126,199,145,150,177,1,20202)

msgbox lbound(yourArray)

msgbox ubound(yourArray)

For firstIteration=lbound(yourArray) to ubound(yourArray)

       For secondIteration=lbound(yourArray) to ubound(yourArray)-1

                   If oArray(secondIteration)>yourArray(secondIteration+1) Then

                       tmp=oArray(oCounter2)

                       yourArray(secondIteration)=yourArray(secondIteration+1)

                       yourArray(secondIteration+1)=tempValue

                   End If

                      

       Next

    

Next

For firstIteration=lbound(yourArray) to ubound(yourArray)

   print yourArray(firstIteration)

Next

 

How to find duplicate character in string

Dim objStr

Dim objArray

Dim objchar

objStr = Inputbox(“Enter a String having some duplicate characters in it – as e.g. aacanddoodd”)

objchar= Inputbox(“Input the character you want to find which is duplicated or not as e.g. a or d or o”)

objArray=split(objStr,objchar)

print ubound(objArray)

How to execute javascript in webdriver using javaScriptExecutor using executescript method

How to Execute Javascript in Webdriver using Javascriptexecutor using executescript method?

JavaScriptExecutor can be used to execute javascript in WebDriver. JavaScriptExecutor actions like the way Xpath, Link, CSS, Id locators works in Selenium Webdriver.

javaScriptExecutor is supported by Selenium library and for that you need to import ‘org.openqa.selenium.JavascriptExecutor ‘ in your program.

In Selenium, javaScriptExecutor works like an interface and facilitates Javascript execution in there.

JavaScriptExecutor has two methods.one of the method is as below,

1) executescript – This method will block the execution of next line of code unitl it is completed.

example:

JavascriptExecutor js = (JavascriptExecutor) driver;  

js.executeScript(Script,Arguments);

Example for executeScript

import org.openqa.selenium.JavascriptExecutor;    

import org.openqa.selenium.By;   

import org.openqa.selenium.WebDriver;   

import org.openqa.selenium.WebElement;   

import org.openqa.selenium.firefox.FirefoxDriver;   

import org.testng.annotations.Test;   

public class ExecuteScriptExample {   

@Test   

public void ExecuteScriptTest()

{   

    WebDriver driver= new FirefoxDriver();   

    JavascriptExecutor js = (JavascriptExecutor)driver;   

    driver.get(“your website url having login option”);   

    WebElement button =driver.findElement(By.name(“xxxxxxxx”));   

    driver.findElement(By.name(“uid”)).sendKeys(“admin”);   

    driver.findElement(By.name(“password”)).sendKeys(“admin”);   

    js.executeScript(“arguments[0].click();”, button);

    js.executeScript(“alert(‘Test is completed – welcome to home page’);”);   

}   

}

How to execute javascript in webdriver using javaScriptExecutor executeAsyncScript Method

How to Execute Javascript in Webdriver using Javascriptexecutor using executeAsyncScript method?

JavaScriptExecutor can be used to execute javascript in WebDriver. JavaScriptExecutor actions like the way Xpath, Link, CSS, Id locators works in Selenium Webdriver.

javaScriptExecutor is supported by Selenium library and for that you need to import ‘org.openqa.selenium.JavascriptExecutor ‘ in your program.

In Selenium, javaScriptExecutor works like an interface and facilitates Javascript execution in there.

JavaScriptExecutor has two methods and one of the method is as below,

1) executeAsyncScript – This method will not block the execution of next line of code. Page rendering is fast here.

example:

JavascriptExecutor js = (JavascriptExecutor) driver;  

js.executeAsyncScript(Script,Arguments);

Example for executeAsyncScript

import java.util.concurrent.TimeUnit;   

import org.openqa.selenium.WebDriver;

import org.openqa.selenium.JavascriptExecutor;   

import org.openqa.selenium.firefox.FirefoxDriver;   

import org.testng.annotations.Test;   

public class ExecuteAsyncScriptExample {   

@Test   

public void ExecuteAsyncScriptTest()    

{   

    WebDriver driver= new FirefoxDriver();   

    JavascriptExecutor js = (JavascriptExecutor)driver;   

    driver.get(“your website url”);   

    driver.manage().window().maximize();   

   driver.manage().timeouts().setScriptTimeout(30, TimeUnit.SECONDS);   

    long BeginTime = System.currentTimeMillis();   

    //executeAsyncScript() method is used to enable 10 seconds wait.

    js.executeAsyncScript(“window.setTimeout(arguments[arguments.length – 1], 10000);”);    

    long EndTime = System.currentTimeMillis();   

    System.out.println(“Passed time: ” + (EndTime – BeginTime));   

}   

}    

How to create a word document using VBscript in QTP?

How to create a word document using VBscript in QTP?

Dim oWordDocument

‘ To initaiate a Word Document object

Set oWordDocument = CreateObject(“Word.Application”)

oWordDocument.Documents.Add

‘ type words on documents

oWordDocument.Selection.TypeText “This is 1st line text on word file ” & vbnewline & “This is 2nd line text on word file”

oWordDocument.ActiveDocument.SaveAs “C:\SampleWordDoc.doc”

oWordDocument.Quit

Set oWordDocument=Nothing