0.2.7 • Published 8 years ago

web-test v0.2.7

Weekly downloads
2
License
ISC
Repository
github
Last release
8 years ago

webtest

Build Status Join the chat at https://gitter.im/allenhwkim/webtest

Run Web Page Test In Plain English

Principle

  1. Web browser test in plain English

    Not Javascript nor other language

  2. Test visible sections.

    Not variable, attributes, nor properties

Goal

The web browser test script should be like this;

open browser '/login'
enter text 'John' into 'username'
submit
close browser

Instead of;

var webdriver = require('selenium-webdriver'),
    until = webdriver.until;

var driver = new webdriver.Builder().forBrowser('chrome').build();

driver.get('/login');
driver.findElement({css:'input[placeholder="username"'})
  .then(function(element) {
    element.sendKeys('John');
  })
});

... even more javascript here ...

driver.quit();

Features

  • Run web browser test in plain English from command line or a file
  • Built-in chromedriver, firefox driver, and reporter
  • No need to run a selenium-server standalone jar file
  • Ability to control execution speed
  • No protractor, just test web page
  • Angular1-friendly, Angular2-friendly, Or, any framework friendly

Install

  • npm install webtest

Usage

  1. Run webtest in command line

    webtest (master)$ node index.js webTestDriver is initialized as { browser: { name: 'chrome' }, timeout: 10000 } ? > open browser chrome OK ? > go to https://www.google.com OK

  2. Or, write tests in plain English. e.g., my-test-scenario.txt

     My Google
       Test Case 1
         open browser chrome
         go to http://google.com
         enter 'Allen Kim' into 'Search'
         submit
         see 'allenhwkim'

    Then, and run the test file

    $ webtest my-test.txt

Core Commands

  • click link <link-text>
  • click <selector>
  • close browser
  • enter text <string> into <selector>
  • go to <url>
  • open browser <browser-name>
  • see "<text>"
  • set window position <left> <top>
  • set window size <width> <height>
  • submit
  • verify element <selector> is disabled
  • verify element <selector> is enabled
  • verify element <selector> is not selected
  • verify element <selector> is not visible
  • verify element <selector> is selected
  • verify element <selector> <style-name> is "<style-value>"
  • verify element <selector> text matches "<string>"
  • verify element <selector> text is "<string>"
  • verify element <selector> is visible
  • verify title matches "<title>"
  • verify title is "<title>"
  • verify url matches <string>
  • wait for page load

  • save value of expression <js-expression> to <variable>

  • save value of element <selector> to <variable>
  • print variable <variable>
  • verify expression <js-expression>

NOTE:

  • If webtest is run on TRAVIS CI environment, the browser is always firefox although user specify the browser in open browser command

Developer Note

$ npm install -g # to install this to run on local environment e.g., $ webtest
0.2.7

8 years ago

0.2.6

8 years ago

0.2.5

8 years ago

0.2.3

8 years ago

0.2.4

8 years ago

0.2.2

8 years ago

0.2.1

8 years ago

0.1.4

8 years ago

0.1.3

8 years ago

0.1.2

8 years ago

0.1.1

8 years ago

0.1.0

8 years ago