[Bài 7] Project structure cho Automation Api Testing sử dụng Rest-Assured

Mỗi người có 1 cách structure project khác nhau, cách mình đưa ra dưới đây chỉ mang hình thức tham khảo. Mình cần những packages sau đây:

  • src > test > Test suite / Features: nơi chứa các tests cho từng API hoặc nhiều API (gộp thành các flow)
  • src > test > Resources: nơi chứa các file data dùng cho test (csv, json)
  • src > main > Models: nơi chứa các Java Object, dùng cho việc mapping sang Json / xml Object. Đọc thêm bài 4.
  • src > main > Utilities: nơi chứa các Class hỗ trợ mình trong việc xử lý các vấn đề technical, không liên quan đến business, ví dụ như đọc file, log…
  • src > main > Resources: chứa file dùng cho project, ngoài test-data như configuration…
  • Ngoài ra bạn sẽ có 1 số file sẽ đặt dưới level của Project như: gitignore, pom.xml / build.gradle …

Bạn có thể nhìn ví dụ dưới đây

Cách để tạo ra folder dạng trên dễ nhất là sử dụng template project của Maven hoặc Gradle. Cái này các bạn có thể tự tìm hiểu.

Ở các bài sau, mình sẽ hướng dẫn refactor lại code từ bài 3 đến bài 6, cho phù hợp với structure này, cùng với đó là bổ sung thêm nhiều bài nữa:

  • Cách đọc config file để có thể linh động run test cho nhiều môi trường khác nhau (nằm trong utilities package)
  • Cách sử dụng 1 số Config có sẵn của Rest-Assured để log cái mình cần
  • Cách xử lý với Json data phức tạp
  • Cách xử lý Authentication khi app dùng Json Web Token (JWT)
  • Cách tổ chức code khi viết test API flow

Code của phần này, mình đặt ở https://github.com/lucas-nguyen-17/restassured

Bài này chỉ ngắn vậy thôi, chờ các bài tiếp theo nhé. 😀

6 thoughts on “[Bài 7] Project structure cho Automation Api Testing sử dụng Rest-Assured

    • Ủa, bạn quan tâm hả. 😀 thế để t viết tiếp, thấy chả có ai comment gì cả, đoán là không ai đọc nên t ko viết. Chờ 1 vài ngày tới nhé. Cảm ơn!

      • Tks ad,
        Auto api cũng là phần quan trọng mà…kaka. Chờ hoài mà ko thấy bài nào ra cả..tham khảo những bài viết của ad cũng giúp mình phần nào hoàn thành cái FW của mình hơn.

        • Okay bạn ơi, để t tìm lại project demo rồi viết tiếp. Lâu ko đụng, ko biết vứt đâu rồi

  1. Baì viết của anh rất hay. Seri bài của anh e đã đọc gần hết, cám ơn anh vì đã share. Hiện tại em đang bị vướng mắc với issue xử lí với Json phức tạp, xử lí các kiểu date, datetime, object lồng object. Anh có thể viết tiếp phần này được không.
    Cách xử lý Authentication khi app dùng Json Web Token (JWT) -> phần này chắc cũng hay lắm đây và chắc là em sẽ giúp ích cho em rất nhiều.

    • Cảm ơn em, anh có thể viết tiếp được nhưng anh không chắc về thời gian sẽ viết, vì đó cũng nằm trong nội dung của lớp học api test.

Leave a Reply

Your email address will not be published. Required fields are marked *