From b7ed7ef4f16096884ea7ad26322d9e16c5d7b9df Mon Sep 17 00:00:00 2001 From: Alex Velichko Date: Tue, 6 Feb 2024 02:09:49 +0300 Subject: [PATCH] feat(tests): updated Create duplicate issues test (#4542) Signed-off-by: Alex Velichko --- tests/sanity/tests/model/tracker/issues-page.ts | 3 ++- tests/sanity/tests/tracker/issues-duplicate.spec.ts | 7 +++++++ tests/sanity/tests/utils.ts | 8 ++++++++ 3 files changed, 17 insertions(+), 1 deletion(-) diff --git a/tests/sanity/tests/model/tracker/issues-page.ts b/tests/sanity/tests/model/tracker/issues-page.ts index e456750053..5c865600bb 100644 --- a/tests/sanity/tests/model/tracker/issues-page.ts +++ b/tests/sanity/tests/model/tracker/issues-page.ts @@ -2,7 +2,7 @@ import { expect, type Locator, type Page } from '@playwright/test' import { NewIssue } from './types' import path from 'path' import { CommonTrackerPage } from './common-tracker-page' -import { iterateLocator } from '../../utils' +import { attachScreenshot, iterateLocator } from '../../utils' export class IssuesPage extends CommonTrackerPage { readonly page: Page @@ -85,6 +85,7 @@ export class IssuesPage extends CommonTrackerPage { if (closeNotification) { await this.closeNotification(this.page) } + await attachScreenshot(`createdNewIssue-${data.title}.png`, this.page) } async fillNewIssueForm (data: NewIssue): Promise { diff --git a/tests/sanity/tests/tracker/issues-duplicate.spec.ts b/tests/sanity/tests/tracker/issues-duplicate.spec.ts index bd303188ac..27e76808be 100644 --- a/tests/sanity/tests/tracker/issues-duplicate.spec.ts +++ b/tests/sanity/tests/tracker/issues-duplicate.spec.ts @@ -38,10 +38,17 @@ test.describe('Tracker duplicate issue tests', () => { const issuesPage = new IssuesPage(page) await issuesPage.modelSelectorAll.click() await issuesPage.createNewIssue(firstIssue) + // TODO need to delete if issue created successfully + await trackerNavigationMenuPage.openTemplateForProject('Default') + await trackerNavigationMenuPage.openIssuesForProject('Default') + await issuesPage.searchIssueByName(firstIssue.title) const firstIssueId = await issuesPage.getIssueId(firstIssue.title) await issuesPage.createNewIssue(secondIssue) + // TODO need to delete if issue created successfully + await trackerNavigationMenuPage.openTemplateForProject('Default') + await trackerNavigationMenuPage.openIssuesForProject('Default') await issuesPage.searchIssueByName(secondIssue.title) const secondIssueId = await issuesPage.getIssueId(secondIssue.title, 1) diff --git a/tests/sanity/tests/utils.ts b/tests/sanity/tests/utils.ts index e1da17c852..2db33bcf9a 100644 --- a/tests/sanity/tests/utils.ts +++ b/tests/sanity/tests/utils.ts @@ -1,4 +1,5 @@ import { Browser, Locator, Page, expect } from '@playwright/test' +import { allure } from 'allure-playwright' export const PlatformURI = process.env.PLATFORM_URI as string export const PlatformTransactor = process.env.PLATFORM_TRANSACTOR as string @@ -74,3 +75,10 @@ export async function * iterateLocator (locator: Locator): AsyncGenerator { + await allure.attachment(name, await page.screenshot(), { + contentType: 'image/png' + }) + await page.screenshot({ path: `screenshots/${name}` }) +}