๐ค ์์งlog ๐ค
[CI/CD study] - 12. code coverage ( Jest ) ์ค์น ํ ์คํธ ๋ณธ๋ฌธ
code coverage ์ค next, react์ ์ฐ๊ด์ฑ์ด ๋์ Jest๋ฅผ ์ค์นํด๋ณด๊ฒ ์ต๋๋ค.
npm install --save-dev jest
Jest ์ค์น
๊ทธ๋ค์ subtraction.js ์ด๋ผ๋ ํ์ผ ์์ฑ
function subtraction(a, b) {
return a - b;
}
module.exports = subtraction;
ํ์ผ์์ ์ฝ๋๋ฅผ ์์ฑ
๊ทธ ํ subtraction.test.js ์ด๋ผ๋ ํ์ผ ์์ฑ
const subtraction = require('./subtraction');
test('subtracts 4 - 2 to equal 2', () => {
expect(subtraction(4, 2)).toBe(2);
});
์ฝ๋ ์์ฑ
{
"scripts":
{
"test": "jest"
}
}
๊ทธ ๋ค์ package.json ํ์ผ๋ก ๊ฐ์ ์ฝ๋ ์ถ๊ฐ
์์ ๊ฐ์ด ์์ฑ
* "scripts" ์์ ๋ฃ์ด์ฃผ๊ธฐ
โจ๏ธ npm run test
๋ฅผ ์คํํ๊ณ ๋ค์๊ณผ ๊ฐ์ด PASS ๋ฌธ๊ตฌ๊ฐ ๋์จ๋ค๋ฉด
Jest ์ค์น ์๋ฃ โญ๏ธ
stage('Test') {
steps {
script {
sh 'npm run test'
}
}
}
Jenkinsfile์ ์ฝ๋ ์ถ๊ฐ
์ง๊ธ ๊น์ง ์ ๋ฐ๋ผ ์ค์ จ๋ค๋ฉด ์ด๋ฐ ๋ชจ์์ด ๋์ต๋๋ค.
gitea์ push๋ฅผ ํด์ฃผ๊ณ Jenkins๋ก ๋์๊ฐ๊ธฐ
sonarqube ๋ค์ test๋ผ๋ ํญ๋ชฉ์ด ์๊ธฐ๊ณ ,
๋น๋ ์๋ฃ โญ๏ธ
โค๏ธ ๋์์ฃผ์ ๋ถ :
728x90
'๐ DevOps' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[Front-end] CI/CD (0) | 2022.10.31 |
---|---|
[CI/CD study] - 13. Docker-Compose ์ Nginx ์ค์น (0) | 2022.10.19 |
[CI/CD study] - 11. NPM Build (0) | 2022.10.14 |
[CI/CD study] - 10. Jenkins์ Sonarqube ์ฐ๋ํ๊ธฐ (0) | 2022.10.14 |
[CI/CD study] - 9. Jenkins File (0) | 2022.10.14 |