wayground logo

Free Printable Worksheets

Font size

S
M
L
XL
Worksheets

VTI - CICD

Total questions: 81

Worksheet time: 1hrs 22mins

Name
Class
Date
1.

CI là viết tắt của?

a)

Continuous Implementation

b)

Continuous Integration

c)

Continuous Invention

d)

Container Integration

2.

Mục tiêu chính của Continuous Integration là gì?

a)

Giảm thời gian phát triển

b)

Tự động hóa việc quản lý user

c)

Tích hợp code liên tục để phát hiện lỗi sớm

d)

Gửi email cho khách hàng

3.

Khi nào nên chạy pipeline CI?

a)

Mỗi tháng

b)

Khi deploy

c)

Sau khi code đã chạy trên production

d)

Sau mỗi lần commit lên repository

4.

Thành phần nào KHÔNG phải là công cụ CI/CD?

a)

Jenkins

b)

GitHub Actions

c)

Travis CI

d)

MongoDB

5.

Continuous Delivery là gì?

a)

Quản lý phần mềm theo tháng

b)

Luôn sẵn sàng để deploy phần mềm bất cứ lúc nào

c)

Giao tiếp liên tục với khách hàng

d)

Lưu trữ phần mềm tạm thời

6.

CI/CD giúp ích gì cho nhóm phát triển phần mềm?

a)

Tăng chi phí

b)

Tự động hóa, giảm lỗi và tăng tốc độ phát triển

c)

Thay thế hoàn toàn tester

d)

Loại bỏ nhu cầu code review

7.

Công cụ nào sau đây được sử dụng phổ biến cho CI?

a)

Figma

b)

Jenkins

c)

Postman

d)

Excel

8.

Deployment Pipeline là gì?

a)

Chuỗi commit từ Git

b)

Chuỗi các bước kiểm tra, build, test, deploy tự động

c)

Luồng design UI

d)

Tài liệu mô tả quy trình dự án

9.

CI/CD có thể tích hợp với công cụ nào để test tự động?

a)

Jest

b)

Mocha

c)

Selenium

d)

Tất cả các công cụ trên

10.

YAML thường được dùng trong CI/CD để làm gì?

a)

Thiết kế UI

b)

Quản lý người dùng

c)

Cấu hình pipeline

d)

Viết tài liệu

11.

Tại sao kiểm thử tự động là quan trọng trong CI?

a)

Đảm bảo bản build không chứa lỗi trước khi merge

b)

Tăng kích thước file

c)

Giảm thời gian deploy

d)

Giúp frontend đẹp hơn

12.

"Artifact" trong CI/CD nghĩa là gì?

a)

Một tài liệu mô tả lỗi

b)

Một file được tạo ra sau quá trình build

c)

Một loại script

d)

Một log của GitHub

13.

Trong một pipeline CI điển hình, bước nào đến sau khi kiểm thử (test)?

a)

Merge code

b)

Rollback

c)

Build

d)

Deploy

14.

Lợi ích của việc dùng CI/CD là?

a)

Tự động hóa thủ công test

b)

Loại bỏ hoàn toàn lỗi

c)

Rút ngắn vòng đời phát hành phần mềm

d)

Giảm chi phí

15.

Điểm thử (test)?

a)

Merge code

b)

Rollback

c)

Build

d)

Deploy

16.

Lợi ích của việc dùng CI/CD là?

a)

Tự động hóa thủ công test

b)

Loại bỏ hoàn toàn lỗi

c)

Rút ngắn vòng đời phát hành phần mềm

d)

Không cần DevOps nữa

17.

Git là gì trong CI/CD?

a)

Công cụ thiết kế CI/CD

b)

Hệ thống kiểm soát phiên bản được tích hợp trong CI

c)

Một loại container

d)

Một IDE

18.

Webhook dùng để làm gì trong CI/CD?

a)

Tự động trigger pipeline khi có thay đổi mã nguồn

b)

Tạo service trong Kubernetes

c)

Triển khai database

d)

Gửi email hàng tuần

19.

Continuous Deployment khác Continuous Delivery ở điểm nào?

a)

