Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

@dscribers/surf-me

Package Overview
Dependencies
Maintainers
1
Versions
41
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@dscribers/surf-me

TestSoothe JS SDK

  • 3.5.0
  • latest
  • Source
  • npm
  • Socket score

Version published
Maintainers
1
Created
Source

Surf Me

The in-browser page runner.

Usage

  1. Include the script on every page that needs to be tested.
<script href="https://cdn.jsdelivr.net/npm/@dscribers/surf-me@latest/dist/surf-me.min.js"></script>
<script>
  SurfMe(
    'https://example.com', // Allowed origin to communicate with web page. * means all/any origin.
    {
      // Configuration to be sent to the origin
    }
  )
</script>
  1. Follow the instructions of the parent/origin app.

How it works

How it works

  1. A main project creates a page with an iframe
  2. A sub-project creates a page or pages with the above script
  3. The main project loads the sub-project in the iframe
  4. The main project sends commands to the iframe
  5. SurfMe receives the commands and executes them on the iframe

Commands

The following commands are available for execution on the iframe page:

MethodParamsDescription
checkAttrContains(string) selector, (string) attribute, (string) textCalled to check if an element's attributes contains the given text
checkAttrIs(string) selector, (string) attribute, (string) textCalled to check if an element's attribute is the same as the given text
checkExists(string) selectorCalled to check if an element exists on the page
checkIsOn(string) urlCalled to check if the page is on the given url
checkElementIs(string) selector, (string) displayCalled to check if an element is either visible or hidden
checkPageContains(string) selector, (string) textCalled to check if the page contains the given text and the text is visible
checkTextContains(string) selector, (string) textCalled to check if the element's text contains the given text
checkTextIs(string) selector, (string) textCalled to check if element's text is matches the given text
checkValueContains(string) selector, (string) textCalled to check if the element's value contains the given text
checkValueIs(string) selector, (string) textCalled to check if the element's value matches the given text
doClick(string) selectorCalled to click on an element
doGoto(string) urlCalled to go to a url
doRefresh-Called to refresh the page
doSelect(string) selector, (string) valueCalled to select the given value in the given dropdown/select element.
doSet(string) selector, (string) valueCalled to set the given value into the element.
doSubmitForm(string) selectorCalled to submit the form with the given selector
doType(string) selector, (string) str, (integer) speedCalled to type the given string in the given element at the given speed.

Example

  // page on https://example.com
  const action = 'doType';
  const params = ['#some-element-selector', 300]
  const iframeDomain = 'https://iframe-domain.com'

  iframe.contentWindow.postMessage({ action, params }, iframeDomain)

  // page on https://iframe-domain.com
  <script href="https://cdn.jsdelivr.net/npm/@dscribers/surf-me@latest/dist/surf-me.min.js"></script>
  <script>
    SurfMe('https://example.com')
  </script>

FAQs

Package last updated on 21 Jul 2022

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc