commit bf923424f4c20b194bae58e57283b2dee262cd1d Author: Micheal Date: Wed Sep 4 18:22:46 2024 +0530 TestCases for login and register commited. diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..68c5d18 --- /dev/null +++ b/.gitignore @@ -0,0 +1,5 @@ +node_modules/ +/test-results/ +/playwright-report/ +/blob-report/ +/playwright/.cache/ diff --git a/package-lock.json b/package-lock.json new file mode 100644 index 0000000..bcac25f --- /dev/null +++ b/package-lock.json @@ -0,0 +1,91 @@ +{ + "name": "oba-automation", + "version": "1.0.0", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "name": "oba-automation", + "version": "1.0.0", + "license": "ISC", + "devDependencies": { + "@playwright/test": "^1.46.1", + "@types/node": "^22.5.2" + } + }, + "node_modules/@playwright/test": { + "version": "1.46.1", + "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.46.1.tgz", + "integrity": "sha512-Fq6SwLujA/DOIvNC2EL/SojJnkKf/rAwJ//APpJJHRyMi1PdKrY3Az+4XNQ51N4RTbItbIByQ0jgd1tayq1aeA==", + "dev": true, + "dependencies": { + "playwright": "1.46.1" + }, + "bin": { + "playwright": "cli.js" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@types/node": { + "version": "22.5.2", + "resolved": "https://registry.npmjs.org/@types/node/-/node-22.5.2.tgz", + "integrity": "sha512-acJsPTEqYqulZS/Yp/S3GgeE6GZ0qYODUR8aVr/DkhHQ8l9nd4j5x1/ZJy9/gHrRlFMqkO6i0I3E27Alu4jjPg==", + "dev": true, + "dependencies": { + "undici-types": "~6.19.2" + } + }, + "node_modules/fsevents": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", + "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", + "dev": true, + "hasInstallScript": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/playwright": { + "version": "1.46.1", + "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.46.1.tgz", + "integrity": "sha512-oPcr1yqoXLCkgKtD5eNUPLiN40rYEM39odNpIb6VE6S7/15gJmA1NzVv6zJYusV0e7tzvkU/utBFNa/Kpxmwng==", + "dev": true, + "dependencies": { + "playwright-core": "1.46.1" + }, + "bin": { + "playwright": "cli.js" + }, + "engines": { + "node": ">=18" + }, + "optionalDependencies": { + "fsevents": "2.3.2" + } + }, + "node_modules/playwright-core": { + "version": "1.46.1", + "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.46.1.tgz", + "integrity": "sha512-h9LqIQaAv+CYvWzsZ+h3RsrqCStkBHlgo6/TJlFst3cOTlLghBQlJwPOZKQJTKNaD3QIB7aAVQ+gfWbN3NXB7A==", + "dev": true, + "bin": { + "playwright-core": "cli.js" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/undici-types": { + "version": "6.19.8", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.19.8.tgz", + "integrity": "sha512-ve2KP6f/JnbPBFyobGHuerC9g1FYGn/F8n1LWTwNxCEzd6IfqTwUQcNXgEtmmQ6DlRrC1hrSrBnCZPokRrDHjw==", + "dev": true + } + } +} diff --git a/package.json b/package.json new file mode 100644 index 0000000..7e9ded8 --- /dev/null +++ b/package.json @@ -0,0 +1,14 @@ +{ + "name": "oba-automation", + "version": "1.0.0", + "description": "", + "main": "index.js", + "scripts": {}, + "keywords": [], + "author": "", + "license": "ISC", + "devDependencies": { + "@playwright/test": "^1.46.1", + "@types/node": "^22.5.2" + } +} diff --git a/playwright.config.js b/playwright.config.js new file mode 100644 index 0000000..4208666 --- /dev/null +++ b/playwright.config.js @@ -0,0 +1,79 @@ +// @ts-check +const { defineConfig, devices } = require('@playwright/test'); + +/** + * Read environment variables from file. + * https://github.com/motdotla/dotenv + */ +// require('dotenv').config({ path: path.resolve(__dirname, '.env') }); + +/** + * @see https://playwright.dev/docs/test-configuration + */ +module.exports = defineConfig({ + testDir: './tests', + /* Run tests in files in parallel */ + fullyParallel: true, + /* Fail the build on CI if you accidentally left test.only in the source code. */ + forbidOnly: !!process.env.CI, + /* Retry on CI only */ + retries: process.env.CI ? 2 : 0, + /* Opt out of parallel tests on CI. */ + workers: process.env.CI ? 1 : undefined, + /* Reporter to use. See https://playwright.dev/docs/test-reporters */ + reporter: 'html', + /* Shared settings for all the projects below. See https://playwright.dev/docs/api/class-testoptions. */ + use: { + /* Base URL to use in actions like `await page.goto('/')`. */ + // baseURL: 'http://127.0.0.1:3000', + + /* Collect trace when retrying the failed test. See https://playwright.dev/docs/trace-viewer */ + trace: 'on-first-retry', + }, + + /* Configure projects for major browsers */ + projects: [ + { + name: 'chromium', + use: { ...devices['Desktop Chrome'] }, + }, + + { + name: 'firefox', + use: { ...devices['Desktop Firefox'] }, + }, + + { + name: 'webkit', + use: { ...devices['Desktop Safari'] }, + }, + + /* Test against mobile viewports. */ + // { + // name: 'Mobile Chrome', + // use: { ...devices['Pixel 5'] }, + // }, + // { + // name: 'Mobile Safari', + // use: { ...devices['iPhone 12'] }, + // }, + + /* Test against branded browsers. */ + // { + // name: 'Microsoft Edge', + // use: { ...devices['Desktop Edge'], channel: 'msedge' }, + // }, + // { + // name: 'Google Chrome', + // use: { ...devices['Desktop Chrome'], channel: 'chrome' }, + // }, + ], + + /* Run your local dev server before starting the tests */ + // webServer: { + // command: 'npm run start', + // url: 'http://127.0.0.1:3000', + // reuseExistingServer: !process.env.CI, + // }, +}); + diff --git a/tests-examples/demo-todo-app.spec.js b/tests-examples/demo-todo-app.spec.js new file mode 100644 index 0000000..e2eb87c --- /dev/null +++ b/tests-examples/demo-todo-app.spec.js @@ -0,0 +1,449 @@ +// @ts-check +const { test, expect } = require('@playwright/test'); + +test.beforeEach(async ({ page }) => { + await page.goto('https://demo.playwright.dev/todomvc'); +}); + +const TODO_ITEMS = [ + 'buy some cheese', + 'feed the cat', + 'book a doctors appointment' +]; + +test.describe('New Todo', () => { + test('should allow me to add todo items', async ({ page }) => { + // create a new todo locator + const newTodo = page.getByPlaceholder('What needs to be done?'); + + // Create 1st todo. + await newTodo.fill(TODO_ITEMS[0]); + await newTodo.press('Enter'); + + // Make sure the list only has one todo item. + await expect(page.getByTestId('todo-title')).toHaveText([ + TODO_ITEMS[0] + ]); + + // Create 2nd todo. + await newTodo.fill(TODO_ITEMS[1]); + await newTodo.press('Enter'); + + // Make sure the list now has two todo items. + await expect(page.getByTestId('todo-title')).toHaveText([ + TODO_ITEMS[0], + TODO_ITEMS[1] + ]); + + await checkNumberOfTodosInLocalStorage(page, 2); + }); + + test('should clear text input field when an item is added', async ({ page }) => { + // create a new todo locator + const newTodo = page.getByPlaceholder('What needs to be done?'); + + // Create one todo item. + await newTodo.fill(TODO_ITEMS[0]); + await newTodo.press('Enter'); + + // Check that input is empty. + await expect(newTodo).toBeEmpty(); + await checkNumberOfTodosInLocalStorage(page, 1); + }); + + test('should append new items to the bottom of the list', async ({ page }) => { + // Create 3 items. + await createDefaultTodos(page); + + // create a todo count locator + const todoCount = page.getByTestId('todo-count') + + // Check test using different methods. + await expect(page.getByText('3 items left')).toBeVisible(); + await expect(todoCount).toHaveText('3 items left'); + await expect(todoCount).toContainText('3'); + await expect(todoCount).toHaveText(/3/); + + // Check all items in one call. + await expect(page.getByTestId('todo-title')).toHaveText(TODO_ITEMS); + await checkNumberOfTodosInLocalStorage(page, 3); + }); +}); + +test.describe('Mark all as completed', () => { + test.beforeEach(async ({ page }) => { + await createDefaultTodos(page); + await checkNumberOfTodosInLocalStorage(page, 3); + }); + + test.afterEach(async ({ page }) => { + await checkNumberOfTodosInLocalStorage(page, 3); + }); + + test('should allow me to mark all items as completed', async ({ page }) => { + // Complete all todos. + await page.getByLabel('Mark all as complete').check(); + + // Ensure all todos have 'completed' class. + await expect(page.getByTestId('todo-item')).toHaveClass(['completed', 'completed', 'completed']); + await checkNumberOfCompletedTodosInLocalStorage(page, 3); + }); + + test('should allow me to clear the complete state of all items', async ({ page }) => { + const toggleAll = page.getByLabel('Mark all as complete'); + // Check and then immediately uncheck. + await toggleAll.check(); + await toggleAll.uncheck(); + + // Should be no completed classes. + await expect(page.getByTestId('todo-item')).toHaveClass(['', '', '']); + }); + + test('complete all checkbox should update state when items are completed / cleared', async ({ page }) => { + const toggleAll = page.getByLabel('Mark all as complete'); + await toggleAll.check(); + await expect(toggleAll).toBeChecked(); + await checkNumberOfCompletedTodosInLocalStorage(page, 3); + + // Uncheck first todo. + const firstTodo = page.getByTestId('todo-item').nth(0); + await firstTodo.getByRole('checkbox').uncheck(); + + // Reuse toggleAll locator and make sure its not checked. + await expect(toggleAll).not.toBeChecked(); + + await firstTodo.getByRole('checkbox').check(); + await checkNumberOfCompletedTodosInLocalStorage(page, 3); + + // Assert the toggle all is checked again. + await expect(toggleAll).toBeChecked(); + }); +}); + +test.describe('Item', () => { + + test('should allow me to mark items as complete', async ({ page }) => { + // create a new todo locator + const newTodo = page.getByPlaceholder('What needs to be done?'); + + // Create two items. + for (const item of TODO_ITEMS.slice(0, 2)) { + await newTodo.fill(item); + await newTodo.press('Enter'); + } + + // Check first item. + const firstTodo = page.getByTestId('todo-item').nth(0); + await firstTodo.getByRole('checkbox').check(); + await expect(firstTodo).toHaveClass('completed'); + + // Check second item. + const secondTodo = page.getByTestId('todo-item').nth(1); + await expect(secondTodo).not.toHaveClass('completed'); + await secondTodo.getByRole('checkbox').check(); + + // Assert completed class. + await expect(firstTodo).toHaveClass('completed'); + await expect(secondTodo).toHaveClass('completed'); + }); + + test('should allow me to un-mark items as complete', async ({ page }) => { + // create a new todo locator + const newTodo = page.getByPlaceholder('What needs to be done?'); + + // Create two items. + for (const item of TODO_ITEMS.slice(0, 2)) { + await newTodo.fill(item); + await newTodo.press('Enter'); + } + + const firstTodo = page.getByTestId('todo-item').nth(0); + const secondTodo = page.getByTestId('todo-item').nth(1); + const firstTodoCheckbox = firstTodo.getByRole('checkbox'); + + await firstTodoCheckbox.check(); + await expect(firstTodo).toHaveClass('completed'); + await expect(secondTodo).not.toHaveClass('completed'); + await checkNumberOfCompletedTodosInLocalStorage(page, 1); + + await firstTodoCheckbox.uncheck(); + await expect(firstTodo).not.toHaveClass('completed'); + await expect(secondTodo).not.toHaveClass('completed'); + await checkNumberOfCompletedTodosInLocalStorage(page, 0); + }); + + test('should allow me to edit an item', async ({ page }) => { + await createDefaultTodos(page); + + const todoItems = page.getByTestId('todo-item'); + const secondTodo = todoItems.nth(1); + await secondTodo.dblclick(); + await expect(secondTodo.getByRole('textbox', { name: 'Edit' })).toHaveValue(TODO_ITEMS[1]); + await secondTodo.getByRole('textbox', { name: 'Edit' }).fill('buy some sausages'); + await secondTodo.getByRole('textbox', { name: 'Edit' }).press('Enter'); + + // Explicitly assert the new text value. + await expect(todoItems).toHaveText([ + TODO_ITEMS[0], + 'buy some sausages', + TODO_ITEMS[2] + ]); + await checkTodosInLocalStorage(page, 'buy some sausages'); + }); +}); + +test.describe('Editing', () => { + test.beforeEach(async ({ page }) => { + await createDefaultTodos(page); + await checkNumberOfTodosInLocalStorage(page, 3); + }); + + test('should hide other controls when editing', async ({ page }) => { + const todoItem = page.getByTestId('todo-item').nth(1); + await todoItem.dblclick(); + await expect(todoItem.getByRole('checkbox')).not.toBeVisible(); + await expect(todoItem.locator('label', { + hasText: TODO_ITEMS[1], + })).not.toBeVisible(); + await checkNumberOfTodosInLocalStorage(page, 3); + }); + + test('should save edits on blur', async ({ page }) => { + const todoItems = page.getByTestId('todo-item'); + await todoItems.nth(1).dblclick(); + await todoItems.nth(1).getByRole('textbox', { name: 'Edit' }).fill('buy some sausages'); + await todoItems.nth(1).getByRole('textbox', { name: 'Edit' }).dispatchEvent('blur'); + + await expect(todoItems).toHaveText([ + TODO_ITEMS[0], + 'buy some sausages', + TODO_ITEMS[2], + ]); + await checkTodosInLocalStorage(page, 'buy some sausages'); + }); + + test('should trim entered text', async ({ page }) => { + const todoItems = page.getByTestId('todo-item'); + await todoItems.nth(1).dblclick(); + await todoItems.nth(1).getByRole('textbox', { name: 'Edit' }).fill(' buy some sausages '); + await todoItems.nth(1).getByRole('textbox', { name: 'Edit' }).press('Enter'); + + await expect(todoItems).toHaveText([ + TODO_ITEMS[0], + 'buy some sausages', + TODO_ITEMS[2], + ]); + await checkTodosInLocalStorage(page, 'buy some sausages'); + }); + + test('should remove the item if an empty text string was entered', async ({ page }) => { + const todoItems = page.getByTestId('todo-item'); + await todoItems.nth(1).dblclick(); + await todoItems.nth(1).getByRole('textbox', { name: 'Edit' }).fill(''); + await todoItems.nth(1).getByRole('textbox', { name: 'Edit' }).press('Enter'); + + await expect(todoItems).toHaveText([ + TODO_ITEMS[0], + TODO_ITEMS[2], + ]); + }); + + test('should cancel edits on escape', async ({ page }) => { + const todoItems = page.getByTestId('todo-item'); + await todoItems.nth(1).dblclick(); + await todoItems.nth(1).getByRole('textbox', { name: 'Edit' }).fill('buy some sausages'); + await todoItems.nth(1).getByRole('textbox', { name: 'Edit' }).press('Escape'); + await expect(todoItems).toHaveText(TODO_ITEMS); + }); +}); + +test.describe('Counter', () => { + test('should display the current number of todo items', async ({ page }) => { + // create a new todo locator + const newTodo = page.getByPlaceholder('What needs to be done?'); + + // create a todo count locator + const todoCount = page.getByTestId('todo-count') + + await newTodo.fill(TODO_ITEMS[0]); + await newTodo.press('Enter'); + await expect(todoCount).toContainText('1'); + + await newTodo.fill(TODO_ITEMS[1]); + await newTodo.press('Enter'); + await expect(todoCount).toContainText('2'); + + await checkNumberOfTodosInLocalStorage(page, 2); + }); +}); + +test.describe('Clear completed button', () => { + test.beforeEach(async ({ page }) => { + await createDefaultTodos(page); + }); + + test('should display the correct text', async ({ page }) => { + await page.locator('.todo-list li .toggle').first().check(); + await expect(page.getByRole('button', { name: 'Clear completed' })).toBeVisible(); + }); + + test('should remove completed items when clicked', async ({ page }) => { + const todoItems = page.getByTestId('todo-item'); + await todoItems.nth(1).getByRole('checkbox').check(); + await page.getByRole('button', { name: 'Clear completed' }).click(); + await expect(todoItems).toHaveCount(2); + await expect(todoItems).toHaveText([TODO_ITEMS[0], TODO_ITEMS[2]]); + }); + + test('should be hidden when there are no items that are completed', async ({ page }) => { + await page.locator('.todo-list li .toggle').first().check(); + await page.getByRole('button', { name: 'Clear completed' }).click(); + await expect(page.getByRole('button', { name: 'Clear completed' })).toBeHidden(); + }); +}); + +test.describe('Persistence', () => { + test('should persist its data', async ({ page }) => { + // create a new todo locator + const newTodo = page.getByPlaceholder('What needs to be done?'); + + for (const item of TODO_ITEMS.slice(0, 2)) { + await newTodo.fill(item); + await newTodo.press('Enter'); + } + + const todoItems = page.getByTestId('todo-item'); + const firstTodoCheck = todoItems.nth(0).getByRole('checkbox'); + await firstTodoCheck.check(); + await expect(todoItems).toHaveText([TODO_ITEMS[0], TODO_ITEMS[1]]); + await expect(firstTodoCheck).toBeChecked(); + await expect(todoItems).toHaveClass(['completed', '']); + + // Ensure there is 1 completed item. + await checkNumberOfCompletedTodosInLocalStorage(page, 1); + + // Now reload. + await page.reload(); + await expect(todoItems).toHaveText([TODO_ITEMS[0], TODO_ITEMS[1]]); + await expect(firstTodoCheck).toBeChecked(); + await expect(todoItems).toHaveClass(['completed', '']); + }); +}); + +test.describe('Routing', () => { + test.beforeEach(async ({ page }) => { + await createDefaultTodos(page); + // make sure the app had a chance to save updated todos in storage + // before navigating to a new view, otherwise the items can get lost :( + // in some frameworks like Durandal + await checkTodosInLocalStorage(page, TODO_ITEMS[0]); + }); + + test('should allow me to display active items', async ({ page }) => { + const todoItem = page.getByTestId('todo-item'); + await page.getByTestId('todo-item').nth(1).getByRole('checkbox').check(); + + await checkNumberOfCompletedTodosInLocalStorage(page, 1); + await page.getByRole('link', { name: 'Active' }).click(); + await expect(todoItem).toHaveCount(2); + await expect(todoItem).toHaveText([TODO_ITEMS[0], TODO_ITEMS[2]]); + }); + + test('should respect the back button', async ({ page }) => { + const todoItem = page.getByTestId('todo-item'); + await page.getByTestId('todo-item').nth(1).getByRole('checkbox').check(); + + await checkNumberOfCompletedTodosInLocalStorage(page, 1); + + await test.step('Showing all items', async () => { + await page.getByRole('link', { name: 'All' }).click(); + await expect(todoItem).toHaveCount(3); + }); + + await test.step('Showing active items', async () => { + await page.getByRole('link', { name: 'Active' }).click(); + }); + + await test.step('Showing completed items', async () => { + await page.getByRole('link', { name: 'Completed' }).click(); + }); + + await expect(todoItem).toHaveCount(1); + await page.goBack(); + await expect(todoItem).toHaveCount(2); + await page.goBack(); + await expect(todoItem).toHaveCount(3); + }); + + test('should allow me to display completed items', async ({ page }) => { + await page.getByTestId('todo-item').nth(1).getByRole('checkbox').check(); + await checkNumberOfCompletedTodosInLocalStorage(page, 1); + await page.getByRole('link', { name: 'Completed' }).click(); + await expect(page.getByTestId('todo-item')).toHaveCount(1); + }); + + test('should allow me to display all items', async ({ page }) => { + await page.getByTestId('todo-item').nth(1).getByRole('checkbox').check(); + await checkNumberOfCompletedTodosInLocalStorage(page, 1); + await page.getByRole('link', { name: 'Active' }).click(); + await page.getByRole('link', { name: 'Completed' }).click(); + await page.getByRole('link', { name: 'All' }).click(); + await expect(page.getByTestId('todo-item')).toHaveCount(3); + }); + + test('should highlight the currently applied filter', async ({ page }) => { + await expect(page.getByRole('link', { name: 'All' })).toHaveClass('selected'); + + //create locators for active and completed links + const activeLink = page.getByRole('link', { name: 'Active' }); + const completedLink = page.getByRole('link', { name: 'Completed' }); + await activeLink.click(); + + // Page change - active items. + await expect(activeLink).toHaveClass('selected'); + await completedLink.click(); + + // Page change - completed items. + await expect(completedLink).toHaveClass('selected'); + }); +}); + +async function createDefaultTodos(page) { + // create a new todo locator + const newTodo = page.getByPlaceholder('What needs to be done?'); + + for (const item of TODO_ITEMS) { + await newTodo.fill(item); + await newTodo.press('Enter'); + } +} + +/** + * @param {import('@playwright/test').Page} page + * @param {number} expected + */ + async function checkNumberOfTodosInLocalStorage(page, expected) { + return await page.waitForFunction(e => { + return JSON.parse(localStorage['react-todos']).length === e; + }, expected); +} + +/** + * @param {import('@playwright/test').Page} page + * @param {number} expected + */ + async function checkNumberOfCompletedTodosInLocalStorage(page, expected) { + return await page.waitForFunction(e => { + return JSON.parse(localStorage['react-todos']).filter(i => i.completed).length === e; + }, expected); +} + +/** + * @param {import('@playwright/test').Page} page + * @param {string} title + */ +async function checkTodosInLocalStorage(page, title) { + return await page.waitForFunction(t => { + return JSON.parse(localStorage['react-todos']).map(i => i.title).includes(t); + }, title); +} diff --git a/tests/HomePage.spec.js b/tests/HomePage.spec.js new file mode 100644 index 0000000..71d8c26 --- /dev/null +++ b/tests/HomePage.spec.js @@ -0,0 +1,23 @@ +const {test, expect} =require('@playwright/test') + +test('Home Page',async ({page})=>{ + + await page.goto('https://jaicrm1.orderbookings.com/login/'); + + const pageTitle=await page.title(); + console.log('Page title is:',pageTitle); + + await expect(page).toHaveTitle('OBA'); + const pageURL=page.url(); + console.log('Page URL is:',pageURL); + + await expect(page).toHaveURL('https://jaicrm1.orderbookings.com/login/'); + await page.fill("//input[@name='oba_login_emailid']",'rabisundaram@gmail.com') + console.log('Mail is Entered'); + await page.fill("//input[@placeholder='Password']",'#12345678A') + console.log('Password is Entered'); + await page.click("//button[normalize-space()='SIGN IN']") + await page.waitForTimeout(5000); + console.log('Password is Logged in Successfully'); + await page.close(); +}) \ No newline at end of file diff --git a/tests/Merchant_AppConf.spec.js b/tests/Merchant_AppConf.spec.js new file mode 100644 index 0000000..a79ff30 --- /dev/null +++ b/tests/Merchant_AppConf.spec.js @@ -0,0 +1,351 @@ +const {test, expect} =require('@playwright/test'); +const { clear } = require('console'); + +test.describe('MerchantAppConf',()=>{ + + test('AppConfTest1',async ({page})=>{ + await page.goto('https://jaicrm1.orderbookings.com/login/'); + await page.fill("//input[@name='oba_login_emailid']",'rabisundaram@gmail.com') + await page.fill("//input[@placeholder='Password']",'#12345678A') + await page.click("//button[normalize-space()='SIGN IN']") + + await page.click("//span[normalize-space()='AppConfig']") + await page.waitForTimeout(5000); + console.log('AppConf Button is working'); + }) + test('AppConfTest2',async ({page})=>{ + await page.goto('https://jaicrm1.orderbookings.com/login/'); + await page.fill("//input[@name='oba_login_emailid']",'rabisundaram@gmail.com') + await page.fill("//input[@placeholder='Password']",'#12345678A') + await page.click("//button[normalize-space()='SIGN IN']") + + await page.click("//span[normalize-space()='AppConfig']") + await page.waitForTimeout(5000); + await page.locator(" //select[@id='oba_appconfig_select_currency']").selectOption({label:'UAE dirham (د.إ;)'}); + await page.waitForTimeout(5000); + console.log('UAE dirham is selected'); + await page.locator(" //select[@id='oba_appconfig_select_currency']").selectOption({label:'Afghan afghani (Afs)'}); + await page.waitForTimeout(5000); + console.log('Afghan afghani is selected'); + await page.locator(" //select[@id='oba_appconfig_select_currency']").selectOption({label:'Albanian lek (L)'}); + await page.waitForTimeout(5000); + console.log('Albanian lek is selected'); + await page.locator(" //select[@id='oba_appconfig_select_currency']").selectOption({label:'Armenian dram (AMD)'}); + await page.waitForTimeout(5000); + console.log('Armenian dram is selected'); + await page.locator(" //select[@id='oba_appconfig_select_currency']").selectOption({label:'Netherlands Antillean gulden (NAƒ)'}); + await page.waitForTimeout(5000); + console.log('Netherlands Antillean gulden is selected'); + await page.locator(" //select[@id='oba_appconfig_select_currency']").selectOption({label:'Angolan kwanza (Kz)'}); + await page.waitForTimeout(5000); + console.log('Angolan kwanza is selected'); + await page.locator(" //select[@id='oba_appconfig_select_currency']").selectOption({label:'Argentine peso ($)'}); + await page.waitForTimeout(5000); + console.log('Argentine peso is selected'); + await page.locator(" //select[@id='oba_appconfig_select_currency']").selectOption({label:'Australian dollar ($)'}); + await page.waitForTimeout(5000); + console.log('Australian dollar is selected'); + await page.locator(" //select[@id='oba_appconfig_select_currency']").selectOption({label:'Aruban florin (ƒ)'}); + await page.waitForTimeout(5000); + console.log('Aruban florin is selected'); + await page.locator(" //select[@id='oba_appconfig_select_currency']").selectOption({label:'Azerbaijani manat (AZN)'}); + await page.waitForTimeout(5000); + console.log('Azerbaijani manat is selected'); + await page.locator(" //select[@id='oba_appconfig_select_currency']").selectOption({label:'Bosnia and Herzegovina konvertibilna marka (KM)'}); + await page.waitForTimeout(5000); + console.log('Bosnia and Herzegovina konvertibilna marka is selected'); + await page.locator(" //select[@id='oba_appconfig_select_currency']").selectOption({label:'Barbadian dollar (Bds$)'}); + await page.waitForTimeout(5000); + console.log('Barbadian dollar is selected'); + await page.locator(" //select[@id='oba_appconfig_select_currency']").selectOption({label:'Bangladeshi taka (৳)'}); + await page.waitForTimeout(5000); + console.log('Bangladeshi taka is selected'); + await page.locator(" //select[@id='oba_appconfig_select_currency']").selectOption({label:'Bulgarian lev (BGN)'}); + await page.waitForTimeout(5000); + console.log('Bulgarian lev is selected'); + await page.locator(" //select[@id='oba_appconfig_select_currency']").selectOption({label:'Bahraini dinar (.د.ب)'}); + await page.waitForTimeout(5000); + console.log('Bahraini dinar is selected'); + await page.locator(" //select[@id='oba_appconfig_select_currency']").selectOption({label:'Burundi franc (FBu)'}); + await page.waitForTimeout(5000); + console.log('Burundi franc is selected'); + await page.locator(" //select[@id='oba_appconfig_select_currency']").selectOption({label:'Bermudian dollar (BD$)'}); + await page.waitForTimeout(5000); + console.log('Bermudian dollar is selected'); + await page.locator(" //select[@id='oba_appconfig_select_currency']").selectOption({label:'Brunei dollar (B$)'}); + await page.waitForTimeout(5000); + console.log('Brunei dollar is selected'); + await page.locator(" //select[@id='oba_appconfig_select_currency']").selectOption({label:'Bolivian boliviano (Bs.)'}); + await page.waitForTimeout(5000); + console.log('Bolivian boliviano is selected'); + await page.locator(" //select[@id='oba_appconfig_select_currency']").selectOption({label:'Brazilian real (R$)'}); + await page.waitForTimeout(5000); + console.log('Brazilian real is selected'); + await page.locator(" //select[@id='oba_appconfig_select_currency']").selectOption({label:'Bahamian dollar (B$)'}); + await page.waitForTimeout(5000); + console.log('Bahamian dollar is selected'); + await page.locator(" //select[@id='oba_appconfig_select_currency']").selectOption({label:'Bhutanese ngultrum (Nu.)'}); + await page.waitForTimeout(5000); + console.log('Bhutanese ngultrum is selected'); + await page.locator(" //select[@id='oba_appconfig_select_currency']").selectOption({label:'Botswana pula (P)'}); + await page.waitForTimeout(5000); + console.log('Botswana pula is selected'); + await page.locator(" //select[@id='oba_appconfig_select_currency']").selectOption({label:'Belarusian ruble (Br)'}); + await page.waitForTimeout(5000); + console.log('Belarusian ruble is selected'); + await page.locator(" //select[@id='oba_appconfig_select_currency']").selectOption({label:'Belize dollar (BZ$)'}); + await page.waitForTimeout(5000); + console.log('Belize dollar is selected'); + await page.locator(" //select[@id='oba_appconfig_select_currency']").selectOption({label:'Canadian dollar ($)'}); + await page.waitForTimeout(5000); + console.log('Canadian dollar is selected'); + await page.locator(" //select[@id='oba_appconfig_select_currency']").selectOption({label:'Congolese franc (F)'}); + await page.waitForTimeout(5000); + console.log('Congolese franc is selected'); + await page.locator(" //select[@id='oba_appconfig_select_currency']").selectOption({label:'Swiss franc (Fr.)'}); + await page.waitForTimeout(5000); + console.log('Swiss franc is selected'); + await page.locator(" //select[@id='oba_appconfig_select_currency']").selectOption({label:'Chilean peso ($)'}); + await page.waitForTimeout(5000); + console.log('Chilean peso is selected'); + await page.locator(" //select[@id='oba_appconfig_select_currency']").selectOption({label:'Chinese/Yuan renminbi (¥)'}); + await page.waitForTimeout(5000); + console.log('Chinese/Yuan renminbi is selected'); + await page.locator(" //select[@id='oba_appconfig_select_currency']").selectOption({label:'Colombian peso (Col$)'}); + await page.waitForTimeout(5000); + console.log('Colombian peso is selected'); + await page.locator(" //select[@id='oba_appconfig_select_currency']").selectOption({label:'Costa Rican colon (₡)'}); + await page.waitForTimeout(5000); + console.log('Costa Rican colon is selected'); + await page.locator(" //select[@id='oba_appconfig_select_currency']").selectOption({label:'Cuban peso ($)'}); + await page.waitForTimeout(5000); + console.log('Cuban peso is selected'); + await page.locator(" //select[@id='oba_appconfig_select_currency']").selectOption({label:'Cape Verdean escudo (Esc)'}); + await page.waitForTimeout(5000); + console.log('Cape Verdean escudo is selected'); + await page.locator(" //select[@id='oba_appconfig_select_currency']").selectOption({label:'Czech koruna (Kč)'}); + await page.waitForTimeout(5000); + console.log('Czech koruna is selected'); + await page.locator(" //select[@id='oba_appconfig_select_currency']").selectOption({label:'Djiboutian franc (Fdj)'}); + await page.waitForTimeout(5000); + console.log('Djiboutian franc is selected'); + await page.locator(" //select[@id='oba_appconfig_select_currency']").selectOption({label:'Danish krone (Kr)'}); + await page.waitForTimeout(5000); + console.log('Danish krone is selected'); + await page.locator(" //select[@id='oba_appconfig_select_currency']").selectOption({label:'Dominican peso (RD$)'}); + await page.waitForTimeout(5000); + console.log('Dominican peso is selected'); + await page.locator(" //select[@id='oba_appconfig_select_currency']").selectOption({label:'Algerian dinar (د.ج)'}); + await page.waitForTimeout(5000); + console.log('Algerian dinar is selected'); + await page.locator(" //select[@id='oba_appconfig_select_currency']").selectOption({label:'Estonian kroon (KR)'}); + await page.waitForTimeout(5000); + console.log('Estonian kroon is selected'); + await page.locator(" //select[@id='oba_appconfig_select_currency']").selectOption({label:'Egyptian pound (£)'}); + await page.waitForTimeout(5000); + console.log('Egyptian pound is selected'); + await page.locator(" //select[@id='oba_appconfig_select_currency']").selectOption({label:'Eritrean nakfa (Nfa)'}); + await page.waitForTimeout(5000); + console.log('Eritrean nakfa is selected'); + await page.locator(" //select[@id='oba_appconfig_select_currency']").selectOption({label:'Ethiopian birr (Br)'}); + await page.waitForTimeout(5000); + console.log('Ethiopian birr is selected'); + await page.locator(" //select[@id='oba_appconfig_select_currency']").selectOption({label:'European Euro (€)'}); + await page.waitForTimeout(5000); + console.log('European Euro is selected'); + await page.locator(" //select[@id='oba_appconfig_select_currency']").selectOption({label:'Fijian dollar (FJ$)'}); + await page.waitForTimeout(5000); + console.log('Fijian dollar is selected'); + await page.locator(" //select[@id='oba_appconfig_select_currency']").selectOption({label:'Falkland Islands pound (£)'}); + await page.waitForTimeout(5000); + console.log('Falkland Islands pound (£) is selected'); + await page.locator(" //select[@id='oba_appconfig_select_currency']").selectOption({label:'British pound (£)'}); + await page.waitForTimeout(5000); + console.log('British pound is selected'); + await page.locator(" //select[@id='oba_appconfig_select_currency']").selectOption({label:'Georgian lari (GEL)'}); + await page.waitForTimeout(5000); + console.log('Georgian lari is selected'); + await page.locator(" //select[@id='oba_appconfig_select_currency']").selectOption({label:'Ghanaian cedi (GH₵)'}); + await page.waitForTimeout(5000); + console.log('Ghanaian cedi is selected'); + await page.locator(" //select[@id='oba_appconfig_select_currency']").selectOption({label:'Gibraltar pound (£)'}); + await page.waitForTimeout(5000); + console.log('Gibraltar pound is selected'); + await page.locator(" //select[@id='oba_appconfig_select_currency']").selectOption({label:'Gambian dalasi (D)'}); + await page.waitForTimeout(5000); + console.log('Gambian dalasi is selected'); + await page.locator(" //select[@id='oba_appconfig_select_currency']").selectOption({label:'Guinean franc (FG)'}); + await page.waitForTimeout(5000); + console.log('Guinean franc is selected'); + await page.locator(" //select[@id='oba_appconfig_select_currency']").selectOption({label:'Central African CFA franc (CFA)'}); + await page.waitForTimeout(5000); + console.log('Central African CFA franc is selected'); + await page.locator(" //select[@id='oba_appconfig_select_currency']").selectOption({label:'Guatemalan quetzal (Q)'}); + await page.waitForTimeout(5000); + console.log('Guatemalan quetzal is selected'); + await page.locator(" //select[@id='oba_appconfig_select_currency']").selectOption({label:'Guyanese dollar (GY$)'}); + await page.waitForTimeout(5000); + console.log('Guyanese dollar is selected'); + await page.locator(" //select[@id='oba_appconfig_select_currency']").selectOption({label:'Hong Kong dollar (HK$)'}); + await page.waitForTimeout(5000); + console.log('Hong Kong dollar is selected'); + await page.locator(" //select[@id='oba_appconfig_select_currency']").selectOption({label:'Honduran lempira (L)'}); + await page.waitForTimeout(5000); + console.log('Honduran lempira is selected'); + await page.locator(" //select[@id='oba_appconfig_select_currency']").selectOption({label:'Croatian kuna (kn)'}); + await page.waitForTimeout(5000); + console.log('Croatian kuna is selected'); + await page.locator(" //select[@id='oba_appconfig_select_currency']").selectOption({label:'Haitian gourde (G)'}); + await page.waitForTimeout(5000); + console.log('Haitian gourde is selected'); + await page.locator(" //select[@id='oba_appconfig_select_currency']").selectOption({label:'Hungarian forint (Ft)'}); + await page.waitForTimeout(5000); + console.log('Hungarian forint is selected'); + await page.locator(" //select[@id='oba_appconfig_select_currency']").selectOption({label:'Indonesian rupiah (Rp)'}); + await page.waitForTimeout(5000); + console.log('Indonesian rupiah is selected'); + await page.locator(" //select[@id='oba_appconfig_select_currency']").selectOption({label:'Israeli new sheqel (₪)'}); + await page.waitForTimeout(5000); + console.log('Israeli new sheqel is selected'); + await page.locator(" //select[@id='oba_appconfig_select_currency']").selectOption({label:'Indian rupee (₹)'}); + await page.waitForTimeout(5000); + console.log('Indian rupee is selected'); + await page.locator(" //select[@id='oba_appconfig_select_currency']").selectOption({label:'Iraqi dinar (د.ع)'}); + await page.waitForTimeout(5000); + console.log('Iraqi dinar is selected'); + await page.locator(" //select[@id='oba_appconfig_select_currency']").selectOption({label:'Iranian rial (IRR)'}); + await page.waitForTimeout(5000); + console.log('Iranian rial is selected'); + await page.locator(" //select[@id='oba_appconfig_select_currency']").selectOption({label:'Icelandic króna (kr)'}); + await page.waitForTimeout(5000); + console.log('Icelandic króna is selected'); + await page.locator(" //select[@id='oba_appconfig_select_currency']").selectOption({label:'Jamaican dollar (J$)'}); + await page.waitForTimeout(5000); + console.log('Jamaican dollar is selected'); + await page.locator(" //select[@id='oba_appconfig_select_currency']").selectOption({label:'Jordanian dinar (JOD)'}); + await page.waitForTimeout(5000); + console.log('Jordanian dinar is selected'); + await page.locator(" //select[@id='oba_appconfig_select_currency']").selectOption({label:'Japanese yen (¥)'}); + await page.waitForTimeout(5000); + console.log('Japanese yen is selected'); + await page.locator(" //select[@id='oba_appconfig_select_currency']").selectOption({label:'Kenyan shilling (KSh)'}); + await page.waitForTimeout(5000); + console.log('Kenyan shilling is selected'); + await page.locator(" //select[@id='oba_appconfig_select_currency']").selectOption({label:'Kyrgyzstani som (сом)'}); + await page.waitForTimeout(5000); + console.log('Kyrgyzstani som is selected'); + await page.locator(" //select[@id='oba_appconfig_select_currency']").selectOption({label:'Cambodian riel (៛)'}); + await page.waitForTimeout(5000); + console.log('Cambodian riel is selected'); + await page.locator(" //select[@id='oba_appconfig_select_currency']").selectOption({label:'Comorian franc (KMF)'}); + await page.waitForTimeout(5000); + console.log('Comorian franc is selected'); + await page.locator(" //select[@id='oba_appconfig_select_currency']").selectOption({label:'North Korean won (W)'}); + await page.waitForTimeout(5000); + console.log('North Korean won is selected'); + await page.locator(" //select[@id='oba_appconfig_select_currency']").selectOption({label:'South Korean won (W)'}); + await page.waitForTimeout(5000); + console.log('South Korean won is selected'); + await page.locator(" //select[@id='oba_appconfig_select_currency']").selectOption({label:'Kuwaiti dinar (KWD)'}); + await page.waitForTimeout(5000); + console.log('Kuwaiti dinar is selected'); + await page.locator(" //select[@id='oba_appconfig_select_currency']").selectOption({label:'Cayman Islands dollar (KY$)'}); + await page.waitForTimeout(5000); + console.log('Cayman Islands dollar is selected'); + await page.locator(" //select[@id='oba_appconfig_select_currency']").selectOption({label:'Kazakhstani tenge (T)'}); + await page.waitForTimeout(5000); + console.log('Kazakhstani tenge is selected'); + await page.locator(" //select[@id='oba_appconfig_select_currency']").selectOption({label:'Lao kip (KN)'}); + await page.waitForTimeout(5000); + console.log('Lao kip is selected'); + await page.locator(" //select[@id='oba_appconfig_select_currency']").selectOption({label:'Lebanese lira (£)'}); + await page.waitForTimeout(5000); + console.log('Lebanese lira is selected'); + await page.locator(" //select[@id='oba_appconfig_select_currency']").selectOption({label:'Sri Lankan rupee (Rs)'}); + await page.waitForTimeout(5000); + console.log('Sri Lankan rupee is selected'); + await page.locator(" //select[@id='oba_appconfig_select_currency']").selectOption({label:'Liberian dollar (L$)'}); + await page.waitForTimeout(5000); + console.log('Liberian dollar is selected'); + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + }) + + + + + + + + +}) diff --git a/tests/Merchant_Order.spec.js b/tests/Merchant_Order.spec.js new file mode 100644 index 0000000..f82a417 --- /dev/null +++ b/tests/Merchant_Order.spec.js @@ -0,0 +1,70 @@ +const {test, expect} =require('@playwright/test'); +const { clear } = require('console'); + +test.describe('MerchantOrder',()=>{ + + test('OrderTest1',async ({page})=>{ + await page.goto('https://jaicrm1.orderbookings.com/login/'); + await page.fill("//input[@name='oba_login_emailid']",'rabisundaram@gmail.com') + await page.fill("//input[@placeholder='Password']",'#12345678A') + await page.click("//button[normalize-space()='SIGN IN']") + await page.click("//li[@id='app-menu-list-orders']//a[@class='app-menu__item']") + // await page.click("//li[@id='app-menu-list-orders']//a[@class='app-menu__item']") + const orderlistlink = await page.locator("//a[normalize-space()='Order List']") + await expect(orderlistlink).toBeVisible(); + console.log('Order Button is working'); + // await page.close(); + }) + + test('OrderTest2',async ({page})=>{ + await page.goto('https://jaicrm1.orderbookings.com/login/'); + await page.fill("//input[@name='oba_login_emailid']",'rabisundaram@gmail.com') + await page.fill("//input[@placeholder='Password']",'#12345678A') + await page.click("//button[normalize-space()='SIGN IN']") + await page.click("//li[@id='app-menu-list-orders']//a[@class='app-menu__item']") + await page.click("//a[normalize-space()='Order List']") + console.log('OrderList Button is working'); + // await page.click("//select[@id='oba_edit_order_status_filter']") + await page.close(); + }) + + test('OrderTest3',async ({page})=>{ + await page.goto('https://jaicrm1.orderbookings.com/login/'); + await page.fill("//input[@name='oba_login_emailid']",'rabisundaram@gmail.com') + await page.fill("//input[@placeholder='Password']",'#12345678A') + await page.click("//button[normalize-space()='SIGN IN']") + await page.click("//li[@id='app-menu-list-orders']//a[@class='app-menu__item']") + await page.click("//a[normalize-space()='Order List']") + await page.click("//select[@id='oba_edit_order_status_filter']") + console.log('order status dropdown is working') + await page.close(); + }) + test('OrderTest4',async ({page})=>{ + await page.goto('https://jaicrm1.orderbookings.com/login/'); + await page.fill("//input[@name='oba_login_emailid']",'rabisundaram@gmail.com') + await page.fill("//input[@placeholder='Password']",'#12345678A') + await page.click("//button[normalize-space()='SIGN IN']") + await page.click("//li[@id='app-menu-list-orders']//a[@class='app-menu__item']") + await page.click("//a[normalize-space()='Order List']") + await page.locator("//select[@id='oba_edit_order_status_filter']").selectOption({label:'ORDER_STATUS_DECLINED'}); + await page.waitForTimeout(5000); + console.log('Order status declined is selected'); + await page.locator("//select[@id='oba_edit_order_status_filter']").selectOption({label:'ORDER_STATUS_REQUESTED'}); + await page.waitForTimeout(5000); + console.log('Order status requested is selected'); + await page.locator("//select[@id='oba_edit_order_status_filter']").selectOption({label:'ORDER_STATUS_PENDING'}); + await page.waitForTimeout(5000); + console.log('Order status Pending is selected'); + await page.locator("//select[@id='oba_edit_order_status_filter']").selectOption({label:'ORDER_STATUS_CANCELLED'}); + await page.waitForTimeout(5000); + console.log('Order status cancelled is selected'); + await page.locator("//select[@id='oba_edit_order_status_filter']").selectOption({label:'ORDER_STATUS_COMPLETE'}); + console.log('Order status complete is selected'); + await page.close(); + }) +}) + + + + + diff --git a/tests/Register.spec.js b/tests/Register.spec.js new file mode 100644 index 0000000..7ab2059 --- /dev/null +++ b/tests/Register.spec.js @@ -0,0 +1,911 @@ +const {test, expect} =require('@playwright/test') +const { clear } = require('console'); + +test.describe('GroupWithCorrectDetails',()=>{ + +test('RegisterTest1',async ({page})=>{ + + await page.goto('https://jaicrm1.orderbookings.com/login/'); + await page.click("//a[normalize-space()='Register Here ?']") + console.log('Register button is working'); + await page.close(); +}) +test('RegisterTest2',async ({page})=>{ + await page.goto('https://jaicrm1.orderbookings.com/login/'); + await page.click("//a[normalize-space()='Register Here ?']") + await page.fill("//input[@id='oba_signup_username']",'Micheal Rabi') + console.log('Name is Entered'); + await page.fill("//input[@id='oba_signup_emailid']",'rabisundaram@gmail.com') + console.log('Email is Entered'); + await page.locator("#oba_signup_phone_code").selectOption({label:'India(91)'}); + await page.waitForTimeout(5000); + console.log('Country Code is Selected'); + await page.fill("//input[@id='oba_signup_phone']",'9600520046') + console.log('Phone Number is Entered'); + await page.fill("//textarea[@id='oba_signup_address']",'Panagudi, Tirunelveli TamilNadu') + console.log('Address is Entered'); + await page.fill("//input[@id='oba_signup_company_name']",'Mobigic Technologies') + console.log('Company Name is Entered'); + await page.locator("//select[@id='oba_signup_business']").selectOption({label:'SweetMart'}); + await page.waitForTimeout(5000); + console.log('BusinessType is selected') + await page.locator("//select[@id='oba_signup_city']").selectOption({label:'Madurai'}); + await page.waitForTimeout(5000); + console.log('City is selected') + await page.fill("//input[@id='oba_signup_password']",'#12345678A') + console.log('Password is Entered'); + await page.click(" //button[normalize-space()='SIGN UP']") + //await page.waitForTimeout(5000); + console.log('Successfully Registered'); + console.log('Email is registered successfully and mail is sent'); + await page.close(); +}) +}) +test.describe('TC_Name',()=>{ + test('Name1',async ({page})=>{ + await page.goto('https://jaicrm1.orderbookings.com/login/'); + await page.click("//a[normalize-space()='Register Here ?']") + await page.fill("//input[@id='oba_signup_username']",'') + console.log('Name is empty it should get error'); + await page.fill("//input[@id='oba_signup_emailid']",'rabisundaram@gmail.com') + await page.locator("#oba_signup_phone_code").selectOption({label:'India(91)'}); + await page.waitForTimeout(5000); + await page.fill("//input[@id='oba_signup_phone']",'9600520046') + await page.fill("//textarea[@id='oba_signup_address']",'Panagudi, Tirunelveli TamilNadu') + await page.fill("//input[@id='oba_signup_company_name']",'Mobigic Technologies') + await page.locator("//select[@id='oba_signup_business']").selectOption({label:'SweetMart'}); + await page.waitForTimeout(5000); + await page.locator("//select[@id='oba_signup_city']").selectOption({label:'Madurai'}); + await page.waitForTimeout(5000); + await page.fill("//input[@id='oba_signup_password']",'#12345678A') + await page.click(" //button[normalize-space()='SIGN UP']") + await page.waitForTimeout(5000); + //PopUP + // const validationMessage = await page.locator('.validation-message'); // Adjust selector as needed + // await validationMessage.waitFor({ state: 'visible' }); + + // Assert the validation message content + // const messageText = await validationMessage.textContent(); + // expect(messageText).toBe('Name is required'); + +}) +test('Name2',async ({page})=>{ + await page.goto('https://jaicrm1.orderbookings.com/login/'); + await page.click("//a[normalize-space()='Register Here ?']") + await page.fill("//input[@id='oba_signup_username']",'52658954623') + console.log('Number is entered it should get error'); + await page.fill("//input[@id='oba_signup_emailid']",'rabisundaram@gmail.com') + await page.locator("#oba_signup_phone_code").selectOption({label:'India(91)'}); + await page.waitForTimeout(5000); + await page.fill("//input[@id='oba_signup_phone']",'9600520046') + await page.fill("//textarea[@id='oba_signup_address']",'Panagudi, Tirunelveli TamilNadu') + await page.fill("//input[@id='oba_signup_company_name']",'Mobigic Technologies') + await page.locator("//select[@id='oba_signup_business']").selectOption({label:'SweetMart'}); + await page.waitForTimeout(5000); + await page.locator("//select[@id='oba_signup_city']").selectOption({label:'Madurai'}); + await page.waitForTimeout(5000); + await page.fill("//input[@id='oba_signup_password']",'#12345678A') + await page.click(" //button[normalize-space()='SIGN UP']") + await page.waitForTimeout(5000); + //PopUP + + +}) +test('Name3',async ({page})=>{ + await page.goto('https://jaicrm1.orderbookings.com/login/'); + await page.click("//a[normalize-space()='Register Here ?']") + await page.fill("//input[@id='oba_signup_username']",'qwertyuioplkjhgfdsazxcvbnmmnbvcxzasdfghjklpoiuytre') + console.log('50 Characters is entered it should get error'); + await page.fill("//input[@id='oba_signup_emailid']",'rabisundaram@gmail.com') + await page.locator("#oba_signup_phone_code").selectOption({label:'India(91)'}); + await page.waitForTimeout(5000); + await page.fill("//input[@id='oba_signup_phone']",'9600520046') + await page.fill("//textarea[@id='oba_signup_address']",'Panagudi, Tirunelveli TamilNadu') + await page.fill("//input[@id='oba_signup_company_name']",'Mobigic Technologies') + await page.locator("//select[@id='oba_signup_business']").selectOption({label:'SweetMart'}); + await page.waitForTimeout(5000); + await page.locator("//select[@id='oba_signup_city']").selectOption({label:'Madurai'}); + await page.waitForTimeout(5000); + await page.fill("//input[@id='oba_signup_password']",'#12345678A') + await page.click(" //button[normalize-space()='SIGN UP']") + await page.waitForTimeout(5000); + //PopUP + +}) +test('Name4',async ({page})=>{ + await page.goto('https://jaicrm1.orderbookings.com/login/'); + await page.click("//a[normalize-space()='Register Here ?']") + await page.fill("//input[@id='oba_signup_username']",'@#$_+(&%$#%$') + console.log('Special Characters is entered it should get error'); + await page.fill("//input[@id='oba_signup_emailid']",'rabisundaram@gmail.com') + await page.locator("#oba_signup_phone_code").selectOption({label:'India(91)'}); + await page.waitForTimeout(5000); + await page.fill("//input[@id='oba_signup_phone']",'9600520046') + await page.fill("//textarea[@id='oba_signup_address']",'Panagudi, Tirunelveli TamilNadu') + await page.fill("//input[@id='oba_signup_company_name']",'Mobigic Technologies') + await page.locator("//select[@id='oba_signup_business']").selectOption({label:'SweetMart'}); + await page.waitForTimeout(5000); + await page.locator("//select[@id='oba_signup_city']").selectOption({label:'Madurai'}); + await page.waitForTimeout(5000); + await page.fill("//input[@id='oba_signup_password']",'#12345678A') + await page.click(" //button[normalize-space()='SIGN UP']") + await page.waitForTimeout(5000); + //PopUP + +}) +test('Name5',async ({page})=>{ + await page.goto('https://jaicrm1.orderbookings.com/login/'); + await page.click("//a[normalize-space()='Register Here ?']") + await page.fill("//input[@id='oba_signup_username']",'@#$_+(&%$#%$') + console.log('Special Characters is entered it should get error'); + await page.fill("//input[@id='oba_signup_emailid']",'rabisundaram@gmail.com') + await page.locator("#oba_signup_phone_code").selectOption({label:'India(91)'}); + await page.waitForTimeout(5000); + await page.fill("//input[@id='oba_signup_phone']",'9600520046') + await page.fill("//textarea[@id='oba_signup_address']",'Panagudi, Tirunelveli TamilNadu') + await page.fill("//input[@id='oba_signup_company_name']",'Mobigic Technologies') + await page.locator("//select[@id='oba_signup_business']").selectOption({label:'SweetMart'}); + await page.waitForTimeout(5000); + await page.locator("//select[@id='oba_signup_city']").selectOption({label:'Madurai'}); + await page.waitForTimeout(5000); + await page.fill("//input[@id='oba_signup_password']",'#12345678A') + await page.click(" //button[normalize-space()='SIGN UP']") + await page.waitForTimeout(5000); + //PopUP + +}) +test('Name6',async ({page})=>{ + await page.goto('https://jaicrm1.orderbookings.com/login/'); + await page.click("//a[normalize-space()='Register Here ?']") + await page.fill("//input[@id='oba_signup_username']",'@#$_+(&%$#%$') + console.log('Special Characters is entered it should get error'); + await page.fill("//input[@id='oba_signup_emailid']",'rabisundaram@gmail.com') + await page.locator("#oba_signup_phone_code").selectOption({label:'India(91)'}); + await page.waitForTimeout(5000); + await page.fill("//input[@id='oba_signup_phone']",'9600520046') + await page.fill("//textarea[@id='oba_signup_address']",'Panagudi, Tirunelveli TamilNadu') + await page.fill("//input[@id='oba_signup_company_name']",'Mobigic Technologies') + await page.locator("//select[@id='oba_signup_business']").selectOption({label:'SweetMart'}); + await page.waitForTimeout(5000); + await page.locator("//select[@id='oba_signup_city']").selectOption({label:'Madurai'}); + await page.waitForTimeout(5000); + await page.fill("//input[@id='oba_signup_password']",'#12345678A') + await page.click(" //button[normalize-space()='SIGN UP']") + await page.waitForTimeout(5000); + //PopUP + + +}) +}) + +test.describe('TC_EMail',()=>{ + test('Email1',async ({page})=>{ + await page.goto('https://jaicrm1.orderbookings.com/login/'); + await page.click("//a[normalize-space()='Register Here ?']") + await page.fill("//input[@id='oba_signup_username']",'Micheal Rabi') + await page.fill("//input[@id='oba_signup_emailid']",'') + console.log('Email is empty, it should get error'); + await page.locator("#oba_signup_phone_code").selectOption({label:'India(91)'}); + await page.waitForTimeout(5000); + await page.fill("//input[@id='oba_signup_phone']",'9600520046') + await page.fill("//textarea[@id='oba_signup_address']",'Panagudi, Tirunelveli TamilNadu') + await page.fill("//input[@id='oba_signup_company_name']",'Mobigic Technologies') + await page.locator("//select[@id='oba_signup_business']").selectOption({label:'SweetMart'}); + await page.waitForTimeout(5000); + await page.locator("//select[@id='oba_signup_city']").selectOption({label:'Madurai'}); + await page.waitForTimeout(5000); + await page.fill("//input[@id='oba_signup_password']",'#12345678A') + await page.click(" //button[normalize-space()='SIGN UP']") + await page.waitForTimeout(5000); + +}) +test('Email2',async ({page})=>{ + await page.goto('https://jaicrm1.orderbookings.com/login/'); + await page.click("//a[normalize-space()='Register Here ?']") + await page.fill("//input[@id='oba_signup_username']",'Micheal Rabi') + await page.fill("//input[@id='oba_signup_emailid']",'rabisundaramgmail.com') + console.log('Email without @ symbol, it should get error'); + await page.locator("#oba_signup_phone_code").selectOption({label:'India(91)'}); + await page.waitForTimeout(5000); + await page.fill("//input[@id='oba_signup_phone']",'9600520046') + await page.fill("//textarea[@id='oba_signup_address']",'Panagudi, Tirunelveli TamilNadu') + await page.fill("//input[@id='oba_signup_company_name']",'Mobigic Technologies') + await page.locator("//select[@id='oba_signup_business']").selectOption({label:'SweetMart'}); + await page.waitForTimeout(5000); + await page.locator("//select[@id='oba_signup_city']").selectOption({label:'Madurai'}); + await page.waitForTimeout(5000); + await page.fill("//input[@id='oba_signup_password']",'#12345678A') + await page.click(" //button[normalize-space()='SIGN UP']") + await page.waitForTimeout(5000); + +}) +test('Email3',async ({page})=>{ + await page.goto('https://jaicrm1.orderbookings.com/login/'); + await page.click("//a[normalize-space()='Register Here ?']") + await page.fill("//input[@id='oba_signup_username']",'Micheal Rabi') + await page.fill("//input[@id='oba_signup_emailid']",'asfg@asfg.com') + console.log('Email with invalid domain, it should get error'); + await page.locator("#oba_signup_phone_code").selectOption({label:'India(91)'}); + await page.waitForTimeout(5000); + await page.fill("//input[@id='oba_signup_phone']",'9600520046') + await page.fill("//textarea[@id='oba_signup_address']",'Panagudi, Tirunelveli TamilNadu') + await page.fill("//input[@id='oba_signup_company_name']",'Mobigic Technologies') + await page.locator("//select[@id='oba_signup_business']").selectOption({label:'SweetMart'}); + await page.waitForTimeout(5000); + await page.locator("//select[@id='oba_signup_city']").selectOption({label:'Madurai'}); + await page.waitForTimeout(5000); + await page.fill("//input[@id='oba_signup_password']",'#12345678A') + await page.click(" //button[normalize-space()='SIGN UP']") + await page.waitForTimeout(5000); + +}) +test('Email4',async ({page})=>{ + await page.goto('https://jaicrm1.orderbookings.com/login/'); + await page.click("//a[normalize-space()='Register Here ?']") + await page.fill("//input[@id='oba_signup_username']",'Micheal Rabi') + await page.fill("//input[@id='oba_signup_emailid']",'rabisundaram.gmail@com') + console.log('Invalid Email format, it should get error'); + await page.locator("#oba_signup_phone_code").selectOption({label:'India(91)'}); + await page.waitForTimeout(5000); + await page.fill("//input[@id='oba_signup_phone']",'9600520046') + await page.fill("//textarea[@id='oba_signup_address']",'Panagudi, Tirunelveli TamilNadu') + await page.fill("//input[@id='oba_signup_company_name']",'Mobigic Technologies') + await page.locator("//select[@id='oba_signup_business']").selectOption({label:'SweetMart'}); + await page.waitForTimeout(5000); + await page.locator("//select[@id='oba_signup_city']").selectOption({label:'Madurai'}); + await page.waitForTimeout(5000); + await page.fill("//input[@id='oba_signup_password']",'#12345678A') + await page.click(" //button[normalize-space()='SIGN UP']") + await page.waitForTimeout(5000); + +}) +test('Email5',async ({page})=>{ + await page.goto('https://jaicrm1.orderbookings.com/login/'); + await page.click("//a[normalize-space()='Register Here ?']") + await page.fill("//input[@id='oba_signup_username']",'Micheal Rabi') + await page.fill("//input[@id='oba_signup_emailid']",'rabisundaram@#$#%5.com') + console.log('Email with invalid characters, it should get error'); + await page.locator("#oba_signup_phone_code").selectOption({label:'India(91)'}); + await page.waitForTimeout(5000); + await page.fill("//input[@id='oba_signup_phone']",'9600520046') + await page.fill("//textarea[@id='oba_signup_address']",'Panagudi, Tirunelveli TamilNadu') + await page.fill("//input[@id='oba_signup_company_name']",'Mobigic Technologies') + await page.locator("//select[@id='oba_signup_business']").selectOption({label:'SweetMart'}); + await page.waitForTimeout(5000); + await page.locator("//select[@id='oba_signup_city']").selectOption({label:'Madurai'}); + await page.waitForTimeout(5000); + await page.fill("//input[@id='oba_signup_password']",'#12345678A') + await page.click(" //button[normalize-space()='SIGN UP']") + await page.waitForTimeout(5000); + +}) +test('Email6',async ({page})=>{ + await page.goto('https://jaicrm1.orderbookings.com/login/'); + await page.click("//a[normalize-space()='Register Here ?']") + await page.fill("//input[@id='oba_signup_username']",'Micheal Rabi') + await page.fill("//input[@id='oba_signup_emailid']",'rabisundafsdkjhkmnfsdjkhfsdkjhnmnikjnkdram') + console.log('Email with Excessive length, it should get error'); + await page.locator("#oba_signup_phone_code").selectOption({label:'India(91)'}); + await page.waitForTimeout(5000); + await page.fill("//input[@id='oba_signup_phone']",'9600520046') + await page.fill("//textarea[@id='oba_signup_address']",'Panagudi, Tirunelveli TamilNadu') + await page.fill("//input[@id='oba_signup_company_name']",'Mobigic Technologies') + await page.locator("//select[@id='oba_signup_business']").selectOption({label:'SweetMart'}); + await page.waitForTimeout(5000); + await page.locator("//select[@id='oba_signup_city']").selectOption({label:'Madurai'}); + await page.waitForTimeout(5000); + await page.fill("//input[@id='oba_signup_password']",'#12345678A') + await page.click(" //button[normalize-space()='SIGN UP']") + await page.waitForTimeout(5000); + +}) +test('Email7',async ({page})=>{ + await page.goto('https://jaicrm1.orderbookings.com/login/'); + await page.click("//a[normalize-space()='Register Here ?']") + await page.fill("//input[@id='oba_signup_username']",'Micheal Rabi') + await page.fill("//input[@id='oba_signup_emailid']",'rabisundaram@gmail...com') + console.log('Email with continous dot, it should get error'); + await page.locator("#oba_signup_phone_code").selectOption({label:'India(91)'}); + await page.waitForTimeout(5000); + await page.fill("//input[@id='oba_signup_phone']",'9600520046') + await page.fill("//textarea[@id='oba_signup_address']",'Panagudi, Tirunelveli TamilNadu') + await page.fill("//input[@id='oba_signup_company_name']",'Mobigic Technologies') + await page.locator("//select[@id='oba_signup_business']").selectOption({label:'SweetMart'}); + await page.waitForTimeout(5000); + await page.locator("//select[@id='oba_signup_city']").selectOption({label:'Madurai'}); + await page.waitForTimeout(5000); + await page.fill("//input[@id='oba_signup_password']",'#12345678A') + await page.click(" //button[normalize-space()='SIGN UP']") + await page.waitForTimeout(5000); + +}) +test('Email8',async ({page})=>{ + await page.goto('https://jaicrm1.orderbookings.com/login/'); + await page.click("//a[normalize-space()='Register Here ?']") + await page.fill("//input[@id='oba_signup_username']",'Micheal Rabi') + await page.fill("//input[@id='oba_signup_emailid']",'example@gmail.example.com') + console.log('user enters email with subdomain is accepted'); + await page.locator("#oba_signup_phone_code").selectOption({label:'India(91)'}); + await page.waitForTimeout(5000); + await page.fill("//input[@id='oba_signup_phone']",'9600520046') + await page.fill("//textarea[@id='oba_signup_address']",'Panagudi, Tirunelveli TamilNadu') + await page.fill("//input[@id='oba_signup_company_name']",'Mobigic Technologies') + await page.locator("//select[@id='oba_signup_business']").selectOption({label:'SweetMart'}); + await page.waitForTimeout(5000); + await page.locator("//select[@id='oba_signup_city']").selectOption({label:'Madurai'}); + await page.waitForTimeout(5000); + await page.fill("//input[@id='oba_signup_password']",'#12345678A') + await page.click(" //button[normalize-space()='SIGN UP']") + await page.waitForTimeout(5000); + +}) +test('Email9',async ({page})=>{ + await page.goto('https://jaicrm1.orderbookings.com/login/'); + await page.click("//a[normalize-space()='Register Here ?']") + await page.fill("//input[@id='oba_signup_username']",'Micheal Rabi') + await page.fill("//input[@id='oba_signup_emailid']",'akshay.vasav@gmail.com') + console.log('user enters special character in local part is accepted'); + await page.locator("#oba_signup_phone_code").selectOption({label:'India(91)'}); + await page.waitForTimeout(5000); + await page.fill("//input[@id='oba_signup_phone']",'9600520046') + await page.fill("//textarea[@id='oba_signup_address']",'Panagudi, Tirunelveli TamilNadu') + await page.fill("//input[@id='oba_signup_company_name']",'Mobigic Technologies') + await page.locator("//select[@id='oba_signup_business']").selectOption({label:'SweetMart'}); + await page.waitForTimeout(5000); + await page.locator("//select[@id='oba_signup_city']").selectOption({label:'Madurai'}); + await page.waitForTimeout(5000); + await page.fill("//input[@id='oba_signup_password']",'#12345678A') + await page.click(" //button[normalize-space()='SIGN UP']") + await page.waitForTimeout(5000); + +}) +test('Email10',async ({page})=>{ + await page.goto('https://jaicrm1.orderbookings.com/login/'); + await page.click("//a[normalize-space()='Register Here ?']") + await page.fill("//input[@id='oba_signup_username']",'Micheal Rabi') + await page.fill("//input[@id='oba_signup_emailid']",'AKSHAY@gmail.com') + console.log('user enters email with Uppercase charecters is accepted'); + await page.locator("#oba_signup_phone_code").selectOption({label:'India(91)'}); + await page.waitForTimeout(5000); + await page.fill("//input[@id='oba_signup_phone']",'9600520046') + await page.fill("//textarea[@id='oba_signup_address']",'Panagudi, Tirunelveli TamilNadu') + await page.fill("//input[@id='oba_signup_company_name']",'Mobigic Technologies') + await page.locator("//select[@id='oba_signup_business']").selectOption({label:'SweetMart'}); + await page.waitForTimeout(5000); + await page.locator("//select[@id='oba_signup_city']").selectOption({label:'Madurai'}); + await page.waitForTimeout(5000); + await page.fill("//input[@id='oba_signup_password']",'#12345678A') + await page.click(" //button[normalize-space()='SIGN UP']") + await page.waitForTimeout(5000); + +}) +}) +test.describe('TC_Phone',()=>{ + test('Phone1',async ({page})=>{ + await page.goto('https://jaicrm1.orderbookings.com/login/'); + await page.click("//a[normalize-space()='Register Here ?']") + await page.fill("//input[@id='oba_signup_username']",'Micheal Rabi') + await page.fill("//input[@id='oba_signup_emailid']",'rabisundaram@gmail.com') + await page.locator("#oba_signup_phone_code").selectOption({label:'India(91)'}); + await page.waitForTimeout(5000); + await page.fill("//input[@id='oba_signup_phone']",'ABCDERFGTY') + console.log('Characters in Phone, it should get error'); + await page.fill("//textarea[@id='oba_signup_address']",'Panagudi, Tirunelveli TamilNadu') + await page.fill("//input[@id='oba_signup_company_name']",'Mobigic Technologies') + await page.locator("//select[@id='oba_signup_business']").selectOption({label:'SweetMart'}); + await page.waitForTimeout(5000); + await page.locator("//select[@id='oba_signup_city']").selectOption({label:'Madurai'}); + await page.waitForTimeout(5000); + await page.fill("//input[@id='oba_signup_password']",'#12345678A') + await page.click(" //button[normalize-space()='SIGN UP']") + await page.waitForTimeout(5000); + +}) +test('Phone2',async ({page})=>{ + await page.goto('https://jaicrm1.orderbookings.com/login/'); + await page.click("//a[normalize-space()='Register Here ?']") + await page.fill("//input[@id='oba_signup_username']",'Micheal Rabi') + await page.fill("//input[@id='oba_signup_emailid']",'rabisundaram@gmail.com') + await page.locator("#oba_signup_phone_code").selectOption({label:'India(91)'}); + await page.waitForTimeout(5000); + await page.fill("//input[@id='oba_signup_phone']",'986787$%^8') + console.log('Special Characters in Phone, it should get error'); + await page.fill("//textarea[@id='oba_signup_address']",'Panagudi, Tirunelveli TamilNadu') + await page.fill("//input[@id='oba_signup_company_name']",'Mobigic Technologies') + await page.locator("//select[@id='oba_signup_business']").selectOption({label:'SweetMart'}); + await page.waitForTimeout(5000); + await page.locator("//select[@id='oba_signup_city']").selectOption({label:'Madurai'}); + await page.waitForTimeout(5000); + await page.fill("//input[@id='oba_signup_password']",'#12345678A') + await page.click(" //button[normalize-space()='SIGN UP']") + await page.waitForTimeout(5000); + +}) +test('Phone3',async ({page})=>{ + await page.goto('https://jaicrm1.orderbookings.com/login/'); + await page.click("//a[normalize-space()='Register Here ?']") + await page.fill("//input[@id='oba_signup_username']",'Micheal Rabi') + await page.fill("//input[@id='oba_signup_emailid']",'rabisundaram@gmail.com') + await page.locator("#oba_signup_phone_code").selectOption({label:'India(91)'}); + await page.waitForTimeout(5000); + await page.fill("//input[@id='oba_signup_phone']",'ABCDERFGTY') + console.log('Characters in Phone, it should get error'); + await page.fill("//textarea[@id='oba_signup_address']",'Panagudi, Tirunelveli TamilNadu') + await page.fill("//input[@id='oba_signup_company_name']",'Mobigic Technologies') + await page.locator("//select[@id='oba_signup_business']").selectOption({label:'SweetMart'}); + await page.waitForTimeout(5000); + await page.locator("//select[@id='oba_signup_city']").selectOption({label:'Madurai'}); + await page.waitForTimeout(5000); + await page.fill("//input[@id='oba_signup_password']",'#12345678A') + await page.click(" //button[normalize-space()='SIGN UP']") + await page.waitForTimeout(5000); + +}) +test('Phone4',async ({page})=>{ + await page.goto('https://jaicrm1.orderbookings.com/login/'); + await page.click("//a[normalize-space()='Register Here ?']") + await page.fill("//input[@id='oba_signup_username']",'Micheal Rabi') + await page.fill("//input[@id='oba_signup_emailid']",'rabisundaram@gmail.com') + await page.locator("#oba_signup_phone_code").selectOption({label:'India(91)'}); + await page.waitForTimeout(5000); + await page.fill("//input[@id='oba_signup_phone']",'25416325147') + console.log('11 Numbers in Phone, it should get error'); + await page.fill("//textarea[@id='oba_signup_address']",'Panagudi, Tirunelveli TamilNadu') + await page.fill("//input[@id='oba_signup_company_name']",'Mobigic Technologies') + await page.locator("//select[@id='oba_signup_business']").selectOption({label:'SweetMart'}); + await page.waitForTimeout(5000); + await page.locator("//select[@id='oba_signup_city']").selectOption({label:'Madurai'}); + await page.waitForTimeout(5000); + await page.fill("//input[@id='oba_signup_password']",'#12345678A') + await page.click(" //button[normalize-space()='SIGN UP']") + await page.waitForTimeout(5000); + +}) +test('Phone5',async ({page})=>{ + await page.goto('https://jaicrm1.orderbookings.com/login/'); + await page.click("//a[normalize-space()='Register Here ?']") + await page.fill("//input[@id='oba_signup_username']",'Micheal Rabi') + await page.fill("//input[@id='oba_signup_emailid']",'rabisundaram@gmail.com') + await page.locator("#oba_signup_phone_code").selectOption({label:'India(91)'}); + await page.waitForTimeout(5000); + await page.fill("//input[@id='oba_signup_phone']",'254163251') + console.log('9 Numbers in Phone, it should get error'); + await page.fill("//textarea[@id='oba_signup_address']",'Panagudi, Tirunelveli TamilNadu') + await page.fill("//input[@id='oba_signup_company_name']",'Mobigic Technologies') + await page.locator("//select[@id='oba_signup_business']").selectOption({label:'SweetMart'}); + await page.waitForTimeout(5000); + await page.locator("//select[@id='oba_signup_city']").selectOption({label:'Madurai'}); + await page.waitForTimeout(5000); + await page.fill("//input[@id='oba_signup_password']",'#12345678A') + await page.click(" //button[normalize-space()='SIGN UP']") + await page.waitForTimeout(5000); + +}) +test('Phone6',async ({page})=>{ + await page.goto('https://jaicrm1.orderbookings.com/login/'); + await page.click("//a[normalize-space()='Register Here ?']") + await page.fill("//input[@id='oba_signup_username']",'Micheal Rabi') + await page.fill("//input[@id='oba_signup_emailid']",'rabisundaram@gmail.com') + await page.locator("#oba_signup_phone_code").selectOption({label:'India(91)'}); + await page.waitForTimeout(5000); + await page.fill("//input[@id='oba_signup_phone']",' 254163251') + console.log('Space in Phone, it should get error'); + await page.fill("//textarea[@id='oba_signup_address']",'Panagudi, Tirunelveli TamilNadu') + await page.fill("//input[@id='oba_signup_company_name']",'Mobigic Technologies') + await page.locator("//select[@id='oba_signup_business']").selectOption({label:'SweetMart'}); + await page.waitForTimeout(5000); + await page.locator("//select[@id='oba_signup_city']").selectOption({label:'Madurai'}); + await page.waitForTimeout(5000); + await page.fill("//input[@id='oba_signup_password']",'#12345678A') + await page.click(" //button[normalize-space()='SIGN UP']") + await page.waitForTimeout(5000); + +}) +test('Phone7',async ({page})=>{ + await page.goto('https://jaicrm1.orderbookings.com/login/'); + await page.click("//a[normalize-space()='Register Here ?']") + await page.fill("//input[@id='oba_signup_username']",'Micheal Rabi') + await page.fill("//input[@id='oba_signup_emailid']",'rabisundaram@gmail.com') + await page.locator("#oba_signup_phone_code").selectOption({label:'India(91)'}); + await page.waitForTimeout(5000); + await page.fill("//input[@id='oba_signup_phone']",'') + console.log('Blank Space in Phone, it should get error'); + await page.fill("//textarea[@id='oba_signup_address']",'Panagudi, Tirunelveli TamilNadu') + await page.fill("//input[@id='oba_signup_company_name']",'Mobigic Technologies') + await page.locator("//select[@id='oba_signup_business']").selectOption({label:'SweetMart'}); + await page.waitForTimeout(5000); + await page.locator("//select[@id='oba_signup_city']").selectOption({label:'Madurai'}); + await page.waitForTimeout(5000); + await page.fill("//input[@id='oba_signup_password']",'#12345678A') + await page.click(" //button[normalize-space()='SIGN UP']") + await page.waitForTimeout(5000); + +}) +test('Phone8',async ({page})=>{ + await page.goto('https://jaicrm1.orderbookings.com/login/'); + await page.click("//a[normalize-space()='Register Here ?']") + await page.fill("//input[@id='oba_signup_username']",'Micheal Rabi') + await page.fill("//input[@id='oba_signup_emailid']",'rabisundaram@gmail.com') + await page.locator("#oba_signup_phone_code").selectOption({label:'India(91)'}); + await page.waitForTimeout(5000); + await page.fill("//input[@id='oba_signup_phone']",'96678567367872') + console.log('International Numbers in Phone, it should get error'); + await page.fill("//textarea[@id='oba_signup_address']",'Panagudi, Tirunelveli TamilNadu') + await page.fill("//input[@id='oba_signup_company_name']",'Mobigic Technologies') + await page.locator("//select[@id='oba_signup_business']").selectOption({label:'SweetMart'}); + await page.waitForTimeout(5000); + await page.locator("//select[@id='oba_signup_city']").selectOption({label:'Madurai'}); + await page.waitForTimeout(5000); + await page.fill("//input[@id='oba_signup_password']",'#12345678A') + await page.click(" //button[normalize-space()='SIGN UP']") + await page.waitForTimeout(5000); + +}) +test('Phone9',async ({page})=>{ + await page.goto('https://jaicrm1.orderbookings.com/login/'); + await page.click("//a[normalize-space()='Register Here ?']") + await page.fill("//input[@id='oba_signup_username']",'Micheal Rabi') + await page.fill("//input[@id='oba_signup_emailid']",'rabisundaram@gmail.com') + await page.locator("#oba_signup_phone_code").selectOption({label:'India(91)'}); + await page.waitForTimeout(5000); + await page.fill("//input[@id='oba_signup_phone']",'25416325147') + console.log('11 Numbers in Phone, it should get error'); + await page.fill("//textarea[@id='oba_signup_address']",'Panagudi, Tirunelveli TamilNadu') + await page.fill("//input[@id='oba_signup_company_name']",'Mobigic Technologies') + await page.locator("//select[@id='oba_signup_business']").selectOption({label:'SweetMart'}); + await page.waitForTimeout(5000); + await page.locator("//select[@id='oba_signup_city']").selectOption({label:'Madurai'}); + await page.waitForTimeout(5000); + await page.fill("//input[@id='oba_signup_password']",'#12345678A') + await page.click(" //button[normalize-space()='SIGN UP']") + await page.waitForTimeout(5000); + +}) +}) +test.describe('TC_Phone',()=>{ + test('Address1',async ({page})=>{ + await page.goto('https://jaicrm1.orderbookings.com/login/'); + await page.click("//a[normalize-space()='Register Here ?']") + await page.fill("//input[@id='oba_signup_username']",'Micheal Rabi') + await page.fill("//input[@id='oba_signup_emailid']",'rabisundaram@gmail.com') + await page.locator("#oba_signup_phone_code").selectOption({label:'India(91)'}); + await page.waitForTimeout(5000); + await page.fill("//input[@id='oba_signup_phone']",'9600520046') + await page.fill("//textarea[@id='oba_signup_address']",'') + console.log('Empty address, it should get error'); + await page.fill("//input[@id='oba_signup_company_name']",'Mobigic Technologies') + await page.locator("//select[@id='oba_signup_business']").selectOption({label:'SweetMart'}); + await page.waitForTimeout(5000); + await page.locator("//select[@id='oba_signup_city']").selectOption({label:'Madurai'}); + await page.waitForTimeout(5000); + await page.fill("//input[@id='oba_signup_password']",'#12345678A') + await page.click(" //button[normalize-space()='SIGN UP']") + await page.waitForTimeout(5000); + + }) + test('Address2',async ({page})=>{ + await page.goto('https://jaicrm1.orderbookings.com/login/'); + await page.click("//a[normalize-space()='Register Here ?']") + await page.fill("//input[@id='oba_signup_username']",'Micheal Rabi') + await page.fill("//input[@id='oba_signup_emailid']",'rabisundaram@gmail.com') + await page.locator("#oba_signup_phone_code").selectOption({label:'India(91)'}); + await page.waitForTimeout(5000); + await page.fill("//input[@id='oba_signup_phone']",'9600520046') + await page.fill("//textarea[@id='oba_signup_address']",'hriweahkjfnriufhkjfmndsbajhadgsifhkdbjkf,uhgjhdfvuyjmnhbfuj') + console.log('Excessive length address, it should get error'); + await page.fill("//input[@id='oba_signup_company_name']",'Mobigic Technologies') + await page.locator("//select[@id='oba_signup_business']").selectOption({label:'SweetMart'}); + await page.waitForTimeout(5000); + await page.locator("//select[@id='oba_signup_city']").selectOption({label:'Madurai'}); + await page.waitForTimeout(5000); + await page.fill("//input[@id='oba_signup_password']",'#12345678A') + await page.click(" //button[normalize-space()='SIGN UP']") + await page.waitForTimeout(5000); + + }) + test('Address3',async ({page})=>{ + await page.goto('https://jaicrm1.orderbookings.com/login/'); + await page.click("//a[normalize-space()='Register Here ?']") + await page.fill("//input[@id='oba_signup_username']",'Micheal Rabi') + await page.fill("//input[@id='oba_signup_emailid']",'rabisundaram@gmail.com') + await page.locator("#oba_signup_phone_code").selectOption({label:'India(91)'}); + await page.waitForTimeout(5000); + await page.fill("//input[@id='oba_signup_phone']",'9600520046') + await page.fill("//textarea[@id='oba_signup_address']",'$%^#&#&* main road pabnagdui') + console.log('Excessive Special characters, it should get error'); + await page.fill("//input[@id='oba_signup_company_name']",'Mobigic Technologies') + await page.locator("//select[@id='oba_signup_business']").selectOption({label:'SweetMart'}); + await page.waitForTimeout(5000); + await page.locator("//select[@id='oba_signup_city']").selectOption({label:'Madurai'}); + await page.waitForTimeout(5000); + await page.fill("//input[@id='oba_signup_password']",'#12345678A') + await page.click(" //button[normalize-space()='SIGN UP']") + await page.waitForTimeout(5000); + + }) +}) +test.describe('TC_Company Name',()=>{ + + test('CompanyName1',async ({page})=>{ + await page.goto('https://jaicrm1.orderbookings.com/login/'); + await page.click("//a[normalize-space()='Register Here ?']") + await page.fill("//input[@id='oba_signup_username']",'Micheal Rabi') + await page.fill("//input[@id='oba_signup_emailid']",'rabisundaram@gmail.com') + await page.locator("#oba_signup_phone_code").selectOption({label:'India(91)'}); + await page.waitForTimeout(5000); + await page.fill("//input[@id='oba_signup_phone']",'9600520046') + await page.fill("//textarea[@id='oba_signup_address']",'Panagudi, Tirunelveli TamilNadu') + await page.fill("//input[@id='oba_signup_company_name']",'') + console.log('Empty Company Name, it should get error'); + await page.locator("//select[@id='oba_signup_business']").selectOption({label:'SweetMart'}); + await page.waitForTimeout(5000); + await page.locator("//select[@id='oba_signup_city']").selectOption({label:'Madurai'}); + await page.waitForTimeout(5000); + await page.fill("//input[@id='oba_signup_password']",'#12345678A') + await page.click(" //button[normalize-space()='SIGN UP']") + await page.waitForTimeout(5000); + + }) + test('CompanyName2',async ({page})=>{ + await page.goto('https://jaicrm1.orderbookings.com/login/'); + await page.click("//a[normalize-space()='Register Here ?']") + await page.fill("//input[@id='oba_signup_username']",'Micheal Rabi') + await page.fill("//input[@id='oba_signup_emailid']",'rabisundaram@gmail.com') + await page.locator("#oba_signup_phone_code").selectOption({label:'India(91)'}); + await page.waitForTimeout(5000); + await page.fill("//input[@id='oba_signup_phone']",'9600520046') + await page.fill("//textarea[@id='oba_signup_address']",'Panagudi, Tirunelveli TamilNadu') + await page.fill("//input[@id='oba_signup_company_name']",'Mobigic12345') + console.log('Numbers with Company Name, it should get error'); + await page.locator("//select[@id='oba_signup_business']").selectOption({label:'SweetMart'}); + await page.waitForTimeout(5000); + await page.locator("//select[@id='oba_signup_city']").selectOption({label:'Madurai'}); + await page.waitForTimeout(5000); + await page.fill("//input[@id='oba_signup_password']",'#12345678A') + await page.click(" //button[normalize-space()='SIGN UP']") + await page.waitForTimeout(5000); + + }) + test('CompanyName3',async ({page})=>{ + await page.goto('https://jaicrm1.orderbookings.com/login/'); + await page.click("//a[normalize-space()='Register Here ?']") + await page.fill("//input[@id='oba_signup_username']",'Micheal Rabi') + await page.fill("//input[@id='oba_signup_emailid']",'rabisundaram@gmail.com') + await page.locator("#oba_signup_phone_code").selectOption({label:'India(91)'}); + await page.waitForTimeout(5000); + await page.fill("//input[@id='oba_signup_phone']",'9600520046') + await page.fill("//textarea[@id='oba_signup_address']",'Panagudi, Tirunelveli TamilNadu') + await page.fill("//input[@id='oba_signup_company_name']",'jhvfraufgjkbafkjhkjbfiabhfkjbfailshfrkbikfuakjbnfbhasgkifjab') + console.log('1000 Alphabets, it should get error'); + await page.locator("//select[@id='oba_signup_business']").selectOption({label:'SweetMart'}); + await page.waitForTimeout(5000); + await page.locator("//select[@id='oba_signup_city']").selectOption({label:'Madurai'}); + await page.waitForTimeout(5000); + await page.fill("//input[@id='oba_signup_password']",'#12345678A') + await page.click(" //button[normalize-space()='SIGN UP']") + await page.waitForTimeout(5000); + + }) + test('CompanyName4',async ({page})=>{ + await page.goto('https://jaicrm1.orderbookings.com/login/'); + await page.click("//a[normalize-space()='Register Here ?']") + await page.fill("//input[@id='oba_signup_username']",'Micheal Rabi') + await page.fill("//input[@id='oba_signup_emailid']",'rabisundaram@gmail.com') + await page.locator("#oba_signup_phone_code").selectOption({label:'India(91)'}); + await page.waitForTimeout(5000); + await page.fill("//input[@id='oba_signup_phone']",'9600520046') + await page.fill("//textarea[@id='oba_signup_address']",'Panagudi, Tirunelveli TamilNadu') + await page.fill("//input[@id='oba_signup_company_name']",'mobigic#$%tY&') + console.log('Company Name with special characters and symbols, it should get error'); + await page.locator("//select[@id='oba_signup_business']").selectOption({label:'SweetMart'}); + await page.waitForTimeout(5000); + await page.locator("//select[@id='oba_signup_city']").selectOption({label:'Madurai'}); + await page.waitForTimeout(5000); + await page.fill("//input[@id='oba_signup_password']",'#12345678A') + await page.click(" //button[normalize-space()='SIGN UP']") + await page.waitForTimeout(5000); + + }) + +}) + +test.describe('TC_BusinessType',()=>{ + test('Business1',async ({page})=>{ + await page.goto('https://jaicrm1.orderbookings.com/login/'); + await page.click("//a[normalize-space()='Register Here ?']") + await page.fill("//input[@id='oba_signup_username']",'Micheal Rabi') + await page.fill("//input[@id='oba_signup_emailid']",'rabisundaram@gmail.com') + await page.locator("#oba_signup_phone_code").selectOption({label:'India(91)'}); + await page.waitForTimeout(5000); + await page.fill("//input[@id='oba_signup_phone']",'9600520046') + await page.fill("//textarea[@id='oba_signup_address']",'Panagudi, Tirunelveli TamilNadu') + await page.fill("//input[@id='oba_signup_company_name']",'Mobigic Technologies') + await page.locator("//select[@id='oba_signup_business']").selectOption({label:'SweetMart'}); + await page.waitForTimeout(5000); + console.log('BusinessType was selected'); + await page.locator("//select[@id='oba_signup_city']").selectOption({label:'Madurai'}); + await page.waitForTimeout(5000); + await page.fill("//input[@id='oba_signup_password']",'#12345678A') + await page.click(" //button[normalize-space()='SIGN UP']") + await page.waitForTimeout(5000); + + }) + test('Business2',async ({page})=>{ + await page.goto('https://jaicrm1.orderbookings.com/login/'); + await page.click("//a[normalize-space()='Register Here ?']") + await page.fill("//input[@id='oba_signup_username']",'Micheal Rabi') + await page.fill("//input[@id='oba_signup_emailid']",'rabisundaram@gmail.com') + await page.locator("#oba_signup_phone_code").selectOption({label:'India(91)'}); + await page.waitForTimeout(5000); + await page.fill("//input[@id='oba_signup_phone']",'9600520046') + await page.fill("//textarea[@id='oba_signup_address']",'Panagudi, Tirunelveli TamilNadu') + await page.fill("//input[@id='oba_signup_company_name']",'Mobigic Technologies') + await page.locator("//select[@id='oba_signup_business']").selectOption({label:'FruitMart'}); + await page.waitForTimeout(5000); + console.log('BusinessType was selected'); + await page.locator("//select[@id='oba_signup_city']").selectOption({label:'Madurai'}); + await page.waitForTimeout(5000); + await page.fill("//input[@id='oba_signup_password']",'#12345678A') + await page.click(" //button[normalize-space()='SIGN UP']") + await page.waitForTimeout(5000); + + }) + + test('Business3',async ({page})=>{ + await page.goto('https://jaicrm1.orderbookings.com/login/'); + await page.click("//a[normalize-space()='Register Here ?']") + await page.fill("//input[@id='oba_signup_username']",'Micheal Rabi') + await page.fill("//input[@id='oba_signup_emailid']",'rabisundaram@gmail.com') + await page.locator("#oba_signup_phone_code").selectOption({label:'India(91)'}); + await page.waitForTimeout(5000); + await page.fill("//input[@id='oba_signup_phone']",'9600520046') + await page.fill("//textarea[@id='oba_signup_address']",'Panagudi, Tirunelveli TamilNadu') + await page.fill("//input[@id='oba_signup_company_name']",'Mobigic Technologies') + await page.locator("//select[@id='oba_signup_business']").selectOption({label:'BisleriSupply'}); + await page.waitForTimeout(5000); + console.log('BusinessType was selected'); + await page.locator("//select[@id='oba_signup_city']").selectOption({label:'Madurai'}); + await page.waitForTimeout(5000); + await page.fill("//input[@id='oba_signup_password']",'#12345678A') + await page.click(" //button[normalize-space()='SIGN UP']") + await page.waitForTimeout(5000); + + }) + test('Business4',async ({page})=>{ + await page.goto('https://jaicrm1.orderbookings.com/login/'); + await page.click("//a[normalize-space()='Register Here ?']") + await page.fill("//input[@id='oba_signup_username']",'Micheal Rabi') + await page.fill("//input[@id='oba_signup_emailid']",'rabisundaram@gmail.com') + await page.locator("#oba_signup_phone_code").selectOption({label:'India(91)'}); + await page.waitForTimeout(5000); + await page.fill("//input[@id='oba_signup_phone']",'9600520046') + await page.fill("//textarea[@id='oba_signup_address']",'Panagudi, Tirunelveli TamilNadu') + await page.fill("//input[@id='oba_signup_company_name']",'Mobigic Technologies') + await page.locator("//select[@id='oba_signup_business']").selectOption({label:'Others'}); + await page.waitForTimeout(5000); + console.log('BusinessType was selected'); + await page.locator("//select[@id='oba_signup_city']").selectOption({label:'Madurai'}); + await page.waitForTimeout(5000); + await page.fill("//input[@id='oba_signup_password']",'#12345678A') + await page.click(" //button[normalize-space()='SIGN UP']") + await page.waitForTimeout(5000); + }) +}) +test.describe('TC_City',()=>{ + test('City1',async ({page})=>{ + await page.goto('https://jaicrm1.orderbookings.com/login/'); + await page.click("//a[normalize-space()='Register Here ?']") + await page.fill("//input[@id='oba_signup_username']",'Micheal Rabi') + await page.fill("//input[@id='oba_signup_emailid']",'rabisundaram@gmail.com') + await page.locator("#oba_signup_phone_code").selectOption({label:'India(91)'}); + await page.waitForTimeout(5000); + await page.fill("//input[@id='oba_signup_phone']",'9600520046') + await page.fill("//textarea[@id='oba_signup_address']",'Panagudi, Tirunelveli TamilNadu') + await page.fill("//input[@id='oba_signup_company_name']",'Mobigic Technologies') + await page.locator("//select[@id='oba_signup_business']").selectOption({label:'BisleriSupply'}); + await page.waitForTimeout(5000); + + await page.locator("//select[@id='oba_signup_city']").selectOption({label:'Madurai'}); + await page.waitForTimeout(5000); + console.log('City was selected'); + await page.fill("//input[@id='oba_signup_password']",'#12345678A') + await page.click(" //button[normalize-space()='SIGN UP']") + await page.waitForTimeout(5000); + }) +}) + +test.describe('TC_Password',()=>{ + test('Password1',async ({page})=>{ + await page.goto('https://jaicrm1.orderbookings.com/login/'); + await page.click("//a[normalize-space()='Register Here ?']") + await page.fill("//input[@id='oba_signup_username']",'Micheal Rabi') + await page.fill("//input[@id='oba_signup_emailid']",'rabisundaram@gmail.com') + await page.locator("#oba_signup_phone_code").selectOption({label:'India(91)'}); + await page.waitForTimeout(5000); + await page.fill("//input[@id='oba_signup_phone']",'9600520046') + await page.fill("//textarea[@id='oba_signup_address']",'Panagudi, Tirunelveli TamilNadu') + await page.fill("//input[@id='oba_signup_company_name']",'Mobigic Technologies') + await page.locator("//select[@id='oba_signup_business']").selectOption({label:'BisleriSupply'}); + await page.waitForTimeout(5000); + await page.locator("//select[@id='oba_signup_city']").selectOption({label:'Madurai'}); + await page.waitForTimeout(5000); + await page.fill("//input[@id='oba_signup_password']",'#1234') + console.log('Password is too short, it will show error'); + await page.click(" //button[normalize-space()='SIGN UP']") + await page.waitForTimeout(5000); + + }) + test('Password2',async ({page})=>{ + await page.goto('https://jaicrm1.orderbookings.com/login/'); + await page.click("//a[normalize-space()='Register Here ?']") + await page.fill("//input[@id='oba_signup_username']",'Micheal Rabi') + await page.fill("//input[@id='oba_signup_emailid']",'rabisundaram@gmail.com') + await page.locator("#oba_signup_phone_code").selectOption({label:'India(91)'}); + await page.waitForTimeout(5000); + await page.fill("//input[@id='oba_signup_phone']",'9600520046') + await page.fill("//textarea[@id='oba_signup_address']",'Panagudi, Tirunelveli TamilNadu') + await page.fill("//input[@id='oba_signup_company_name']",'Mobigic Technologies') + await page.locator("//select[@id='oba_signup_business']").selectOption({label:'BisleriSupply'}); + await page.waitForTimeout(5000); + await page.locator("//select[@id='oba_signup_city']").selectOption({label:'Madurai'}); + await page.waitForTimeout(5000); + await page.fill("//input[@id='oba_signup_password']",'12361234') + console.log('Password missing required characters, it will show error'); + await page.click(" //button[normalize-space()='SIGN UP']") + await page.waitForTimeout(5000); + + }) + + + test('Password3',async ({page})=>{ + await page.goto('https://jaicrm1.orderbookings.com/login/'); + await page.click("//a[normalize-space()='Register Here ?']") + await page.fill("//input[@id='oba_signup_username']",'Micheal Rabi') + await page.fill("//input[@id='oba_signup_emailid']",'rabisundaram@gmail.com') + await page.locator("#oba_signup_phone_code").selectOption({label:'India(91)'}); + await page.waitForTimeout(5000); + await page.fill("//input[@id='oba_signup_phone']",'9600520046') + await page.fill("//textarea[@id='oba_signup_address']",'Panagudi, Tirunelveli TamilNadu') + await page.fill("//input[@id='oba_signup_company_name']",'Mobigic Technologies') + await page.locator("//select[@id='oba_signup_business']").selectOption({label:'BisleriSupply'}); + await page.waitForTimeout(5000); + await page.locator("//select[@id='oba_signup_city']").selectOption({label:'Madurai'}); + await page.waitForTimeout(5000); + await page.fill("//input[@id='oba_signup_password']",'##$%%^^%%^') + console.log('Password with only special characters, it will show error'); + await page.click(" //button[normalize-space()='SIGN UP']") + await page.waitForTimeout(5000); + + }) + test('Password4',async ({page})=>{ + await page.goto('https://jaicrm1.orderbookings.com/login/'); + await page.click("//a[normalize-space()='Register Here ?']") + await page.fill("//input[@id='oba_signup_username']",'Micheal Rabi') + await page.fill("//input[@id='oba_signup_emailid']",'rabisundaram@gmail.com') + await page.locator("#oba_signup_phone_code").selectOption({label:'India(91)'}); + await page.waitForTimeout(5000); + await page.fill("//input[@id='oba_signup_phone']",'9600520046') + await page.fill("//textarea[@id='oba_signup_address']",'Panagudi, Tirunelveli TamilNadu') + await page.fill("//input[@id='oba_signup_company_name']",'Mobigic Technologies') + await page.locator("//select[@id='oba_signup_business']").selectOption({label:'BisleriSupply'}); + await page.waitForTimeout(5000); + await page.locator("//select[@id='oba_signup_city']").selectOption({label:'Madurai'}); + await page.waitForTimeout(5000); + await page.fill("//input[@id='oba_signup_password']",'##$ wwer%%^^%%^') + console.log('Password with space, it will show error'); + await page.click(" //button[normalize-space()='SIGN UP']") + await page.waitForTimeout(5000); + }) + +}) +test.describe('TC_ForgotPassword',()=>{ +test('ForgotPassword',async ({page})=>{ + + await page.goto('https://jaicrm1.orderbookings.com/login/'); + await page.click("//a[normalize-space()='Forgot Password ?']") + console.log('Forgot Password button is working'); + await page.close(); +}) +}) + +