Google cam kết thúc đẩy công bằng chủng tộc cho Cộng đồng người da đen. Xem cách thực hiện.
Trang này được dịch bởi Cloud Translation API.
Switch to English

Thêm một ví dụ thử nghiệm gốc mới

Nếu bạn chưa quen với việc phát triển nền tảng Android, bạn có thể thấy ví dụ hoàn chỉnh này về việc thêm một thử nghiệm gốc hoàn toàn mới từ đầu rất hữu ích để chứng minh quy trình làm việc điển hình liên quan. Ngoài ra, nếu bạn cũng chưa quen với khung gtest cho C ++, vui lòng xem lại trang web dự án gtest để có thêm tài liệu.

Hướng dẫn này sử dụng bài kiểm tra sau để làm mẫu:

Hello World Native Test

Bạn nên duyệt qua mã trước để có ấn tượng sơ bộ trước khi tiếp tục.

Quyết định vị trí nguồn

Thông thường, nhóm của bạn sẽ có sẵn một mẫu địa điểm để đăng ký mã và những nơi để thêm kiểm tra. Hầu hết nhóm sở hữu một kho lưu trữ git duy nhất hoặc chia sẻ một kho lưu trữ với các nhóm khác nhưng có một thư mục con chuyên dụng chứa mã nguồn thành phần.

Giả sử vị trí gốc cho nguồn thành phần của bạn là tại <component source root> , hầu hết các thành phần đều có thư mục srctests bên dưới nó và một số tệp bổ sung như Android.mk (hoặc được chia thành các tệp .bp bổ sung).

Vì bạn đang thêm một thử nghiệm hoàn toàn mới, có thể bạn sẽ cần tạo thư mục tests bên cạnh src thành phần của bạn và điền vào nó với nội dung.

Trong một số trường hợp, nhóm của bạn có thể có thêm cấu trúc thư mục trong tests do nhu cầu đóng gói các bộ thử nghiệm khác nhau thành các tệp nhị phân riêng lẻ. Và trong trường hợp này, bạn sẽ cần tạo một thư mục con mới trong tests .

Để minh họa, đây là phác thảo thư mục điển hình cho các thành phần có một thư mục tests duy nhất:

\
 <component source root>
  \-- Android.bp (component makefile)
  \-- AndroidTest.xml (test config file)
  \-- src (component source)
  |    \-- foo.cpp
  |    \-- ...
  \-- tests (test source root)
      \-- Android.bp (test makefile)
      \-- src (test source)
          \-- foo_test.cpp
          \-- ...

và đây là phác thảo thư mục điển hình cho các thành phần có nhiều thư mục nguồn thử nghiệm:

\
 <component source root>
  \-- Android.bp (component makefile)
  \-- AndroidTest.xml (test config file)
  \-- src (component source)
  |    \-- foo.cpp
  |    \-- ...
  \-- tests (test source root)
      \-- Android.bp (test makefile)
      \-- testFoo (sub test source root)
      |   \-- Android.bp (sub test makefile)
      |   \-- src (sub test source)
      |       \-- test_foo.cpp
      |       \-- ...
      \-- testBar
      |   \-- Android.bp
      |   \-- src
      |       \-- test_bar.cpp
      |       \-- ...
      \-- ...

Bất kể cấu trúc như thế nào, bạn sẽ kết thúc việc điền vào thư mục tests hoặc thư mục con mới được tạo với các tệp tương tự như những gì trong thư mục native trong thay đổi gerrit mẫu. Các phần bên dưới sẽ giải thích chi tiết hơn về từng tệp.

Mã nguồn

Xem bài kiểm tra Hello World Native để làm ví dụ.

Mã nguồn chú thích được liệt kê bên dưới:

#include <gtest/gtest.h>

Tệp tiêu đề bao gồm cho gtest. Lưu ý rằng sự phụ thuộc của tệp bao gồm được giải quyết tự động bằng cách sử dụng BUILD_NATIVE_TEST trong BUILD_NATIVE_TEST makefile

#include <stdio.h>

TEST(HelloWorldTest, PrintHelloWorld) {
    printf("Hello, World!");
}

gtests được viết bằng cách sử dụng macro TEST : tham số đầu tiên là tên test case và tham số thứ hai là test name; cùng với tên nhị phân thử nghiệm, chúng tạo thành hệ thống phân cấp bên dưới khi được hiển thị trong bảng điều khiển kết quả:

<test binary 1>
| \-- <test case 1>
| |   \-- <test 1>
| |   \-- <test 2>
| |   \-- ...
| \-- <test case 2>
| |   \-- <test 1>
| |   \-- ...
| \-- ...
<test binary 2>
|
...

Để biết thêm thông tin về cách viết bài kiểm tra với gtest, hãy xem tài liệu của nó:

  • https://github.com/google/googletest/blob/master/googletest/docs/Primer.md

Tệp cấu hình đơn giản

Mỗi mô-đun thử nghiệm mới phải có tệp cấu hình để chỉ đạo hệ thống xây dựng với siêu dữ liệu mô-đun, phụ thuộc thời gian biên dịch và hướng dẫn đóng gói. Trong hầu hết các trường hợp, tùy chọn tệp Blueprint dựa trên Soong là đủ. Xem Cấu hình kiểm tra đơn giản để biết chi tiết.

Tệp cấu hình phức tạp

Để sử dụng Trade Federation thay thế, hãy viết tệp cấu hình thử nghiệm cho bộ khai thác thử nghiệm của Android, Trade Federation .

Cấu hình thử nghiệm có thể chỉ định các tùy chọn thiết lập thiết bị đặc biệt và các đối số mặc định để cung cấp cho lớp thử nghiệm.

Xây dựng và thử nghiệm cục bộ

Đối với các trường hợp sử dụng phổ biến nhất, hãy sử dụng Atest .

Đối với các trường hợp phức tạp hơn cần tùy chỉnh nặng hơn, hãy làm theo hướng dẫn của thiết bị .