inflearn logo
강의

Khóa học

Chia sẻ kiến thức

[Cập nhật] Sách giáo khoa Node.js - Từ cơ bản đến thực hành dự án

Sử dụng supertest

expect 질문입니다.

Đã giải quyết

459

lch9502

34 câu hỏi đã được viết

1

안녕하세요 expect관련 함수에 대해서 질문이 있습니다.

describe('POST /join', () => {
  test('로그인 안 했으면 가입', (done) => {
    request(app)
      .post('/auth/join')
      .send({
        email: 'zerohch0@gmail.com',
        nick: 'zerocho',
        password: 'nodejsbook',
      })
      .expect('Location', '/')
      .expect(302, done);
  });
});

위의 함수에서  expect들이 나타내는게

res.status(302).redirect(‘/’) 라는것은 알겠는데,

정확하게 이해를 못해서 질문을 드립니다.

expect함수는 expect(value) 형태로 사용하는거라고 알고있는데 인수를 2개씩 써도 상관이 없는건가요??
그리고 'location',  '/', '302'의 순서는 상관이 없나요?

expect mongodb redirect nodejs mysql Sequelize

Câu trả lời 5

2

zerocho

[] 부분은 옵션입니다.

공식문서에 나온 형식과 자리만 맞는다면 메서드 체이닝(.으로 메서드 연달아 쓰는 것)간에는 문제없습니다. 

1

lch9502

supertest 공식문서를 읽어보다가 궁금증이 생겨서 한번 더 질문 드려요..

공식문서에 expect가 이런식으로 적혀있는데 여기서 [,fn] 이 의미하는 것은 펑션을 생략해도 되고 붙여도 된다는 의미로 이해해도 될까요?
실제로 코드를 

  test('로그인 수행', async (done) => {
    request(app)
      .post('/auth/login')
      .send({
        email: 'zerohch0@gmail.com',
        password: 'nodejsbook',
      })
      .expect(302)
      .expect('Location', '/', done);
  });

이런식으로 바꿔도 테스트에는 영향이 없던데 꼭 공식문서의 예시처럼 맞춰야하는 걸까요??

1

zerocho

아아 jest의 expect 말씀하셨던거군요. supertest의 expect랑 다릅니다. 사용방법도 다르게 익히셔야 합니다

1

zerocho

expect 메서드가 expect(value) 형태로 사용한다고 어디에 나와있나요?

expect는 expect(header, value) 또는 expect(statusCode, done)입니다.

location / 302 순서는 지키셔야 합니다.

0

lch9502

test('1 + 1 은 2일겁니다.', () => {

    expect(1 + 1).toEqual(2);

});

 

이런 식으로  expect는 matcher함수와 같이 쓰는게 아닌가요??

혹시 모듈 자체를 jest랑 supertest랑 전혀 다르게 생각해서 안에 쓰이는 함수의 형태도 다른 것인가요??

리눅스 노드 설치시 패키지

0

162

0

socket.js 에서 referer로부터 roomId를 가져올 때

0

907

3

스트리밍 방식으로 대용량 파일 업로드 & 다운로드 관련 질문

0

2281

2

a[title] 질문드립니다

0

376

1

리뉴얼 강의 및 공부 방법

0

583

1

jwt decode

0

1130

1

node.js 교과서 3판 질문드립니다

0

392

1

passport와 jwt

0

434

1

리뉴얼 강의

0

421

2

혹시 Node.js 교과서 3판 이북은 언제 나오나요?

0

355

1

몽고디비 사용자도 MYSQL부분을 들어야 하나요???

0

482

1

sql 쿼리 로그는 어떤 모듈이 작성하나요?

0

506

2

nunjucks res.render('error'); 작동을 안합니다.

0

512

1

질문있습니다.

0

348

1

multer 한글 파일 업로드시 파일명이 깨져요.

1

3536

1

수업자료는 어디있나요?

0

368

1

질문 있습니디

0

237

1

multer 사용시 file 외 name값은 못받나용?

0

417

1

코드 중복 부분 질문드립니다.

0

299

1

api 만드는 이유 질문드립니다.

0

288

1

Strategy의 done에 대해 질문드립니다.

0

367

1

안녕하세요 fs 권한 관련 질문드립니다

0

451

1

시퀄라이즈 연결질문...

0

500

2

res.setHeader vs res.cookie

0

1789

3