Skip to content

Commit

Permalink
Merge pull request #245 from STUDIO-EYE/Test/174-AboutPage-e2e
Browse files Browse the repository at this point in the history
[Test/SCRUM-174] about page partner e2e test 및 이슈 해결
  • Loading branch information
frombozztoang authored Dec 7, 2024
2 parents a479426 + dfd9013 commit 3b1d6db
Show file tree
Hide file tree
Showing 10 changed files with 326 additions and 573 deletions.
2 changes: 0 additions & 2 deletions cypress/e2e/Integration/LoginPage.cy.ts
Original file line number Diff line number Diff line change
@@ -1,6 +1,4 @@
import { login } from '@/apis/PromotionAdmin/login';
import { MSG } from '@/constants/messages';
import { PA_ROUTES } from '@/constants/routerConstants';

describe('로그인 통합 테스트', () => {
beforeEach(() => {
Expand Down
297 changes: 72 additions & 225 deletions cypress/e2e/System/AboutPage/Introduction.cy.ts

Large diffs are not rendered by default.

52 changes: 16 additions & 36 deletions cypress/e2e/System/AboutPage/Slogan.cy.ts
Original file line number Diff line number Diff line change
Expand Up @@ -3,37 +3,15 @@ import { login } from 'cypress/support/hooks';
describe('2. 회사 슬로건을 관리한다.', () => {
beforeEach(() => {
login();
// 회사 정보 모킹
cy.intercept('GET', '/api/company/information', {
statusCode: 200,
body: {
code: 200,
status: 'OK',
message: '전체 회사 정보를 성공적으로 조회하였습니다.',
data: {
id: 1,
mainOverview: '<p>STUDIO EYE IS THE BEST NEW MEDIA</p><p>PRODUCTION BASED ON OTT &amp; YOUTUBE</p>',
commitment: '<p>우리는 급변하는 뉴 미디어 시대를 반영한 콘텐츠 제작을 위해 끊임없이 고민하고 변화합니다.</p>',
address: '서울시 성동구 광나루로 162 BS성수타워 5층',
addressEnglish: '5F 162, Gwangnaru-ro, Seongdong-gu, Seoul, Republic of Korea',
phone: '02-2038-2663',
fax: '02-2038-2663',
introduction: '초기 테스트 입력',
sloganImageFileName: null,
sloganImageUrl: 'https://studio-eye-gold-bucket.s3.ap-northeast-2.amazonaws.com/Slogan.png',
detailInformation: [
{
id: 1,
key: '문의하기',
value: '사이트를 통해 간편하게 문의하세요.',
},
],
},
},
}).as('getCompanyInfo');

cy.intercept('GET', '/api/company/information').as('getCompanyInfo');
cy.visit('/promotion-admin/dataEdit/company'); // 회사 정보 편집 페이지로 이동
cy.wait('@getCompanyInfo', { timeout: 10000 });
cy.wait('@getCompanyInfo', { timeout: 10000 }).then((interception) => {
const response = interception.response?.body;
chai.expect(response).to.have.property('code', 200);
chai.expect(response.data).to.have.property('sloganImageUrl');
});
cy.intercept('PUT', '/api/company/slogan').as('updateSlogan');
});

it('PP에서 로그인 후 PA의 회사 정보 편집 페이지로 이동한다', () => {
Expand All @@ -42,6 +20,9 @@ describe('2. 회사 슬로건을 관리한다.', () => {
});

it('PA에서 회사 슬로건 이미지를 수정하고 PP에서 변경된 이미지를 확인한다', () => {
// PUT 요청 인터셉트
cy.intercept('PUT', '/api/company/slogan').as('updateSlogan');

// 두 번째 수정하기 버튼 클릭
cy.get(`[data-cy="dataEdit-Button"]`).eq(1).should('exist').and('be.visible').click({ force: true });

Expand All @@ -51,14 +32,13 @@ describe('2. 회사 슬로건을 관리한다.', () => {
// 저장하기 버튼 클릭
cy.contains('button', '저장하기', { timeout: 20000 }).should('exist').and('be.visible').click({ force: true });

// 저장 확인 알림 처리
cy.on('window:confirm', (text) => {
return true;
});

// /about 페이지 방문 후 변경된 슬로건 이미지 확인
cy.visit('/about');
cy.wait(2000); // 이미지 반영을 기다리기 위한 추가 대기 시간

cy.get('img').then(($img) => {
const imgSrc = $img.attr('src');
cy.log('Image src:', imgSrc); // 로그 출력
chai.expect(imgSrc).to.contain('studioeyeyellow');
});
cy.get('[data-cy="mission-image"]').should('have.attr', 'src').and('contain', 'Slogan.png'); // 이미지 파일 이름에 "Slogan.png" 포함 확인
});
});
Loading

0 comments on commit 3b1d6db

Please sign in to comment.