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.

qtp integration with jenkins

qtp integration with jenkins

Create a “.vbs” file as below and save the file as “AOM.vbs” in C:\QTP\VBS folder.

 In Jenkins create Job, Select ‘Execute Windows Batch Command’ in Build Step. Enter below command.

 and then use that in Jenkins.

Note: To learn how to create a Jenkins job or how to start jenkins – please refer  create a Jenkins job and Run Jenkins locally

 Below code is the “AOM.vbs” which is called by Jenkins Job.

Call QTP()

Public function QTP()

‘Create Quick test pro(QTP/UFT) object

Set objQTP = CreateObject(“QuickTest.Application”)

objQTP.Launch

objQTP.Visible = True

‘to open QTP Test

objQTP.Open “Test file path “, True

Set objResults= CreateObject(“QuickTest.RunResultsOptions”)

objResults.ResultsLocation = “Result path of qtp”  ‘Set the results location

‘to run qtp script results

objQTP.Test.Run objResults

‘to close QTP

objQTP.Test.Close

objQTP.Quit

End function

Text file handling in QTP

Text file handling in QTP

Const ReadTXT = 1
Const WriteTXT = 2

Set objFSO = CreateObject(“Scripting.FileSystemObject”)

‘Suppose you have 100 TXT files needs to be read and updated – then load those files in input XLS file.
FilePath = Datatable(“FilePath”) & “.txt”

Set objFile = objFSO.OpenTextFile(FilePath, ReadTXT)

strText = objFile.ReadAll

objFile.Close

strNewText = Replace(strText, Datatable(“OldValue”), Datatable(“NewValue”))

Set objFile = objFSO.OpenTextFile(FilePath, WriteTXT)

objFile.WriteLine strNewText

objFile.Close

qtp script to close all open browsers

qtp script to close all open browsers ..

Call CloseAllBrowsers_ExcludingALM()

Function CloseAllBrowsers_ExcludingALM()
‘To ceclare Variables
Dim objDes, objList, objIndex

‘To Create Object Description for all opened browsers opened.
Set objDes=Description.Create
objDes.Add “micClass”,”Browser”

‘To get all the opened browsers objects from Desktop
Set ObjList=Desktop.ChildObjects(objDes)

‘Indexing always starts from “0”
For objIndex=0 to objList.count-1
‘To cverify the name of the browser is “HP Application Lifecycle Management”
If lcase(objList(objIndex).GetROproperty(“name”))<>”HP Application Lifecycle Management” then
‘Close the Browser
objList(objIndex).close
Exit For
End If
Next

[businessdirectory]