0.0.13 • Published 9 years ago

nightwatch-salesforce-wrapper v0.0.13

Weekly downloads
10
License
MIT
Repository
github
Last release
9 years ago

nightwatch-salesforce-wrapper

Small library to make e2e tests for salesforce using Nightwatch

Requirements

Instalation

npm i nightwatch-salesforce-wrapper

Usage

Initialization

var SFW =  require('nightwatch-salesforce-wrapper');
var SFWx = new SFW();

SFWx.setBrowser(browser); //where browser is the nightwatch's browser object
SFWx.setDefaultTimeout(4000); // timeout in milliseconds.

Set values

Text

SFWx.text("some text field").set("value1");

where "eco" is the name of the field and "abc" is the value you want to set.

Name

SFWx.name("some name field").set("value1");

Picklist

SFWx.picklist("some picklist field").set("value1");

multipicklist

SFWx.multipicklist("some multipicklist field").set("value1, value2");

Checkbox

SFWx.checkbox("some checkbox field").set(true);

Get values

Text

SFWx.text("some text field").get(function(res){
  console.log("some text field value -> " + res);
});

Name

SFWx.name("some field name").get(function(res){
  console.log("some field name value -> " + res);
});

picklist

SFWx.picklist("some picklist field").get(function(res){
  //this will give you the current selected value on the picklist.
  console.log("some picklist field -> " + res);
});

Click

This function is used to make a physical click in any component (field, button, link) within a salesforce page.

Click on a link

SFWx.link('some link name').click();

Click on a button

SFWx.button('some button name').click();

Click on a checkbox

SFWx.checkbox('some checkbox name').click();

Click on an input

SFWx.input('some input field name').click();

Special functions

setBrowser(browser)

Sets the browser variable that nightwatch's is using, see nightwatch's documentation http://nightwatchjs.org/guide.

setBrowser(browser);

useID(element id)

Forces SFW to use and specific HTML ID instead of the field's label or element's label.

useID("element's ID");

example:

SFWx.useID('element id').click();

useValue()

Forces SFW to use an element's value property instead for the element's label or id.

SFWx.useValue().input("new").click();

linkInside

Selects the first link inside a div.

SFWx.useID().linkInside('div id').click();

Methods Invocation

All methods in the library are chainable, so you can do:

App.funcA().funcB()...funcN();

Instead of:

App.funcA();
App.funcB();
.
.
App.funcN();

Nightwatch + SFW small example

This small example shows how to create a new record on a custom object.

var SFW =  require('salesforce_wrapper');
var SFWx = new SFW();

SFWx.setBrowser(browser); //where browser is the nightwatch's browser object
SFWx.setDefaultTimeout(4000); // timeout in milliseconds.

SFWx.link("some link").click() ;

browser.pause(2000); //nightwathc's browser variable

SFWx.text("some text field label1").set("value 1")
    .text("some text field label2").set("value 2")
    .picklist("some pikclist field label1").set("value 1")
    .multipicklist("some multipicklist field label1").set("value 1, value2")
    .button("save").click();

browser.pause(2000);

TODO

  • Inline form edit
  • Lightning components
  • Custom assertions
0.0.13

9 years ago

0.0.12

10 years ago

0.0.11

10 years ago

0.0.10

10 years ago

0.0.9

10 years ago

0.0.8

10 years ago

0.0.7

10 years ago

0.0.6

10 years ago

0.0.5

10 years ago

0.0.4

10 years ago

0.0.3

10 years ago

0.0.2

10 years ago

0.0.1

10 years ago