CD là viết tắt của Continuous Download

b)

Continuous Deployment tự động triển khai lên production mà không cần thủ công

c)

Continuous Delivery không có pipeline

d)

Không có khác biệt

20.

Tệp nào thường chứa định nghĩa pipeline trong GitLab CI?

a)

pipeline.yaml

b)

gitlab-ci.yml

c)

build.json

d)

test.js

21.

Lợi ích lớn nhất của CI là gì?

a)

Triển khai nhanh hơn

b)

Có thêm log đẹp

c)

Phát hiện lỗi sớm trong quá trình phát triển

d)

Tạo tài liệu tự động

22.

Khi nào nên chạy lại pipeline CI?

a)

Khi merge pull request

b)

Khi build fail

c)

Khi sửa lỗi

d)

Tất cả các trường hợp trên

23.

Continuous Delivery (CD) đảm bảo điều gì?

a)

Mã nguồn không có lỗi

b)

Tự động rollback khi cần

c)

Mọi thay đổi đều có thể triển khai bất cứ lúc nào

d)

Không cần CI nữa

24.

CD khác gì với CI?

a)

CD liên quan đến kiểm thử code

b)

CD tập trung vào giai đoạn sau khi code đã tích hợp

c)

CD là tên gọi cũ của CI

d)

CD chỉ dùng trong backend

25.

Công cụ nào phổ biến dùng cho CD?

a)

Jenkins

b)

GitLab CI/CD

c)

ArgoCD

d)

Cả 3 trên

26.

Mục tiêu chính của CD là?

a)

Tự động kiểm tra bảo mật

b)

Giúp build chạy nhanh hơn

c)

Tự động kiểm thử giao diện

d)

Tự động deploy nhanh, an toàn

27.

CD giúp giảm rủi ro triển khai bằng cách nào?

a)

Bỏ qua môi trường staging

b)

Kiểm thử liên tục và deploy từng phần

c)

Gộp mọi tính năng vào một lần release

d)

Tránh dùng version control

28.

Quy trình nào điển hình trong CD?

a)

Code → Test → Approve → Deploy

b)

Build → Approve → Debug

c)

Commit → Run → Commit lại

d)

Login → Deploy → Merge

29.

CD yêu cầu môi trường như thế nào để hoạt động hiệu quả?

a)

Không có môi trường staging

b)

Có môi trường staging/test gần giống production

c)

Môi trường chạy độc lập

d)

Chạy trên máy dev

30.

Continuous Deployment là gì?

a)

Triển khai thủ công

b)

Triển khai tự động đến production không cần xác nhận

c)

Triển khai khi có lỗi

d)

Triển khai mỗi tháng

31.

Tại sao cần phê duyệt (approval) trong CD?

a)

Để kiểm soát chi phí

b)

Đảm bảo chỉ deploy khi đã kiểm tra đủ

c)

Tăng độ phức tạp

d)

Bắt buộc trong GitHub

32.

Blue-Green Deployment là gì?

a)

Kỹ thuật build tối ưu

b)

Chạy song song 2 phiên bản ứng dụng để chuyển đổi mượt mà

c)

Triển khai rollback

d)

Chạy CI không cần test

33.

Canary Deployment dùng để?

a)

Cài nhiều ứng dụng

b)

Deploy từng phần nhỏ để kiểm tra an toàn

c)

Tăng dung lượng bộ nhớ

d)

Deploy mọi thứ cùng lúc

34.

Rollback trong CD dùng để?

a)

Làm sạch log

b)

Deploy bản mới

c)

Trở về bản ổn định khi gặp lỗi

d)

Xoá repo

35.

Thành phần nào thường không thuộc quy trình CD?

a)

Kiểm thử tự động

b)

Build container

c)

Quản lý DNS

d)

Thiết kế UI

36.

Một lợi ích của CD là gì?

a)

Deploy nhanh, ít rủi ro, phản hồi sớm từ người dùng

b)

Giảm hiệu suất server

c)

Giảm số developer cần thiết

d)

Tăng chi phí duy trì

37.

Tại sao nên tách CI và CD?

a)

