OmniLab ATS là công cụ kiểm thử mà nhà phát triển Android và kỹ sư kiểm thử có thể sử dụng để triển khai giao diện người dùng để chạy các bộ thử nghiệm Android chuẩn, chẳng hạn như Bộ kiểm tra tính tương thích (CTS) với Android. Công cụ này hoạt động như một giao diện web cho nhiều khung kiểm thử, chẳng hạn như Liên đoàn Thương mại (TF) và Google AdMob, cho phép bạn chạy CTS và thử nghiệm nhiều thiết bị trên một tập hợp thiết bị thử nghiệm với quá trình thiết lập tối thiểu, cũng như thiết lập lịch biểu để liên tục chạy các thử nghiệm.
Thiết lập OmniLab ATS
Phần này giải thích cách cài đặt và thiết lập OmniLab ATS.
OmniLab ATS sử dụng mã nguồn từ các vị trí sau:
- Thử nghiệm ATS của OmniLab mã nguồn
- Mã nguồn Cụm TradeFed
Cài đặt OmniLab ATS
Tuân thủ mọi yêu cầu về phần cứng và phần mềm đối với bộ kiểm thử mà bạn chạy.
Bạn có thể xem các yêu cầu đối với CTS trên trang source.android.com.
Không có yêu cầu bổ sung nào về phần cứng đối với OmniLab ATS, nhưng bạn nên sử dụng yêu cầu máy chủ lưu trữ CTS làm điểm bắt đầu.
Có 2 cách để cài đặt OmniLab ATS:
- Chạy chương trình trình cài đặt.
- Cài đặt theo cách thủ công, quá trình này yêu cầu bạn phải cài đặt nhiều chương trình và tài nguyên khác.
Cài đặt bằng chương trình cài đặt
Trên Ubuntu 20.04 trở lên, chương trình cài đặt sẽ cài đặt và định cấu hình tất cả các chương trình và tài nguyên cần thiết để chạy OmniLab ATS.
Cách sử dụng chương trình cài đặt:
Chạy chương trình trình cài đặt:
curl https://storage.googleapis.com/android-mtt.appspot.com/prod/install.sh | bash
Chạy
mtt version
để kiểm tra phiên bản đã cài đặt của OmniLab ATS CLI.
Cài đặt theo cách thủ công
Cài đặt Docker
Làm theo hướng dẫn cài đặt Docker Community Edition (CE) trên máy Linux.
Làm theo các bước sau khi cài đặt để quản lý Docker với tư cách là người dùng không phải người dùng gốc.
Bạn có thể cần khởi động lại cửa sổ dòng lệnh hoặc đăng xuất rồi đăng nhập lại để những thay đổi về quyền có hiệu lực.
Cài đặt Python 3
OmniLab ATS CLI được xác minh dựa trên Python các phiên bản 3.7 đến 3.11.
Đối với Ubuntu 16.04 trở xuống, trước tiên hãy thêm kho lưu trữ cho Python 3 bằng cách thực hiện một trong số sau:
Chạy lệnh này:
sudo add-apt-repository ppa:deadsnakes/ppa
Xây dựng và cài đặt kho lưu trữ khỏi nguồn.
Để cài đặt Python 3, hãy chạy các lệnh sau:
sudo apt-get update
sudo apt install python3 python3-distutils
Để cài đặt một phiên bản Python 3 cụ thể (ví dụ: 3.10), hãy chạy các lệnh sau thay vào đó:
sudo apt-get update
sudo apt install python3.10 python3.10-distutils
Mua OmniLab ATS CLI
Tải gói giao diện dòng lệnh (CLI) xuống tại đây.
Khởi động OmniLab ATS
Khởi động OmniLab ATS bằng lệnh sau:
mtt start
Vào lần đầu tiên khởi động, giao diện người dùng có thể mất vài phút mới xuất hiện. CLI
hiển thị một URL web để truy cập vào giao diện người dùng trong một trình duyệt. Theo mặc định, URL web là
localhost:8000
. Nếu cần, bạn có thể thay đổi cổng mặc định khi khởi động bằng
cờ --port
.
Nếu có một phiên bản mới hơn, bạn có thể cập nhật lên phiên bản hiện tại. Bạn có thể hãy chọn Ghi chú phát hành cho những bản phát hành mới nhất.
Để cập nhật lên phiên bản hiện tại, hãy chạy:
mtt start --force_update
Để dừng ứng dụng, hãy chạy:
mtt stop
Để xem danh sách các lệnh khác, hãy sử dụng:
mtt --help
Sao lưu và khôi phục cơ sở dữ liệu
Để sao lưu cơ sở dữ liệu OmniLab ATS, hãy dừng ứng dụng rồi chạy lệnh sau:
Thao tác này sẽ sao lưu cơ sở dữ liệu hiện tại vào tệp TAR có tên mtt-backup.tar
trong
thư mục gốc của bạn:
docker run --rm --mount source=mtt-data,target=/data -v ~:/out ubuntu bash -c "cd /data && tar cvf /out/mtt-backup.tar ."
Để khôi phục, hãy chạy lệnh sau trước khi khởi động ứng dụng:
docker run --rm --mount source=mtt-data,target=/data -v ~:/out ubuntu bash -c "cd /data && tar xvf /out/mtt-backup.tar"
Trình hướng dẫn Cài đặt
Sau khi bạn cài đặt và chạy OmniLab ATS lần đầu tiên, Trình hướng dẫn thiết lập sẽ thực hiện cho bạn vài bước giúp bạn tuỳ chỉnh công cụ này cho phù hợp với môi trường của mình. Bất kỳ hạng nào bạn có thể định cấu hình lại các thay đổi bạn thực hiện tại đây sau thông qua trang Cài đặt.
Khôi phục bản sao lưu cấu hình
Nếu bạn có tệp cấu hình được sao lưu từ một máy chủ lưu trữ OmniLab ATS khác, bạn có thể tải tệp lên để sao chép bất kỳ cấu hình nào được sửa đổi từ máy chủ đó bằng cách nhấp vào nút Tải tệp lên.
Hình 1. Khôi phục bản sao lưu cấu hình.
Đặt tài khoản dịch vụ mặc định
Bạn có thể thiết lập tài khoản dịch vụ mà OmniLab ATS sử dụng theo mặc định khi truy cập vào tài nguyên của bạn (ví dụ: Google Cloud Storage, Google Drive). Để xác thực tài khoản dịch vụ của bạn, hãy nhấp vào Tải khoá tài khoản dịch vụ lên rồi chọn tệp khoá JSON cho tài khoản dịch vụ của bạn.
Hình 2. Đang thiết lập tài khoản dịch vụ.
Khi tài khoản dịch vụ được xác thực thành công, email tài khoản xuất hiện ở góc trên cùng bên phải trang. Để thay đổi dịch vụ tài khoản, hãy nhấp vào tên tài khoản, xoá tài khoản mặc định hiện tại và tải lên một khoá tài khoản dịch vụ mới.
Hình 3. Thay đổi tài khoản dịch vụ.
Nhập tập hợp cấu hình
Tập hợp cấu hình là một gói cấu hình để chạy bộ kiểm thử, bao gồm các cấu hình liên quan hành động trên thiết bị và xây dựng kênh. Tập hợp cấu hình được lưu trữ trong một tài khoản Google Bộ chứa Cloud Storage (GCS). Sau khi xác thực kênh xây dựng GCS bằng Tài khoản Google, bạn sẽ thấy danh sách tất cả nhóm cấu hình có sẵn.
Chọn bất kỳ tập cấu hình nào bạn muốn thêm vào máy chủ Trạm thử nghiệm của mình và nhấp vào Nhập video đã chọn.
Hình 4. Đang nhập một Tập hợp cấu hình.
Bao gồm các chế độ cài đặt Wi-Fi
Một số thử nghiệm CTS yêu cầu thiết bị của bạn kết nối với một điểm phát sóng Wi-Fi. Để chọn Mạng Wi-Fi, nhập SSID Wi-Fi và WiFi PSK (không bắt buộc).
Hình 5. Cài đặt điểm phát sóng Wi-Fi.
Sau khi hoàn tất Trình hướng dẫn thiết lập, trang sẽ tải lại với các tùy chọn cài đặt mới áp dụng.
Kết nối thiết bị
Bạn phải bật tính năng gỡ lỗi qua USB để sử dụng một thiết bị cho mục đích kiểm thử. Cách bật tính năng gỡ lỗi:
Làm theo hướng dẫn trong Bật tuỳ chọn cho nhà phát triển và gỡ lỗi.
Nếu bạn dự định sử dụng bản dựng Android thử nghiệm được tải trước bằng khoá ADB tuỳ chỉnh, hãy đặt các tệp
.adb_key
tuỳ chỉnh trong thư mục~/.android/
.Các tệp được tải tự động và chuyển tới ADB để tự động bật USB gỡ lỗi sau khi cài đặt ROM thiết bị cho những thiết bị đang chạy các bản dựng đó.
Kết nối thiết bị với máy chủ lưu trữ qua USB.
Thiết bị sẽ xuất hiện trong thẻ Thiết bị ATS của OmniLab trong vòng một phút sau làm mới giao diện web. Bạn cũng có thể xem trạng thái của các thiết bị trên thẻ này.
Hình 6. Đang kết nối một thiết bị.
Có các trạng thái khác nhau của thiết bị:
- Có sẵn – Thiết bị đã được kết nối và sẵn sàng chạy kiểm thử.
- Đã phân bổ – Thiết bị đã được kết nối và đang chạy kiểm thử. Một thiết bị chỉ có thể chạy một bài kiểm thử tại một thời điểm, nên thiết bị phải hoàn tất thử nghiệm hiện tại trước khi chạy thử nghiệm mới.
Chạy thử nghiệm
Chọn một thử nghiệm
OmniLab ATS đi kèm với một bộ cấu hình CTS theo gói sẵn. Để chạy một trong các bài kiểm thử này, hãy chuyển đến thẻ Bộ kiểm thử rồi nhấp vào Chạy kiểm thử cho kết quả thử nghiệm.
Hình 7. Chọn một chương trình kiểm thử.
Để chỉnh sửa hoặc thêm thử nghiệm mới, hãy xem phần Thêm thử nghiệm.
Định cấu hình chạy kiểm thử
Chỉnh sửa các thông số để sử dụng cho lần chạy thử nghiệm cụ thể này. Hầu hết các thông số đều được điền sẵn các giá trị được xác định trong cấu hình thử nghiệm đã chọn.
Bạn có thể hoàn tất bước này bằng cách sử dụng các giá trị mặc định, nhưng bạn cũng có thể thay đổi bất kỳ giá trị nào các tham số, chẳng hạn như Max Thử lại và Command, để phù hợp với nhu cầu của bạn.
Hình 8. Định cấu hình chạy kiểm thử.
Các tham số chạy thử nghiệm bao gồm:
- Tên – Tên của bộ kiểm thử mà bạn muốn chạy.
- Số lần chạy – Số lần lần chạy chương trình kiểm thử này được thực thi khi theo lịch. Các lần chạy kiểm thử được lên lịch bằng Liên đoàn Thương mại, tổ chức tối đa 20 kiểm thử sẽ chạy song song nếu có khả năng thực hiện việc này.
- Thử lại tối đa – Số lần tối đa để thử lại một lần chạy thử nghiệm nếu có ít nhất một lần kiểm thử không thành công. Quá trình này thường được thiết lập thành 4 – 6 lần thử lại để chạy CTS đầy đủ đến xử lý kiểm thử không ổn định.
- Hết thời gian chờ – Nếu lượt chạy kiểm thử vẫn ở trạng thái Đã xếp vào hàng đợi quá lâu, nó sẽ tự động bị huỷ. Chỉ định khoảng thời gian phải đợi trước huỷ tại đây. Giá trị mặc định là 24 giờ.
Command – Lệnh để chạy bộ kiểm thử. Bạn có thể nhập thêm đối số dòng lệnh tại đây. Ví dụ: chạy một mô-đun cụ thể trong CTS 8.1 bằng:
cts-suite -m ShortModuleName
Lệnh thử lại – Lệnh để thử lại một bộ kiểm thử. Bạn có thể thêm đối số dòng lệnh bổ sung tại đây. Ví dụ: để chỉ thử lại một mô-đun cụ thể trong CTS 8.1, sử dụng:
cts --retry 0 -m ShortModuleName
Đối số thử lại có thể khác với các đối số có sẵn với lệnh ban đầu, Vì vậy, hãy kiểm tra các thông số được hỗ trợ trên trang web chính thức cho thử nghiệm đã chọn bộ.
Lần chạy kiểm thử trước – Nếu bạn muốn chạy lại lần chạy kiểm thử trước đó, hãy làm như sau:
Cục bộ – Nếu quá trình chạy đã bắt đầu trên máy chủ hiện tại, hãy vào lần chạy kiểm thử Mã nhận dạng được nhìn thấy khi xem thông tin chi tiết về lần chạy kiểm thử.
Hình 9. Lần chạy kiểm thử cục bộ trước đó.
Từ xa – Nếu quá trình chạy được bắt đầu trên một máy chủ khác, hãy tải bản kiểm thử lên tệp kết quả bằng cách chọn Từ xa, nhấp vào Tải kết quả kiểm tra lên Tệp và chọn một tệp từ bộ nhớ cục bộ của bạn.
Hình 10. Lần chạy kiểm thử từ xa trước đó.
Chọn thiết bị
Nhấp vào hộp đánh dấu nhằm chọn thiết bị cần phân bổ để chạy thử nghiệm bộ. Số lượng phân đoạn phải tự động thay đổi để phù hợp với số lượng thiết bị đã chọn.
Hình 11. Đang chọn thiết bị.
Để chọn thiết bị theo thuộc tính không phải là sê-ri thiết bị, bạn có thể hãy nhập "Thông số kỹ thuật của thiết bị". Ví dụ: để chọn 3 thiết bị có tên sản phẩm là "bramble", nhập thông tin sau:
product:bramble;product:bramble;product:bramble
Các thuộc tính được hỗ trợ bao gồm:
- mã_bản dựng
- sê-ri_thiết bị
- loại thiết bị
- tên máy chủ
- sản phẩm
- biến_thể_sản_phẩm
- trạng_thái_sim
Tất cả thiết bị đã chọn phải ở trạng thái Available (Có sẵn) để thực thi lần chạy chương trình kiểm thử, và tất cả đều chuyển sang trạng thái Đã phân bổ khi thực thi lần chạy kiểm thử. Đáp lượt chạy thử nghiệm ở trạng thái Đã xếp hàng đợi trong khi chờ thiết bị sẵn có.
Thêm các hành động trên thiết bị
Hành động trên thiết bị là các tập lệnh có thể được thực thi trước mỗi lần chạy kiểm thử. Hơi nhiều các hành động trên thiết bị đã được định cấu hình, chẳng hạn như cài đặt ROM và khởi động lại. Người nhận tạo hành động mới trên thiết bị, xem Tạo một hành động mới trên thiết bị.
Hình 12. Hành động trên thiết bị.
Để thêm một hành động trên thiết bị vào lần chạy thử nghiệm, hãy nhấp vào Add new action (Thêm hành động mới), chọn hộp kiểm cho các hành động cần thêm và nhấp vào Thêm hành động. Hành động trên thiết bị được thực hiện tuần tự. Bạn có thể sắp xếp lại thứ tự các hành động bằng cách kéo chúng.
Hình 13. Đang sắp xếp lại thứ tự các hành động.
Thiết lập tài nguyên kiểm thử
Tài nguyên kiểm thử là các tệp cần thiết để thực thi một lần chạy chương trình kiểm thử. Ví dụ: chạy
CTS yêu cầu tệp android-cts*.zip
và việc cài đặt ROM thiết bị yêu cầu bạn
cung cấp hình ảnh bản dựng.
Theo mặc định, URL tải xuống của tệp zip của bộ thử nghiệm phải là Google Drive đường liên kết được cung cấp cho đối tác. Bạn có thể chọn một tệp khác bằng cách nhấp vào duyệt qua. Trong cửa sổ bật lên, bạn có thể nhập đường liên kết tải tệp xuống, sử dụng tệp từ kênh bản dựng đã xác thực hoặc tải lên một tệp để sử dụng từ bộ nhớ cục bộ.
Hình 14. Kiểm thử tài nguyên.
Dưới đây là cửa sổ bật lên để chọn tài nguyên kiểm thử theo URL web. Bạn có thể hãy nhập đường liên kết URL tải xuống rồi nhấp vào nút Chọn để xác nhận lựa chọn.
Hình 15. Bộ chọn tài nguyên kiểm tra – URL web.
Nếu bạn đã tải tài nguyên lên Google Grive, Google Cloud Storage (GCS) hoặc các kênh khác, bạn cũng có thể chuyển đến tab của kênh cụ thể và chọn tài nguyên ở đó. Dưới đây là ví dụ về cách chọn tài nguyên từ Google Drive.
Hình 16. Kiểm tra bộ chọn tài nguyên – Google Drive.
Ngoài việc chỉ chọn tệp, các ký tự đại diện cũng được hỗ trợ trong Filename (Tên tệp). Bạn có thể tìm thấy tài liệu này tại đây.
Hình 17. Kiểm thử bộ chọn tài nguyên – Hỗ trợ mẫu ký tự đại diện.
Bạn cũng có thể chọn một tệp trong bộ nhớ tệp cục bộ của OmniLab ATS. Bạn có thể tải lên tệp vào bộ nhớ này hoặc trực tiếp sử dụng tệp và thư mục trên máy.
Hình 18. Bộ chọn tài nguyên kiểm tra – Kho lưu trữ tệp cục bộ.
Thêm cấu hình chạy lại
Bạn có thể lên lịch các lượt chạy lại bắt đầu sau khi lượt chạy chính hoàn tất và tải kết quả nhưng có thể sử dụng các thiết bị, thao tác hoặc tài nguyên khác nhau.
Hình 19. Thêm cấu hình chạy lại.
Bắt đầu chạy thử nghiệm
Sau khi bạn nhập thông tin cần thiết cho lần chạy kiểm thử, hãy nhấp vào Bắt đầu kiểm tra Chạy. Nếu tất cả thông tin đều hợp lệ, thì lần chạy kiểm thử sẽ bắt đầu và bạn đã chuyển hướng đến một trang để xem chi tiết và tiến trình của lần chạy kiểm thử.
Hình 20. Đang bắt đầu chạy thử nghiệm.
Tạo kế hoạch kiểm thử
Kế hoạch kiểm thử được dùng để tạo các lần chạy kiểm thử theo lịch định kỳ. Ví dụ: chạy CTS 9.0 mỗi ngày lúc 5 giờ chiều. Để tạo một kế hoạch thử nghiệm mới, hãy nhấp vào Tạo một kế hoạch thử nghiệm mới.
Hình 21. Tạo kế hoạch kiểm thử.
Định cấu hình kế hoạch kiểm thử
Nhập tên của kế hoạch thử nghiệm và bất kỳ nhãn nào mà bạn muốn thêm. Sau đó chọn một để sử dụng.
- Thủ công – Kế hoạch thử nghiệm chỉ tạo các lần chạy thử nghiệm khi người dùng nhấp vào Chạy kế hoạch thử nghiệm trên trang danh sách kế hoạch thử nghiệm.
- Định kỳ – Kế hoạch thử nghiệm tự động lên lịch chạy thử nghiệm trên đã chọn lịch biểu định kỳ. Ví dụ: lên lịch chạy thử nghiệm mỗi ngày vào lúc 5 giờ chiều.
- Tuỳ chỉnh – Kế hoạch thử nghiệm lên lịch chạy thử nghiệm theo cách phù hợp dựa trên
Đã nhập biểu thức cron. Ví dụ:
để lên lịch chạy kiểm thử vào lúc 5 giờ chiều hằng ngày, biểu thức cron là
0 17 * * *
.
Hình 22. Định cấu hình gói kiểm thử.
Thêm bộ kiểm thử
Thêm bộ thử nghiệm mà bạn muốn lên lịch theo kế hoạch thử nghiệm bằng cách nhấp vào + Thêm cấu hình chạy thử nghiệm. Chọn một bộ kiểm thử trong trình đơn thả xuống Name (Tên) rồi nhấp vào Bước tiếp theo. Sau đó, chọn thiết bị bạn muốn chạy thử nghiệm và nhấp vào Add Configuration (Thêm cấu hình). Bạn có thể thêm nhiều cấu hình cho mỗi thử nghiệm .
Hình 23. Định cấu hình chạy kiểm thử.
Thêm các hành động trên thiết bị
Thêm các hành động trên thiết bị mà bạn muốn thực thi trước mỗi lần chạy kiểm thử. Hãy xem phần Thêm các hành động trên thiết bị để biết thêm thông tin chi tiết.
Hình 24. Đang thêm các hành động trên thiết bị.
Thiết lập tài nguyên kiểm thử
Việc thêm tài nguyên kiểm thử vào kế hoạch kiểm thử cũng giống như thêm tài nguyên kiểm thử vào từng quy trình kiểm thử chạy. Hãy xem phần Thiết lập tài nguyên kiểm thử để biết thêm thông tin chi tiết.
Hình 25. Đang thiết lập tài nguyên kiểm thử.
Xem các lần chạy kiểm thử
Danh sách lần chạy kiểm thử
Xem danh sách các lần chạy kiểm thử theo lịch trên trang Chạy kiểm thử. Nhấp vào Xem để xem thêm thông tin chi tiết về lần chạy kiểm thử.
Bạn cũng có thể lọc danh sách này bằng cách nhập một chuỗi vào thanh bộ lọc và nhấn phím Enter. Bạn có thể sử dụng nhiều bộ lọc bằng cách tách các bộ lọc bằng một dấu phẩy. Bộ lọc trả về tất cả các hàng có chứa văn bản chính xác (không có chuỗi con khớp) trong bất kỳ cột nào, ngoại trừ Trạng thái và Đã tạo.
Bộ lọc trống sẽ trả về tất cả các hàng. Hiện không có cách nào để lọc các hàng có giá trị trống.
Hình 26. Danh sách chạy thử nghiệm.
Thông tin chi tiết về lần chạy thử nghiệm
Bạn có thể xem thông tin chi tiết về lần chạy kiểm thử tại đây, chẳng hạn như trạng thái, nhật ký và kết quả.
Hình 27. Thông tin chi tiết về lần chạy thử nghiệm.
Trạng thái chạy thử nghiệm
Tiến trình của lần chạy kiểm thử sẽ xuất hiện trong phần Trạng thái. Nếu có sự kiện chẳng hạn như tiến trình tải xuống, lý do huỷ hoặc thông báo lỗi thì cũng xuất hiện ở đây.
Hình 28. Trạng thái chạy thử nghiệm.
Các trạng thái chạy kiểm thử là:
- Đang chờ xử lý – Các tài nguyên bắt buộc đang được tải xuống.
- Đã đưa vào hàng đợi – Bạn có thể chạy bài kiểm thử khi có thiết bị.
- Đang chạy – Bài kiểm thử đang chạy trên một thiết bị được phân bổ.
- Đã hoàn tất – Thử nghiệm đã hoàn tất và báo cáo kết quả.
- Đã huỷ – Người dùng đã huỷ thử nghiệm hoặc hết thời gian chờ trong khi cố gắng tìm thiết bị có sẵn.
- Lỗi – Đã xảy ra lỗi khiến thử nghiệm không chạy được.
Huỷ lần chạy kiểm thử
Nếu lần chạy thử nghiệm chưa hoàn tất, bạn có thể huỷ bằng cách nhấp vào Huỷ rồi sau đó nhấp vào Yes (Có) trong hộp thoại xác nhận. Các lần chạy kiểm thử cũng tự động bị huỷ nếu chúng vẫn ở trạng thái Đã xếp hàng đợi lâu hơn queue_timeout_seconds. Huỷ lượt chạy kiểm thử khi ở trạng thái Đang chạy có thể mất vài phút mới có hiệu lực.
Hình 29. Huỷ một lần chạy kiểm thử.
Kết quả chạy thử nghiệm
Sau khi chạy thử nghiệm xong, kết quả sẽ được thu thập và hiển thị. Bạn có thể
xem thêm thông tin chi tiết bằng cách nhấp vào mũi tên cho mỗi lần chạy. Nhấp vào Xem kết quả
Files (Tệp) để xem các cấu phần phần mềm kiểm thử đã thu thập, chẳng hạn như test_result.xml
và
test_result_failures.html
.
Hình 30. Kết quả chạy thử nghiệm.
Bạn có thể xem nhật ký máy chủ lưu trữ trực tiếp và nhật ký Tradefeed trong thẻ Nhật ký.
Hình 31. Nhật ký.
Kết quả của từng mô-đun có trên thẻ Kết quả kiểm thử.
Hình 32. Thẻ Kết quả thử nghiệm.
Bạn có thể tải các tệp dùng làm tài nguyên thử nghiệm xuống bằng cách nhấp vào Mở trong Thẻ Tài nguyên kiểm thử.
Hình 33. Thẻ Tài nguyên kiểm thử.
Để xem thông tin chi tiết về lần chạy kiểm thử, chẳng hạn như create_time, hãy chuyển đến thẻ Cấu hình.
Hình 34. Thẻ Cấu hình.
Các tính năng nâng cao
Quản lý tệp cấu hình
OmniLab ATS sử dụng các tệp cấu hình được viết trong YAML để tải các tuỳ chọn được xác định trước, chẳng hạn như kiểm thử, kênh bản dựng và hành động trên thiết bị. Dưới đây là tệp cấu hình mẫu:
// example_file.yaml
tests:
- id : android.cts.9_0.arm
name: CTS 9.0 (ARM)
test_resource_defs:
- name: android-cts.zip
default_download_url: https://dl.google.com/dl/android/cts/android-cts-9.0_r7-linux_x86-arm.zip
test_resource_type: TEST_PACKAGE
command: cts
env_vars:
- name: TF_PATH
value: ${TF_WORK_DIR}/android-cts/tools:${TF_WORK_DIR}/android-cts/testcases
- name: LD_LIBRARY_PATH
value: ${TF_WORK_DIR}/android-cts/lib:${TF_WORK_DIR}/android-cts/lib64
setup_scripts:
output_file_patterns:
- android-cts/logs/latest/.*
- android-cts/results/latest/.*\.html
- android-cts/results/latest/compatibility_result\..*
- android-cts/results/latest/logo.png
- android-cts/results/latest/test_result.xml
result_file: test_result.xml
java_properties:
- name: CTS_ROOT
value: ${TF_WORK_DIR}
context_file_dir: android-cts/results/
context_file_pattern: '[\d_\.]+\.zip'
retry_command_line: retry --retry 0
runner_sharding_args: --shard-count ${TF_SHARD_COUNT}
build_channels:
- id: google_drive
name: Google Drive
provider_name: Google Drive
device_actions:
- id: flash
name: Flash
test_resource_defs:
- name: bootloader.img
test_resource_type: DEVICE_IMAGE
- name: radio.img
test_resource_type: DEVICE_IMAGE
- name: img.zip
test_resource_type: DEVICE_IMAGE
tradefed_target_preparers:
- class_name: com.android.tradefed.targetprep.RunHostCommandTargetPreparer
option_values:
- name: work-dir
values:
- ${TF_WORK_DIR}
- name: host-setup-command
values:
- adb -s $SERIAL reboot-bootloader
- fastboot -s $SERIAL flash bootloader bootloader.img
- fastboot -s $SERIAL flash radio radio.img
- fastboot -s $SERIAL reboot-bootloader
- fastboot -s $SERIAL -w update img.zip
- adb -s $SERIAL wait-for-device
- name: host-cmd-timeout
values:
- 10m
Khi thiết lập phiên bản OmniLab ATS, bạn có thể chia sẻ cấu hình của mình với những người dùng khác bằng cách xuất dữ liệu đó dưới dạng tệp. Để thực hiện việc này, hãy chuyển đến trang Cài đặt và nhấp vào Xuất ở trên cùng bên phải.
Hình 35. Quản lý tệp cấu hình.
Sau khi tải tệp cấu hình của bạn xuống, hãy chia sẻ tệp đó với những người dùng khác. Họ có thể thêm tệp cấu hình vào thực thể ATS của OmniLab Nhập và chọn tệp cấu hình.
Tạo một thao tác mới trên thiết bị
Hành động trên thiết bị được dùng để tự động hoá quy trình thiết lập thiết bị. Hành động là các tập lệnh được thực thi trên từng thiết bị mà chương trình kiểm thử đang chạy trước mỗi lần chạy kiểm thử, bao gồm cả trước lần thử lại. Để xem danh sách các thao tác hiện có trên thiết bị, hãy chuyển đến trang Settings (Cài đặt) và nhấp vào thẻ Device Actions (Hành động trên thiết bị). Một số hành động trên thiết bị sẽ diễn ra đã được định cấu hình, chẳng hạn như khởi động lại và cài đặt ROM.
Hình 36. Thẻ Hành động trên thiết bị.
Thêm một thao tác mới trên thiết bị
Nhấp vào Thao tác mới trên thiết bị.
Hình 37. Nút hành động mới trên thiết bị.
Nhập tên và nội dung mô tả.
Hình 38. Tên hành động trên thiết bị.
Nhấp vào Add Target Preparer (Thêm người chuẩn bị mục tiêu).
Nhập Mục tiêu của Liên đoàn thương mại Tên lớp đầy đủ của người chuẩn bị, ví dụ:
com.android.tradefed.targetprep.RunHostCommandTargetPreparer
.Hình 39. Thêm một trình chuẩn bị mục tiêu.
Bạn có thể xem danh sách những người chuẩn bị mục tiêu hiện có trong com.android.tradefed.targetprep tham chiếu.
Hình 40. Danh sách người chuẩn bị mục tiêu.
Thêm bất kỳ tuỳ chọn nào để sử dụng với trình chuẩn bị mục tiêu. Cách xem các lựa chọn hiện có: dấu kiểm chuẩn bị mục tiêu đối với mã nguồn cho từng trình chuẩn bị mục tiêu trong AOSP:
Hình 41. Ví dụ về tuỳ chọn hành động.
Để thêm lựa chọn, hãy nhấp vào Add Target chuẩn r Option (Thêm lựa chọn cho người chuẩn bị mục tiêu) rồi nhập các giá trị bắt buộc.
Hình 42. Ví dụ về lệnh thao tác.
Xác định tài nguyên kiểm thử cần thiết để thực thi thao tác trên thiết bị, cho ví dụ: tạo hình ảnh để cài đặt ROM. Để thêm định nghĩa tài nguyên, hãy nhấp vào Thêm tài nguyên kiểm thử rồi điền vào các trường bắt buộc. Nếu bạn biết vị trí tệp của bạn được đặt, bạn có thể cung cấp URL tải xuống mặc định bằng cách nhấp vào duyệt qua. Nếu trình chuẩn bị mục tiêu chấp nhận thư mục làm tài nguyên kiểm thử, chọn Giải nén. Sau đó, chỉ định thư mục Destination (Đích đến) tương đối trong thư mục hoạt động tạm thời và Tên tệp sẽ được đã giải nén. Nếu không có tên tệp nào được cung cấp, tất cả các tệp sẽ được giải nén từ tài nguyên kiểm thử.
Hình 43. Tài nguyên kiểm thử hành động.
Nhấp vào Cập nhật.
Hình 44. Thao tác lưu các thay đổi.
Quản lý thử nghiệm
Chỉnh sửa thử nghiệm
Để chỉnh sửa thử nghiệm đã lưu, hãy truy cập trang Thử nghiệm và nhấp vào Chỉnh sửa trên hàng của thử nghiệm bạn muốn sửa đổi. Sau khi thay đổi cấu hình thử nghiệm, hãy nhấp vào Cập nhật.
Hình 45. Chỉnh sửa bài kiểm thử.
Thêm thử nghiệm mới
Để thêm thử nghiệm mới, hãy truy cập trang Thử nghiệm và nhấp vào Tạo thử nghiệm mới. Vào cảnh thông tin thích hợp rồi nhấp vào Tạo.
Hình 46. Đang tạo một chương trình kiểm thử.
Hình 47. Sao chép một chương trình kiểm thử.
Xuất cấu hình máy chủ lưu trữ
Sau khi định cấu hình một máy chủ lưu trữ, bạn có thể xuất cấu hình của máy chủ đó sang một tệp. Bạn có thể tải tệp này lên các máy chủ khác để sao chép cấu hình đã lưu.
Để xuất cấu hình của máy chủ lưu trữ, hãy truy cập trang Cài đặt và nhấp vào Xuất ở góc trên cùng bên phải.
Hình 48. Đang xuất một cấu hình máy chủ lưu trữ.
Để nhập tệp cấu hình máy chủ lưu trữ, hãy chuyển đến trang Cài đặt và nhấp vào Nhập ở góc trên cùng bên phải.
Hình 49. Đang nhập cấu hình máy chủ lưu trữ.
Dùng tệp và thư mục trên máy
Kể từ phiên bản R11, các tệp trong thư mục $HOME/.ats_storage
sẽ
tự động truy cập được trong OmniLab ATS. Sao chép hoặc di chuyển một tệp vào đó
thư mục, sau đó bạn có thể chọn thư mục đó từ thẻ Local File (Tệp cục bộ) khi lên lịch
chạy thử nghiệm.
cp /path/to/file $HOME/.ats_storage
Hình 50. Chọn một tệp trong thư mục $HOME/.ats_storage
.
Bạn có thể gắn các thư mục khác vào kho tệp cục bộ bằng
Cờ --mount_local_path
.
mtt start --mount_local_path=/path/to/dir1 --mount_local_path=/path/to/dir2:renamed_dir2
Hình 51. Các thư mục bổ sung được gắn trong kho tệp cục bộ.
Bật chế độ nhiều người tổ chức
Với chế độ nhiều máy chủ, người dùng có thể sử dụng một máy chủ điều khiển ATS duy nhất để quản lý thiết bị và kiểm thử trên nhiều máy chủ worker ATS.
Hình 52. Cấu trúc của chế độ nhiều máy chủ lưu trữ.
Để khởi động trình điều khiển ATS, hãy dùng lệnh sau:
mtt start --operation_mode=ON_PREMISE
Có thể truy cập vào bộ điều khiển của tính năng kiểm tra tại
http://${CONTROLLER_HOSTNAME}:8000
.Để khởi động worker, hãy sử dụng lệnh sau:
mtt start --control_server_url=http://CONTROLLER_HOSTNAME:8000 --operation_mode=ON_PREMISE
Nếu mạng của bạn không cho phép máy chủ giao tiếp với nhau, bạn cần làm theo các hướng dẫn thiết lập nâng cao hơn bên dưới đối với trình thực thi ATS.
Kết nối 2 máy chủ này bằng đường hầm SSH. Chọn các cổng cho cổng máy chủ tệp và cổng chính, ví dụ: 9000 và 9006.
ssh -L ATS_PORT:localhost:8000 -L FS_PORT:localhost:8006 CONTROLLER_HOSTNAME
Định cấu hình và khởi động ATS.
DOCKER_GATEWAY_IP_ADDRESS=$(ip -4 addr show dev docker0 | grep -Eo 'inet [.0-9]+/' | grep -Eo '[.0-9]+')
socat tcp-listen:ATS_PORT,bind="${DOCKER_GATEWAY_IP_ADDRESS}",reuseaddr,fork tcp-connect:127.0.0.1:ATS_PORT &
socat tcp-listen:FS_PORT,bind="${DOCKER_GATEWAY_IP_ADDRESS}",reuseaddr,fork tcp-connect:127.0.0.1:FS_PORT &
mtt start --control_server_url=http://${DOCKER_GATEWAY_IP_ADDRESS}:ATS_PORT \ --control_file_server_url=http://${DOCKER_GATEWAY_IP_ADDRESS}:FS_PORT \ --operation_mode=ON_PREMISE
Công cụ dọn sạch tệp
Trình dọn sạch tệp là một công việc chạy định kỳ, chạy hằng giờ để dọn dẹp các tệp dựa trên các cấu hình do người dùng xác định. ATS có hai cấu hình mặc định để lưu trữ kiểm thử chạy kết quả và xoá các tệp tạm thời. Hướng dẫn này giải thích cách tuỳ chỉnh các chính sách và cấu hình để quản lý tệp một cách hiệu quả.
Chính sách
Một chính sách xác định thao tác sẽ được thực hiện trên tệp hoặc thư mục, và tiêu chí để chọn mục tiêu. Các hoạt động có thể thực hiện được hiển thị trong bảng:
Loại thao tác | Tham số |
---|---|
ARCHIVE | remove_file : Nếu là true , hãy xoá tệp sau khi lưu trữ. |
DELETE |
Tiêu chí này dựa trên thuộc tính tệp và thông tin hệ thống. Có sẵn tiêu chí được hiển thị trong bảng:
Loại tiêu chí | Mô tả | Tham số |
---|---|---|
LAST_MODIFIED_TIME | Lọc tệp dựa trên ngày và giờ sửa đổi gần đây nhất. | ttl : Nhiều loại biểu thức thời gian được hỗ trợ, ví dụ: 10m , 2h , 7 days , 4w . Hãy xem pytimeparse để biết các định dạng được hỗ trợ. |
LAST_ACCESS_TIME | Lọc tệp dựa trên ngày và giờ truy cập gần đây nhất. | Tương tự như LAST_MODIFIED_TIME . |
NAME_MATCH | Lọc tệp theo tên bằng biểu thức chính quy. | pattern : Biểu thức chính quy, ví dụ: [a-f0-9]{8}-([a-f0-9]{4}-){3}[a-f0-9]{12}\.zip để khớp với mã zip kết quả. |
SYSTEM_AVAILABLE_SPACE | Kích hoạt các hành động dựa trên không gian có sẵn trên hệ thống. | threshold : Kích hoạt hành động khi không gian có sẵn giảm xuống dưới ngưỡng, ví dụ: 200 (B), 200KB , 200MB , 200GB , 2TB . |
Hình 53. Thêm chính sách mới giúp dọn sạch tệp.
Cấu hình
Một cấu hình kết hợp một hoặc nhiều chính sách với các thư mục cụ thể. Các tệp và trong các thư mục cụ thể được xử lý dựa trên các chính sách đã xác định. Các chính sách được áp dụng theo thứ tự xuất hiện trong cấu hình.
Tất cả thư mục đích phải nằm trong thư mục /data
. Nếu
config chỉ định thư mục đích là logs
, thì cấu hình này được diễn giải là
/data/logs
.
Hình 54. Chỉnh sửa cấu hình dọn sạch tệp.
Đặt lại
Thao tác nhấp vào Reset Settings (Đặt lại chế độ cài đặt) sẽ chuyển cấu hình sạch tệp về lại trạng thái mặc định. Thao tác này sẽ xoá TẤT CẢ mục tuỳ chỉnh.
Hình 55. Đặt lại các chế độ cài đặt làm sạch tệp.
Hỗ trợ
Báo cáo lỗi
Đóng góp của bạn cho OmniLab ATS giúp cải thiện sự phát triển của công cụ này và chúng tôi rất mong nhận được ý kiến đóng góp của bạn! Xem Ghi chú phát hành của OmniLab ATS để biết thông tin chi tiết về bản phát hành mới nhất. Cách báo cáo lỗi hoặc đưa ra đề xuất: gửi báo cáo lỗi. Đối tác nên báo cáo lỗi hoặc nội dung đề xuất qua kênh đối tác.