Acceptance testing REST API

อ้างอิงจาก Software testing V model ที่แสดงถึงการทดสอบแบบต่างๆในการทำ Software

Acceptance ก็คือการทดสอบว่า software ของเราสามารถทำงานได้ตาม User's requirement หรือไม่ หรือเป็นการทดสอบ Business flow หรือ Use case scenario นั่นเอง

ยกตัวอย่างเช่น การเพิ่มของเข้าไปในตู้เย็น ถ้าในมองในมุมการใช้งาน อาจจะเป็น flow ในลักษณะนี้

ต่อด้วยการเพิ่มชุดข้อมูลที่จะทำการทดสอบเข้าไป

การใช้งานของ user เป็นอย่างไร

เพื่อให้ทำงานได้ หน้าจอนั้นต้องเรียก API อะไรบ้าง

นำ data test มาช่วยออกแบบการทดสอบว่า Request, Response จะเป็นอย่างไร

สรุปขั้นตอนการออกแบบทั้งหมด

จากขั้นตอนการออกแบบทั้งหมด เราจะนำเขียน Automated test ได้ง่ายขึ้น

test("Adding item", () => {
    request
        .post({
            url: "http://localhost:3001/item",
            method: "POST",
            json: true,
            body: {
                name: "Pineapple"
            }
        }, 
        function(err, response, body){
            expect(response.statusCode).toBe(201)
        })

    request
        .get({
            url: "http://localhost:3001/items",
            method: "GET",
        },
        function(err, response, body){
            expect(response.statusCode).toBe(200)
            expect(JSON.parse(body)).toEqual([
                {
                    "id": 1,
                    "name": "Banana"
                },
                {
                    "id": 2,
                    "name": "Watermelon"
                },
                {
                    "id": 3,
                    "name": "Pineapple"
                }
            ])
        }
    )
})

results matching ""

    No results matching ""