Skip to content

zzebastien/tinto

 
 

Repository files navigation

Tinto

Build Status Test Coverage Code Climate Dependency Status Inline docs

A functional testing framework for component-based web applications

Usage

Assertions syntax

Components

Property assertion
searchButton.should.have.text('Search');
Property assertion (alternate syntax)
searchButton.text.should.equal('Search');
State assertion
searchButton.should.be.enabled;
Count assertion
grid.should.have(3).rows;
Equality assertion
grid.rows(0).should.equal(firstRow);
Containing assertion
grid.should.contain(firstRow, secondRow);
Multiple assertions
searchButton.should.have.text('Search').and.be.enabled;
Multiple assertions (alternate syntax)
searchButton.should(
  have.text('Search'),
  be.enabled
);
Awaiting assertion
searchButton.should.eventually.have.text('Search').and.be.enabled;
Awaiting assertion (alternate syntax)
searchButton.should.eventually(
  have.text('Search'),
  be.enabled
);

Component definition

ES5
function Grid(locator) {
  Component.call(this, locator);
  
  this.getter('rows', function() {
    return this.find('tr');
  });
}

tinto.inherits(Grid, Component);
ES6
class Grid extends Component {
  get rows() {
    return this.find('tr');
  }
}
.extend
var Grid = Component.extend({
  get rows() {
    return this.find('tr');
  }
});

Command-line interface

In order to use the CLI, you must install tinto globally. You can then run tinto --help to list available commands.

Examples

See the example folder for a complete example.

License

MIT License

Credits

This project was inspired by the excellent Testatoo functional testing library for Java.

About

A functional testing library for component-based web applications

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 99.9%
  • Gherkin 0.1%