Để tiết kiệm code

b)

Để dễ quản lý và phát hiện lỗi đúng giai đoạn

c)

Vì chúng không liên quan

d)

Không cần tách

38.

"Approval Gate" trong CD là gì?

a)

Firewall bảo mật

b)

Bước yêu cầu người kiểm duyệt đồng ý trước khi deploy

c)

IP Whitelist

d)

Build cache

39.

Công cụ nào KHÔNG dùng để triển khai CD?

a)

Jenkins

b)

Spinnaker

c)

Kubernetes

d)

Canva

40.

Công cụ nào KHÔNG dùng để triển khai CD?

a)

Jenkins

b)

Spinnaker

c)

Kubernetes

d)

Canva

41.

CD thường được tích hợp với công nghệ nào?

a)

Container (Docker, Podman)

b)

Figma

c)

Excel

d)

FTP client

42.

Bạn cần gì để Continuous Deployment hoạt động hiệu quả?

a)

Manual test

b)

Quy trình approval dài dòng

c)

Đội ngũ vận hành đông

d)

CI mạnh + test tự động tin cậy

43.

GitOps là gì trong bối cảnh CD?

a)

Git có thể deploy ứng dụng qua commit

b)

Git để quản lý ảnh sản phẩm

c)

Git chuyên dùng frontend

d)

Git là CI tool

44.

Vault được sử dụng để làm gì?

a)

Tự động scale ứng dụng

b)

Lưu trữ và quản lý secrets an toàn

c)

Theo dõi log hệ thống

d)

Deploy ứng dụng lên cloud

45.

Công ty nào phát triển HashiCorp Vault?

a)

Docker Inc

b)

Red Hat

c)

HashiCorp

d)

CNCF

46.

Vault hỗ trợ loại backend lưu trữ nào?

a)

Redis

b)

Consul

c)

RabbitMQ

d)

PostgreSQL

47.

Khi Vault mới khởi động, trạng thái ban đầu của nó là gì?

a)

Sealed

b)

Unlocked

c)

Running

d)

Deployed

48.

Vault sử dụng cơ chế gì để giải mã dữ liệu?

a)

Token

b)

Key Rotation

c)

Master Key & Unseal Key

d)

Password

49.

Docker Registry dùng để làm gì?

a)

Lưu trữ container logs

b)

Phân phối image Docker

c)

Lưu trữ YAML file

d)

Tạo volume

50.

Docker Hub là gì?

a)

Một loại Dockerfile

b)

Một registry public cho Docker image

c)

Một công cụ CI

d)

Một OS

51.

Câu lệnh nào để push image Docker lên registry?

a)

docker run

b)

docker save

c)

docker push

d)

docker login

52.

Câu lệnh để login vào private registry Docker?

a)

docker login

b)

docker auth

c)

docker connect

d)

docker register

53.

Docker Registry mặc định sử dụng giao thức nào?

a)

HTTP

b)

FTP

c)

HTTPS

d)

SSH

54.

Harbor là gì?

a)

Một loại container

b)

Một nền tảng quản lý Docker image registry

c)

Một file cấu hình

d)

Một pod đặc biệt

55.

Ai là nhà phát triển chính của Harbor?

a)

Docker Inc

b)

VMware

c)

Red Hat

d)

Google

56.

Harbor hỗ trợ xác thực người dùng qua?

a)

OAuth

b)

LDAP

c)

Local User

d)

Tất cả đều đúng

57.

phát triển chính của Harbor?

a)

Docker Inc

b)

VMware

c)

Red Hat

d)

Google

58.

Harbor hỗ trợ xác thực người dùng qua?

a)

OAuth

b)

LDAP

c)

Local User

d)

Tất cả đều đúng

59.

Harbor cung cấp tính năng nào sau đây?

a)

Scan bảo mật cho Docker image

b)

Thiết kế giao diện

c)

Tạo repo Git

d)

CI pipeline

60.

Tính năng replication trong Harbor là gì?

a)

Tự động build image

b)

Đồng bộ image giữa các registry

c)

Gửi log

d)

Backup file YAML

61.

