Dengan kemajuan pembangunan perisian moden, ujian automatik telah menjadi bahagian penting dalam proses pembangunan perisian. Dalam pembangunan API Java, RestAssured ialah rangka kerja ujian automatik yang biasa digunakan. Artikel ini akan memperkenalkan prinsip asas, penggunaan dan langkah berjaga-jaga berkaitan rangka kerja RestAssured.
1. Prinsip rangka kerja RestAssured
Rangka kerja RestAssured adalah berdasarkan enkapsulasi perpustakaan klien HTTP dan boleh digunakan untuk menghantar permintaan HTTP dan mengesahkan respons HTTP. Ia ialah rangka kerja ujian automatik berdasarkan bahasa Java, digunakan terutamanya untuk ujian API RESTful. Apabila menggunakan RestAssured untuk ujian, anda perlu menentukan maklumat seperti URL, kata kerja HTTP, parameter permintaan, pengepala permintaan dan penegasan respons API untuk diuji. Khususnya, rangka kerja RestAssured menggunakan struktur Given-When-Then untuk mengatur langkah ujian. Bahagian Diberi digunakan untuk menentukan alamat API, pengepala permintaan, parameter permintaan dan maklumat lain untuk diuji bahagian Apabila digunakan untuk menentukan kaedah HTTP yang akan digunakan untuk meminta API;
2. Gunakan RestAssured untuk menulis ujian
RestAssured menyediakan satu siri kaedah statik untuk menyokong ujian, seperti kaedah dapatkan, hantar, letak dan padam. Berikut menunjukkan contoh ujian menggunakan rangka kerja RestAssured:
@Test public void test() { // Given RestAssured.baseURI = "https://api.example.com"; RestAssured.basePath = "/users"; RequestSpecification request = RestAssured.given(); request.header("Content-Type", "application/json"); request.pathParam("userId", "1"); // When Response response = request.when().get("/{userId}"); // Then response.then().statusCode(200).body("name", equalTo("John")); }
Bahagian Diberi kod di atas menentukan alamat API, pengepala permintaan dan parameter permintaan, bahagian When menentukan penggunaan kaedah get untuk meminta API, dan bahagian Kemudian menegaskan kod status respons dan kandungan respons. Dapat dilihat bahawa ujian menggunakan rangka kerja RestAssured mempunyai langkah-langkah berikut:
3 Gunakan RestAssured untuk ujian biasa
Anda boleh menggunakan kaedah itu untuk menegaskan hasil respons . Contohnya:
response.then().statusCode(200);
Kod di atas akan menentukan sama ada kod status hasil respons ialah 200.
Anda boleh menggunakan kaedah kemudian digabungkan dengan kaedah pengepala untuk menegaskan maklumat pengepala respons. Contohnya:
response.then().header("Content-Type", "application/json");
Kod di atas akan menentukan sama ada Jenis Kandungan hasil respons ialah aplikasi/json.
Anda boleh menggunakan kaedah kemudian dalam kombinasi dengan kaedah badan untuk menegaskan kandungan khusus hasil tindak balas. Contohnya:
response.then().body("userId", equalTo(1));
Kod di atas akan menentukan sama ada userId dalam hasil respons adalah sama dengan 1.
Anda boleh menggunakan kaedah yang diberikan dalam kombinasi dengan kaedah badan untuk menghantar permintaan dengan parameter badan permintaan. Contohnya:
String requestBody = "{"username": "johndoe", "password": "password123"}"; RequestSpecification request = RestAssured.given(); request.body(requestBody); Response response = request.post("/login");
Kod di atas akan menghantar permintaan POST dan badan permintaan mengandungi maklumat parameter nama pengguna dan kata laluan.
4. Nota
Apabila menggunakan RestAssured untuk ujian automatik, anda perlu memberi perhatian kepada perkara berikut:
RestAssured ialah rangka kerja ujian automatik yang biasa digunakan, terutamanya digunakan untuk ujian API RESTful. Pengujian dengan RestAssured memerlukan maklumat yang dinyatakan seperti URL, kaedah HTTP, parameter permintaan, pengepala permintaan dan penegasan respons API untuk diuji. Semasa menulis kod ujian, anda perlu memberi perhatian untuk memastikan kebolehbacaan dan kebolehselenggaraan Pada masa yang sama, apabila menegaskan keputusan tindak balas, anda perlu memberi perhatian kepada sama ada maklumat dalam keputusan tindak balas adalah konsisten dengan keperluan ujian.
Atas ialah kandungan terperinci Menggunakan RestAssured untuk ujian automatik dalam pembangunan API Java. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!