chore: ui test script upload (grid view)

This commit is contained in:
Methapon2001 2023-12-06 11:33:06 +07:00
parent 1ac866b696
commit 9bb6e8e27c
No known key found for this signature in database
GPG key ID: 849924FEF46BD132
5 changed files with 111 additions and 466 deletions

View file

@ -1,18 +0,0 @@
import { test, expect } from '@playwright/test';
test('has title', async ({ page }) => {
await page.goto('https://playwright.dev/');
// Expect a title "to contain" a substring.
await expect(page).toHaveTitle(/Playwright/);
});
test('get started link', async ({ page }) => {
await page.goto('https://playwright.dev/');
// Click the get started link.
await page.getByRole('link', { name: 'Get started' }).click();
// Expects page to have a heading with the name of Installation.
await expect(page.getByRole('heading', { name: 'Installation' })).toBeVisible();
});

View file

@ -0,0 +1 @@
Test by Playwright!

View file

@ -0,0 +1,89 @@
import { test, expect, Page } from '@playwright/test'
test.describe.configure({ mode: 'serial' })
let page: Page
test.beforeAll(async ({ browser }) => {
page = await browser.newPage()
})
test.afterAll(async () => {
await page.reload()
await page.click("//button[@data-testid='actiontest-upload-file/']")
await page.click("(//div[@id='FileltemActiondelete']//div)[2]")
await page.click("(//button[@id='dialogDeleteConfirm']//span)[2]")
await page.close()
})
test('Login', async ({}) => {
await page.goto('http://localhost:27015/admin')
await expect(page).toHaveTitle('Sign in to EDM')
await page.fill("input[name='username']", 'admin')
await page.fill("input[name='password']", 'P@ssw0rd')
await page.click("input[name='login']")
})
test('Create Cabinet', async () => {
await page.click("//div[@id='triggerFolderCreateFileItem']")
await page.fill("(//input[@placeholder='กรอกชื่อ'])[1]", 'test-upload-file')
await page.click("(//span[text()='บันทึก'])[2]")
await expect(page.locator("(//div[@class='col'])[3]")).toContainText(
/test-upload-file/,
)
})
test('Go into Cabinet', async () => {
await page.click("//div[@data-pathname='test-upload-file/']")
await expect(
page.locator("//div[contains(@class,'flex items-center')]//div[1]"),
).toContainText(/test-upload-file/)
})
test('Create Drawer', async () => {
await page.click("//div[@id='triggerFolderCreateFileItem']")
await page.fill("(//input[@placeholder='กรอกชื่อ'])[1]", 'test-upload-file')
await page.click("(//span[text()='บันทึก'])[2]")
await expect(page.locator("(//div[@class='col'])[3]")).toContainText(
/test-upload-file/,
)
})
test('Go into Drawer', async () => {
await page.click("//div[@data-pathname='test-upload-file/test-upload-file/']")
await expect(
page.locator("//div[contains(@class,'flex items-center')]//div[3]"),
).toContainText(/test-upload-file/)
})
test('Create Folder', async () => {
await page.click("//div[@id='triggerFolderCreateFileItem']")
await page.fill("(//input[@placeholder='กรอกชื่อ'])[1]", 'test-upload-file')
await page.click("(//span[text()='บันทึก'])[2]")
await expect(page.locator("(//div[@class='col'])[3]")).toContainText(
/test-upload-file/,
)
})
test('Go into Folder', async () => {
await page.click(
"//div[@data-pathname='test-upload-file/test-upload-file/test-upload-file/']",
)
await expect(
page.locator("//div[contains(@class,'flex items-center')]//div[5]"),
).toContainText(/test-upload-file/)
})
test('Upload File', async () => {
await page.click("//div[@id='triggerFileCreateFileItem']")
await page.setInputFiles("//input[@type='file']", 'tests/file.txt')
await page.fill("//input[@placeholder='กรอกชื่อเรื่อง']", 'test-upload-file')
await page.click("(//form[@class='q-form']//button)[2]")
await page.waitForTimeout(3000)
await expect(
page.locator(
"//div[@data-pathname='test-upload-file/test-upload-file/test-upload-file/test-upload.txt']",
),
).toContainText(/test-upload-file/)
})