Harbor hỗ trợ phân quyền qua cơ chế nào?

a)

Label

b)

Role-based Access Control (RBAC)

c)

Token

d)

Cron

62.

Port mặc định của giao diện web Harbor là?

a)

5000

b)

8080

c)

443

d)

3000

63.

Harbor hỗ trợ lưu trữ image từ registry nào?

a)

Docker Hub

b)

Google Container Registry

c)

AWS ECR

d)

Tất cả các lựa chọn trên

64.

Harbor có thể cài đặt thông qua?

a)

Helm

b)

Docker Compose

c)

Kubernetes

d)

Cả 3 lựa chọn trên

65.

Để dùng Harbor trong production, ta cần bật tính năng nào?

a)

Debug

b)

HTTPS và xác thực

c)

Tự động pull

d)

Gỡ bảo mật

66.

Plugin nào cần thiết để Jenkins tích hợp với GitHub?

a)

Docker Plugin

b)

GitHub Integration Plugin

c)

Git Plugin

d)

LDAP Plugin

67.

File nào được Jenkins sử dụng để định nghĩa pipeline?

a)

jenkins.yml

b)

Jenkinsfile

c)

pipeline.json

d)

job.config

68.

Jenkins có thể lưu trữ build artifacts ở đâu?

a)

Trong GitHub

b)

Trong Jenkins workspace

c)

Trên trình duyệt

d)

Trong Jenkins plugin folder

69.

Cách phổ biến nhất để chạy script trong build step Jenkins là gì?

a)

JavaScript script

b)

Bash shell hoặc Windows batch

c)

HTML code

d)

YAML playbook

70.

Câu lệnh trong pipeline để checkout code từ Git là gì?

a)

git_fetch()

b)

get_code()

c)

checkout scm

d)

git checkout main

71.

Muốn tự động build khi có commit lên GitHub, bạn cần gì?

a)

Manual trigger

b)

Slack bot

c)

GitHub Webhook

d)

Jenkins restart

72.

Stage nào thường đứng đầu trong một Jenkins pipeline?

a)

Manual trigger

b)

Slack bot

c)

GitHub Webhook

d)

Jenkins restart

73.

Stage nào thường đứng đầu trong một Jenkins pipeline?

a)

Deploy

b)

Build

c)

Checkout code

d)

Notify

74.

Jenkins lưu cấu hình job ở đâu?

a)

Trong database

b)

Trong file cấu hình XML

c)

Trong Jenkinsfile

d)

Trong GitHub repo

75.

Jenkins hỗ trợ chạy build trên nhiều máy bằng tính năng gì?

a)

Multithreading

b)

Parallel Build

c)

Distributed Build với Jenkins agent

d)

Server chaining

76.

Bạn muốn Jenkins gửi thông báo khi build fail, nên dùng gì?

a)

Cronjob

b)

Email Extension Plugin

c)

Webpack

d)

GitHub Actions

77.

Khi Jenkins bị treo vì quá nhiều job, giải pháp nào sau đây nên dùng?

a)

Tăng RAM

b)

Tăng worker thread

c)

Giới hạn build queue và dùng agent phù hợp

d)

Reinstall Jenkins

78.

Từ khóa post trong Jenkinsfile dùng để làm gì?

a)

Gửi code lên GitHub

b)

Chạy hành động sau stage

c)

Ghi log

d)

Build Docker

79.

Bạn cần cấu hình job chỉ chạy mỗi thứ Hai lúc 9h sáng. Cron format đúng là?

a)

0 9 * * 1

b)

0 0 1 1 *

c)

0 9 1 * *

d)

9 0 * * 1

80.

Muốn dùng Jenkins với Docker, bạn cần làm gì?

a)

Cài Docker Plugin

b)

Mở port Jenkins

c)

Thêm user Jenkins vào group admin

d)

Tạo cron trong Dockerfile

81.

Làm sao để tránh các secrets (API key, token) bị lộ khi dùng Jenkinsfile?

a)

Hardcode vào Jenkinsfile

b)

Lưu ở repo

c)

Dùng Jenkins Credentials

d)

Mã hóa bằng base64