EJS
1. EJS 설치하기
EJS는 Embedded JavaScript Template의 약자, 파이썬을 flask 쓸 때 jinja를 사용해서 html에서
파이썬언어를 사용 가능하게 한 것 처럼 데이터를 html에서 바로 사용 가능하도록 보내주는것이다.
npm i ejs
2. EJS 세팅하기
app.js 부분에
app.set('view engine', 'ejs'); //ejs
app.set('views', './templates'); //템플릿을 불러올 루트폴더 지정
3. EJS 사용하기
res.status(200).json() //이런식으로 하던걸
res.render('사용할 템플릿파일이름', { data: 데이터 });
//이렇게하면 html템플릿이랑, 데이터릉 같이 전송가능하다
아래처럼 html에 데이터 값을 <%= %>로 감싸서 전송가능
함수는 <% %>
<td style="width: 20%"><%= data[i].status %></td>
JEST (테스트코드)
1. jest 설치하기
npm i jest supertest -D //jest와 supertest 추가
2. package.json 수정하기
아래처럼 하면 npm test 로 테스트 가능
{
...
"scripts": {
"test": "jest"
},
...
}
다양한 방법으로 테스트한다
--forceExit 테스트 검사완료시 강제종료
--silent 콘솔로그같은 메시지 출력x
// package.json
{
...
"scripts": {
...
"test": "jest --forceExit",
"test:silent": "jest --silent --forceExit",
"test:coverage": "jest --coverage --forceExit",
"test:unit": "jest __tests__/unit --forceExit",
"test:integration": "jest __tests__/integration --forceExit"
},
...
}
3. Jest.config.js 파일 생성
module.exports = {
// 해당 패턴에 일치하는 경로가 존재할 경우 테스트를 하지 않고 넘어갑니다.
"testPathIgnorePatterns": ["/node_modules/"],
// 테스트 실행 시 각 TestCase에 대한 출력을 해줍니다.
verbose: true,
}
4. 테스트 코드 파일 생성
테스트할 파일이름.spec.js
5. 테스트 예시
const { isEmail } = require('./validation');
test('테스트가 성공하는 상황', () => {
expect(isEmail('이메일이 아니에요')).toEqual(false);
});
test('테스트가 실패하는 상황', () => {
expect(isEmail('my-email@domain.com')).toEqual(true);
});
5. 테스트 진행
2. package.json 수정하기 로 올라가보면 test:unit 지정한대로 실행됨
npm run test:unit
'내일배움캠프 4기 - Node.js' 카테고리의 다른 글
[8 - 5일차][3차 프로젝트] KPT회고 (0) | 2023.01.06 |
---|---|
[8 - 3일차] 내가 쓰는 Git 명령어 모음 (0) | 2023.01.05 |
[8 - 1일차] 케이스 스타일, 3계층 아키텍쳐 패턴 (0) | 2023.01.02 |
[7주차 WIL] (0) | 2023.01.02 |
[3차 프로젝트] S.A (0) | 2022.12.30 |