Kiến thức cơ bản về tính năng Tích hợp liên tục

Tích hợp liên tục (CI) là một phương pháp phát triển phần mềm trong đó nhà phát triển thường xuyên hợp nhất các thay đổi về mã vào một kho lưu trữ trung tâm, sau đó các bản dựng và hoạt động kiểm thử tự động sẽ chạy.

Bạn có thể thiết lập một hệ thống CI cơ bản để ngăn chặn các thay đổi mới làm hỏng bản dựng sau khi hợp nhất. Bạn có thể lập trình một hệ thống CI nâng cao hơn để tự động kiểm thử ứng dụng và đảm bảo ứng dụng hoạt động như mong đợi trong nhiều môi trường, chẳng hạn như cấp API, kích thước màn hình và nền tảng.

Sơ đồ cho thấy cách nhiều nhà phát triển yêu cầu thay đổi mã và cách hệ thống CI kiểm tra các yêu cầu đó trước khi hợp nhất vào kho lưu trữ mã chính.
Hình 1. Hệ thống CI giữ cho kho lưu trữ mã hoạt động tốt bằng cách chạy các bước kiểm tra trước khi hợp nhất.

Tài liệu này trình bày những chiến lược phổ biến mà nhà phát triển sử dụng để thiết lập hệ thống CI hiệu quả cho các dự án Android. Những nguyên tắc này mang tính chung và áp dụng cho hầu hết các giải pháp.

Ví dụ điển hình

Một hệ thống CI điển hình tuân theo quy trình làm việc hoặc quy trình, có thể như sau:

  1. Hệ thống CI phát hiện thấy một thay đổi trong mã, thường là khi nhà phát triển tạo một yêu cầu lấy dữ liệu, còn gọi là "danh sách thay đổi" hoặc "yêu cầu hợp nhất".
  2. Lớp này cấp phép và khởi động máy chủ để chạy quy trình công việc.
  3. Android Studio sẽ tìm nạp mã cũng như các công cụ như SDK Android hoặc hình ảnh trình mô phỏng nếu cần.
  4. Tệp này tạo dự án bằng cách chạy một lệnh nhất định, chẳng hạn như ./gradlew build.
  5. Thư viện này chạy các bài kiểm thử cục bộ bằng cách chạy một lệnh nhất định, chẳng hạn như chạy ./gradlew test.
  6. Khởi động các trình mô phỏng và chạy kiểm thử đo lường.
  7. Công cụ này tải các cấu phần phần mềm như kết quả kiểm thử và tệp APK lên.
Sơ đồ thể hiện quy trình công việc CI cơ bản
Hình 2. Quy trình CI cơ bản

Lợi ích của CI

CI có các ưu điểm sau:

  • Cải thiện chất lượng phần mềm: CI có thể giúp cải thiện chất lượng phần mềm bằng cách xác định và khắc phục vấn đề ngay từ đầu. Điều này có thể giúp giảm số lượng lỗi trong bản phát hành phần mềm và cải thiện trải nghiệm tổng thể của người dùng.
  • Giảm nguy cơ bản dựng bị hỏng: Khi tự động hoá quy trình xây dựng bằng CI, bạn có thể tránh được các bản dựng bị hỏng bằng cách giải quyết các vấn đề sớm hơn trong quá trình này.
  • Tăng độ tin cậy về các bản phát hành: CI có thể giúp đảm bảo rằng mỗi bản phát hành đều ổn định và sẵn sàng cho việc phát hành chính thức. Bằng cách chạy kiểm thử tự động, CI có thể xác định mọi sự cố tiềm ẩn trước khi bạn phát hành công khai.
  • Cải thiện hoạt động giao tiếp và cộng tác: Bằng cách cung cấp một địa điểm tập trung để nhà phát triển chia sẻ mã và kết quả kiểm thử, CI có thể giúp các nhà phát triển và các thành viên khác trong nhóm dễ dàng làm việc cùng nhau và theo dõi tiến trình.
  • Tăng năng suất: CI có thể giúp tăng năng suất của nhà phát triển bằng cách tự động hoá các công việc thường tốn thời gian và dễ xảy ra lỗi.

Tài liệu đọc thêm

Hãy đọc các trang sau để biết thêm thông tin về cách bạn có thể dùng tính năng tích hợp liên tục để cải thiện quá trình phát triển cho ứng dụng: