Quantcast
Channel: cc :: somkiat
Viewing all articles
Browse latest Browse all 1997

[Golang] ว่าง ๆ มาทำ Integration test ด้วย TestContainer กัน

$
0
0

หลังจากก่อนหน้านี้
เขียนอธิบายการทำ Integration test ด้วย TestContainer กับภาษา Java
ตอนนี้ทางผู้พัฒนาได้เพิ่มสำหรับภาษา Go เข้ามาให้แล้ว
ชื่อว่า TestContainer Go
จะรอช้าทำไม ลองไปใช้งานกันหน่อย

เรื่องของ Integration test นั้น เป็นการทดสอบที่จำเป็นอย่างมาก

แต่ปัญหาหลัก ๆ คือ เรื่องของ environment หรือสิ่งแวดล้อมที่เกี่ยวข้องจะเยอะ
บ่อยครั้งมีความซับซ้อน
เช่นการติดตั้งและข้อมูลในทดสอบ
แต่เมื่อมาถึงยุคของ container ด้วย Docker
ทำให้การจัดการง่ายขึ้นเยอะ มาลองใช้งานกันดู

ก่อนอื่นก็ต้องติดตั้ง Docker ก่อนนะ

เมื่อเรียบร้อยแล้วก็มาเขียนชุดการทดสอบด้วยภาษา Go กัน
เป็นตัวอย่างของการสร้าง web server ด้วย NGINX

[gist id="c3bab71b88afb0f358a64d95e1a6f30c" file="nginx_test.go"]

คำอธิบาย

ทำการ Download Docker Image ของ NGINX จาก Docker Hub
โดยรูปแบบชื่อของ Image คือ name:tag นั่นเอง
ที่สำคัญมี waiting ให้ด้วย
นั่นคือ จะรอจนกว่า NGINX จะ start เสร็จเรียบร้อย
จากนั้นจึงทำการทดสอบต่อไป
ซึ่งทำให้การจัดการ Integration test สะดวกและง่ายขึ้น

ดู VDO แนะนำได้จากงาน Docker Conf 2019

https://www.youtube.com/watch?v=RoKlADdiLmU

Reference Websites


Viewing all articles
Browse latest Browse all 1997

Trending Articles