diff --git a/examples/tests/bstackdemo/auth.js b/examples/tests/bstackdemo/auth.js new file mode 100644 index 0000000000..e19756920a --- /dev/null +++ b/examples/tests/bstackdemo/auth.js @@ -0,0 +1,23 @@ +describe('Authentication Tests', function () { + beforeEach((browser) => browser.navigateTo('https://www.bstackdemo.com')); + + it('Login test', function () { + browser + .click('#signin') + .setValue('#username input', ['demouser', browser.Keys.ENTER]) + .setValue('#password input', ['testingisfun99', browser.Keys.ENTER]) + .click('#login-btn') + .assert.textEquals('.username', 'demouser', 'demouser had logged in successfuly.'); + }); + + it('Locked account test', function () { + browser + .click('#signin') + .setValue('#username input', ['locked_user', browser.Keys.ENTER]) + .setValue('#password input', ['testingisfun99', browser.Keys.ENTER]) + .click('#login-btn') + .assert.textContains('.api-error', 'Your account has been locked.'); + }); + + afterEach((browser) => browser.end()); +}); diff --git a/examples/tests/bstackdemo/checkout.js b/examples/tests/bstackdemo/checkout.js new file mode 100644 index 0000000000..33be280840 --- /dev/null +++ b/examples/tests/bstackdemo/checkout.js @@ -0,0 +1,33 @@ +describe('Checkout Test', function () { + before((browser) => browser.navigateTo('https://www.bstackdemo.com/')); + + it('checkout products on bstackdemo.com', function (browser) { + browser + .waitForElementVisible('body') + .assert.titleContains('StackDemo') + // Filter Google from the avaialble filters + .click('input[value=\'Google\'] + span') + .assert.selected('input[value=\'Google\']') + // Add different phones to cart + .click('[id="17"] .shelf-item__buy-btn') + .click('[id="18"] .shelf-item__buy-btn') + .assert.elementsCount('.float-cart__shelf-container .shelf-item', 2) + // Click checkout + .click('.buy-btn') + // Loging with given credentials + .setValue('#username input', ['demouser', browser.Keys.ENTER]) + .setValue('#password input', ['testingisfun99', browser.Keys.ENTER]) + .click('#login-btn') + // Fill shipping details + .setValue('#firstNameInput', 'John') + .setValue('#lastNameInput', 'Doe') + .setValue('#addressLine1Input', 'localhost') + .setValue('#provinceInput', 'local') + .setValue('#postCodeInput', '127001') + .click('#checkout-shipping-continue') + // Check order successfully placed + .assert.textEquals('#confirmation-message', 'Your Order has been successfully placed.'); + }); + + after((browser) => browser.end()); +});