tuiv
end-to-end browser testing based on playwright
tuiv enables you to write tests like this:
describe('checkout', () => {
it('should sucessfully checkout', async ({ page }) => {
await page.goto('/')
await page.get('.some .selector')
.click()
.type('typing some text')
.should.not.have.class('empty')
await page.get('.non-existing').should.not.exist()
})
})
tuiv aims to:
- provide a chaining command and assertion syntax based on native async/await
- use modern browser automation for all browsers via playwright
- auto-retry everything
- be a fixture based test runner
tuiv achieves this with proxies. Lots and lots of proxies.