Tesults - Tích hợp các bài kiểm tra tự động của bạn

Tesults cung cấp các thư viện có sẵn để tích hợp cho nhiều ngôn ngữ khác nhau, bao gồm:

  • Python
  • Node.js / JS
  • Java
  • C#
  • Ruby
  • Go

Cũng có sẵn một API REST. Để tải lên dữ liệu và tệp được tạo thử nghiệm, phải sử dụng một trong các thư viện.

Không có tích hợp mã

Đối với một số khuôn khổ thử nghiệm, có thể tích hợp mà không cần bất kỳ mã nào bằng cách sử dụng các thư viện dành riêng cho khung thử nghiệm có sẵn.

Các khuôn khổ thử nghiệm không yêu cầu mã để tích hợp bao gồm:

  • pytest
  • Robot
  • Jest
  • Mocha
  • JUnit5
  • NUnit 3

Quá trình tích hợp là tương tự cho tất cả các thư viện này.

Cài đặt plugin

Trong dự án thử nghiệm của bạn, hãy cài đặt plugin Tesults có liên quan. Ví dụ: nếu bạn đang sử dụng pytest, điều này được thực hiện bằng cách sử dụng‘pip install tesults’ theo dõi bởi ‘pip install pytest-tesults’. Nếu bạn đang sử dụng Mocha, bạn sử dụng‘npm install mocha-tesults-reporter – save’. Xem lệnh thích hợp cho khung thử nghiệm của bạn trên trang web Tesults.

Định cấu hình plugin

Một số plugin không yêu cầu cấu hình và sẵn sàng sử dụng ngay lập tức, một số yêu cầu cấu hình nhỏ. Trong trường hợp của pytest, chẳng hạn, không cần cấu hình bổ sung và nó đã sẵn sàng để sử dụng.

Trong trường hợp của Mocha, cần có một thay đổi nhỏ đối với ‘mocha’ cuộc gọi, cụ thể là người báo cáo cần được chỉ định, ‘mocha --reporter mocha-tesults-reporter’. Xem trang web của Tesults để biết cấu hình cụ thể cho khung công tác bạn đang sử dụng, nhưng nói chung, cấu hình là thay đổi một dòng hoặc không thay đổi.

Vượt qua Args

Có một đối số bắt buộc để chuyển đến plugin và các đối số tùy chọn khác. Đối số bắt buộc là cung cấp mã thông báo đích Tesults. Mã thông báo này được tạo khi tạo dự án cho mục tiêu mặc định trong trang hướng dẫn trước. Bạn có thể nhận mã thông báo mới nếu bạn không có mã thông báo này từ menu cấu hình trong Tesults. Nhấp chuột‘Regenerate Target Token’ trong menu cấu hình.

Cách vượt qua đối số phụ thuộc vào khung thử nghiệm và plugin của bạn. Ví dụ: trong pytest, nó có thể được cung cấp trong lệnh gọi pytest‘pytest --tesults-target token_value’hoặc bằng cách sử dụng tệp cấu hình. Đối với Mocha, nó cũng tương tự, nó có thể được chuyển qua trong mocha có tên là‘mocha * --reporter mocha-tesults-reporter -- tesults-target=token’ hoặc nó có thể được chuyển trong một tệp cấu hình.

Mã thông báo đích là đối số bắt buộc duy nhất, có các vòng tùy chọn để chuyển thông tin xây dựng và tải lên tệp. Xem trang web Tesults để biết thông tin cụ thể về các args cho khung thử nghiệm của bạn.

Chạy thử nghiệm

Chạy các bài kiểm tra của bạn và kết quả bây giờ sẽ được gửi đến Tesults.

Tích hợp mã

Nếu bạn đang sử dụng khung kiểm tra tùy chỉnh hoặc khung kiểm tra mà Tesults không có thư viện hoặc plugin cụ thể, bạn cần sử dụng một trong các khung ngôn ngữ.

Ở đây, chúng ta sẽ xem xét những gì liên quan đến việc tích hợp cho Python. Các ngôn ngữ khác có quy trình tích hợp rất giống nhau, hãy xem trang web Tesults để biết chi tiết cụ thể cho ngôn ngữ lập trình của bạn nhưng hãy làm theo hướng dẫn này trước để có ý tưởng về quy trình -

Cài đặt Thư viện

Đối với Python, sau đây là lệnh:

pip install tesults

Đối với các ngôn ngữ khác, quy trình cũng tương tự, đối với các khuôn khổ thử nghiệm JS, bạn cài đặt thư viện từ npm, đối với Java, bạn có thể sử dụng Gradle hoặc Maven, đối với C #, các gói được lưu trữ trên NuGet và Ruby có sẵn nó dưới dạng đá quý.

Định cấu hình thư viện

Đối với Python, cấu hình chỉ liên quan đến require ‘tesults’trong bất kỳ mô-đun nào bạn muốn sử dụng thư viện. Một lần nữa, cấu hình tương tự là cần thiết trong các ngôn ngữ khác. Xem trang web Tesults để biết cấu hình cụ thể cho ngôn ngữ lập trình của bạn.

Dữ liệu kiểm tra bản đồ

Bước này là điều mà không có plugin mã nào cho phép bạn tránh. Đối với tích hợp dựa trên mã, bạn phải ánh xạ dữ liệu thử nghiệm của mình với dữ liệu thử nghiệm Tesults.

Đối với Python, điều này có nghĩa là biến mỗi kết quả trường hợp thử nghiệm thành một từ điển Python -

{
   'name': 'Tutorial 1',
   'desc':'Tutorial 1 .',
   'suite': 'Tutorials Point',
   'result': 'fail',
   'reason': 'Assert fail in line 102, tutorialspoint.py',
   'files': ['full-path/log.txt', 'full-path/screencapture.png'],
   '_CustomField': 'Custom field value'
}

Tên và kết quả là bắt buộc. Mọi thứ khác là tùy chọn. Kết quả phải là một trong số‘pass’, ‘fail’, hoặc 'không xác định'.

Bộ phần mềm hữu ích để cung cấp vì nó giúp nhóm các trường hợp kiểm tra khi xem kết quả và giúp tránh xung đột tên. Lý do nên được cung cấp cho các trường hợp thử nghiệm không thành công.

Các tệp hữu ích để đảm bảo nhật ký và các tệp thử nghiệm khác được lưu trữ và có thể được xem cùng với trường hợp thử nghiệm mà chúng dành cho.

Bạn cũng có thể có bất kỳ số lượng trường tùy chỉnh nào; chúng phải bắt đầu bằng ký tự gạch dưới (_). Đối với mỗi trường hợp thử nghiệm, hãy xây dựng một từ điển theo cách này và lưu trữ chúng trong một mảng.

Tải lên kết quả

Để tải lên kết quả, mỗi thư viện cung cấp một chức năng tải lên kết quả. Trong trường hợp của Python, bạn cần gọi như sau:

tesults.results(data)

trong đó tham số dữ liệu sau:

data = {
   ‘target’: ‘token’,
   ‘results’: {
      ‘cases’: [<your test cases>]
   }
}

Mảng trường hợp là mảng được tạo trong phần trên.

Đối với các ngôn ngữ lập trình khác, quy trình hoàn toàn giống nhau chỉ với những thay đổi về cú pháp.

Cứu giúp

Trang web Tesults có một cách để yêu cầu trợ giúp để tích hợp nếu bạn cần.

Bước tiếp theo

Tại thời điểm này, quá trình tích hợp đã hoàn tất và chúng ta có thể xem cách xem, phân tích và thực hiện hành động từ kết quả kiểm tra.