0.0.5 • Published 7 years ago

nightchai v0.0.5

Weekly downloads
1
License
ISC
Repository
github
Last release
7 years ago

NightChai

Description

  • 1.) It is base on End to End test tool "nightmare"
  • 2.) A try catch plugin to help you write custom try catch funcion or you can use default screenshot function
  • 3.) easy to read
  • 4.) less code
  • 5.) We use Ramda to build it

Installation

$ npm install nightchai

usage

runPipe()

  • It is to combine your test case(it)
| function                |         result                    |
| R.uncurryN(2,           |         R.pipe(                   |
| R.pipe(                 |         R.tap(login.gotoLogin),   |
| R.map(R.tap),           |         R.tap(login.typeId),      |
| R.apply(R.pipe)         |         R.tap(login.clickPassword)|
| ));                     |         );                        |
const { runPipe } = require('nightchai');
    const SC001 = runPipe([
      login.gotoLogin(url, port),
      login.typeId('admin'),
      login.clickPassword,
    ]);
    SC001(nightmare);

runTask(taskOptions)

  • It is to return it which can help you write less code of it. And each one is represented a test case(it)
  • options -> nightmare -> it
optionsargs
nameit(name)
actionnightmare.wait or nightmare.click
catchdefault nightmare.screenshot
catchThenself invoking function
const { runTask } = require('nightchai');
exports.typeId = (username) => runTask({
  name:'輸入帳號',
  action: (nightmare) => nightmare.type('input#idInput', username),
  catch:(done, e, nightmare) => {
    //over write the default catch
    nightmare
      .html(`${path}${taskOptions.name}.mhtml`, 'MHTML')  
      .screenshot(`${path}${taskOptions.name}.png`)
      .then(() => taskOptions.catchThen ? 
        Promise.reject(new CatchThenError(e)) :
        done(e)
      )
    done();
  },
  catchThen: (done, e, nightmare) => {
    nightmare
    .html('./reports/error.mhtml', 'MHTML')  
    .screenshot('./reports/error.png');
    done(e);
  }
});

setSnapshotPath(path)

  • It is to set your snapshot path
path
string
const { setSnapshotPath } = require('nightchai');
setSnapshotPath('./reports/');

License

MIT

0.0.5

7 years ago

0.0.4

7 years ago

0.0.3

7 years ago

0.0.2

7 years ago

0.0.1

7 years ago