Sign in

Poolsawat Apin
Senior Developer @Telecom, Full Stack Developer [Subscribe Me @poolsawat.com]

ใช้งาน Postman ไปสักระยะนึง มีความต้องการอยากที่จะเปลี่ยน URL ระหว่าง Dev หรือ Staging (E2E) จะต้องมาแก้ Request URL รู้ไหมว่า Postman สร้าง Variables แยกแต่ละ Environments ได้นะ บทความนี้จะมาบอกวิธีการตั้งค่ากัน

Postman เป็นแพลตฟอร์มเพื่อใช้ทดสอบ API (REST ,SOAP ,GraphQL) ช่วยให้นักพัฒนาทำงานได้สะดวกมากยิ่งขึ้น โดยมีความสามารถหลายอย่าง เช่น
- API Client: สร้าง Http Request เพื่อทดสอบ Service ได้อย่างง่ายดาย
- Automated Testing: ทำการทดสอบด้วยตัวเอง แบบอัตโนมัติ มีการทำงานร่วมกับ CI/CD เพื่อให้แน่ใจว่าการเปลี่ยนแปลงโค๊ดจะไม่ทำให้เกิด effect กับระบบเดิม
- Design & Mock: จำลองตัวเองเป็นเหมือน backend เพื่อ simulating endpoint และ response data ได้ โดยไม่จำเป็นต้องไปตั้ง server และพัฒนาโค๊ดในการ backend
- Documentation: มีเอกสารแนะนำการใช้งานที่สวยงาม ใช้งานง่าย
-Monitors: ตรวจสอบสังเกตุการณ์รายละเอียดของ Response หรือแม้แต่ เวลาการตอบสนองของ API
- Workspaces: จัดเตรียม context เพื่อใช้งานจัดสร้างและใช้งาน API (ยังไม่เคยใช้งาน feature นี้)

ตั้งค่า Postman เพื่อสร้าง Manage Environments Variables

3. สร้าง Postman Manage Environment


บทความนี้จะมาแบ่งปันการทำ transaction บน browser ด้วย web3 library สำหรับผู้เริ่มต้นที่อยากจะเขียน smart contract แบบเข้าใจง่าย ๆ (ผมก็มือใหม่) เลยอยากจะแชร์ในวิธีที่ผมลองผิดลองถูก จะมาสรุปให้ในบทความนี้

แนะนำเครื่องมือ เตรียมตัวก่อนเริ่มเขียน smart contract ทำ transaction บน browser (web3js)


RDBMS มีให้เลือกใช้งานมากมาย ทั้งแบบ ฟรี (free) , มีค่า (license fee) Oracle ,MSSQL ,PostgreSQL ,MySQL จึงไม่ใช่เรื่องง่ายเลย ที่จะเลือกมาศึกษาสำหรับผู้เริ่มต้น

RDBMS มาพร้อมกับความสามารถการทำ Stored Procedure และ Function มันก็คือการเพิ่มความสามารถของงาน SELECT ,INSERT ,UPDATE ,DELETE ให้อยู่ในรูปแบบการเขียนโปรแกรม ซึ่งในแต่ละ Database Business เองก็มีการเขียนที่แจกต่างกัน แต่โดยรวมมี concept การทำงานที่ไม่ต่างกันเลย เมื่อเรียนรู้ Oracle Database จนเชียวชาญ ก็จะไปเรียนรู้ MySQL Stored Procedure ,Function ได้ไม่ยากเลย

อยากจะเขียนโปรแกรมกับ RDBMS ละ ทำไง

มีบางสถานะการอยากที่จะ reuse (column/field) ที่ผ่านการใส่ condition แล้ว กับ sql statement อื่น ๆ เหมือนการที่เราเขียน method (JAVA) หรือ function (Javascript) มีการส่ง parameter (IN parameter) เหล่านี้ จะมาหาคำตอบและทำความรู้จัก Stored Procedure & Function กัน

Stored Procedure & Function คืออะไร

Procedure
- เป็น schema object ชนิดนึงที่ถูกเก็บอยู่ใน database
- เป็นโปรแกรมย่อยชนิดหนึ่งที่สร้างเพื่อใช้งานเฉพาะงาน
- สามารถเรียกใช้งานซ้ำ ๆ ได้ , แก้ไขได้ตลอด
- มีความสามารถที่มากกว่า Function
- มีการ return ค่า (OUT parameter)
- มีการ รับค่า ( IN ) , ส่งค่าออก…


ปัญหา pgAdmin (client tool) ไม่สามารถ connect กับ PostgresSQL Database server ได้

เพิ่ม Client IP ที่ไฟล์ */PostgreSQL/12/data/pg_hba.conf (IP v4)

จากเดิม

# TYPE DATABASE USER ADDRESS METHOD

# IPv4 local connections:
host all all 127.0.0.1/32 md5

แก้ไขเป็น

# TYPE DATABASE USER ADDRESS METHOD

# IPv4 local connections:
host all all 127.0.0.1/32 md5
host all all {client ip}/24 md5 #เพิ่ม client ip ใหม่

แก้ไขไฟล์ PostgreSQL/12/data/postgresql.conf

จากเดิม

#listen_addresses = ‘localhost’

แก้ไขเป็น

listen_addresses = ‘*’

จากนั้น restart postgresql service แล้วลอง pgAdmin ต่อมาอีกครั้ง ก็จะ connected remote host ได้เรียบร้อย


พอดีช่วงนี้มีงานทำ CI/CD ด้วย Jenkins + Gitlab และอยากที่จะทำ flow ให้เต็มระบบ

Push code to Gitlab => Gitlab Webhook =>triggered Jenkins build => run build

สิ่งที่ต้องทำเพิ่มที่ jenkins


เมื่อถึงระยะเวลาหมดอายุของบัตร ใบอนุญาตขับรถส่วนบุคคล โดยปกติการต่ออายุใบอนุญาตขับขี่จะมีกันหลายรูปแบบ และขอเล่าถึงการเตรียมเอกสารเพื่อเข้าไปต่ออายุตามประเภทของใบอนุญาตกันเลย
อายุใบอนุญาตชั่วคราวจาก 2 ปี เป็น 5 ปี
1. ใบอนุญาตชั่วคราวอายุไม่ต่ำกว่า 1 ปี
2. บัตรประชาชนฉบับจริง
3. ใบรับรองแพทย์ที่ได้รับผลการตรวจว่า สุขภาพสมบูรณ์ ที่ผ่านเกณฑ์ทำใบขับขี่
อายุใบอนุญาต 5 ปี เป็น 5 ปี
1. ใบขับขี่เดิมที่หมดอายุ
2. บัตรประชาชนฉบับจริง

ขอเล่าถึงการเตรียมตัวก่อนการไปเข้ารับการบริการต่อใบขับขี่ ณ ปัจจุบันล่าสุด ขณะนี้

ขอยกเคสการเข้ารับบริการที่สถานีขนส่ง จตุจักร ณ อาคาร 4 ชั้น 2 ให้บริการทำใบขับขี่
การเตรียมตัวทำดังนี้
1. ทำแบบทดสอบจาก
ระบบการอบรมต่ออายุใบอนุญาตขับรถ ของกรมการขนส่ง (กดเข้าลิ้งนี้)

https://www.dlt-elearning.com/

เมื่อเข้าไปแล้วกด “ลงทะเบียนเข้าการอบรม” ระบบแสดงหน้าจอ ขั้นตอนการอบรมต่ออายุใบอนุญาตขับรถ หลัก ๆ มี 4 ขั้นตอน ดังนี้
1. คลิกปุ่ม “ลงทะเบียนเข้ารับการอบรม” กรอกข้อมูล เลขบัตรประจำตัวประชาชน, เลขที่ใบอนุญาตขับรถ, วันอนุญาตและวันสิ้นอายุใบอนุญาตขับรถเลือกการอบรมตามใบอนุญาตขับรถที่ประสงค์จะต่ออายุ จากนั้นคลิกที่ปุ่ม “ขั้นตอนต่อไป”
2. ชมวิดีโอการอบรมตามที่เลือก เมื่อรับชมวิดีโอจนจบ ให้คลิกที่ปุ่ม “ขั้นตอนสุดท้าย”
3. ยืนยันตัวตนโดยกรอกข้อมูลเลขบัตรประจำตัวประชาชน และเลขที่ใบอนุญาตขับรถเพื่อรับผลการอบรม จากนั้นคลิกที่ปุ่ม “เสร็จสิ้น”
4. ตรวจสอบผลการอบรม ที่หน้าแรกของเว็บไซต์ คลิกที่ปุ่ม “ตรวจสอบสถานะการอบรมออนไลน์” จากนั้นกรอกเลขบัตรประจำตัวประชาชน และคลิกที่ปุ่ม “ตรวจสอบสถานะ”…


สวัสดีครับ บทความนี้จัดทำเพื่อเป็นแหล่งรวบรวมบทความเกี่ยวกับการทำ Automated Testing ด้วย Cypress ที่จะเอาบทความเนื้อหาของผมเองและจากแหล่งต่าง ๆ มารวบรวมไว้ที่นี่ เพื่อให้ง่ายในการเข้าถึง และช่วยส่งเสริมการพัฒนาซอพแวร์ให้มีคุณภาพดีที่ยิ่ง ๆ ขึ้นไป

บทความจาก poolsawat.com

เป็นบทความที่มาจากการเขียนของผมเอง (poolsawat.com) ขอฝากไว้ด้วยครับ

poolsawat.com

EP0: Cypress Automate Testing (E2E) 101

EP1: Cypress แนะนำโครงสร้างของ Project EP1

EP2: Cypress แนะนำอธิบาย 20 API Commands ที่ใช้งานบ่อย EP2

EP3: Cypress แนะนำโครงสร้างของไฟล์ testscript (*.spec.js) EP3

EP4: Cypress Assertions ต่าง ๆ ที่ควรต้องรู้ EP4

EP5: Cypress ทำความรู้จัก และตัวอย่างการใช้งาน Spy,Stub EP5

EP ถัดไปจะเขียนเพิ่มเรื่อย ๆ ครับคอยติดตาม

Cypress.io Thialand

กลุ่ม Cypress.io Thailand จะรวบรวมบทความที่เกี่ยวกับการใช้งาน Cypress กับ Case scenario ต่าง

Cypress Github

เป็น official repository ของ source code open source ของ Cypress ทั้งหมดสามารถแจ้ง Issue การใช้งาน หรือตามหา Answer ของ issue ต่าง ๆ ได้จากแหล่งนี้


เมื่อ Developer ใช้งาน Program หรือ Tools ที่ต้องมีการ access Internet มักจะประสบปัญหาเรื่องการถูกปิดกันด้วย Proxy ของบริษัท เพราะเป็นในเครื่องความปลอดภัย ซึ่งจะไม่ใช้งาน Internet ของภายในบริษัทก็เห็นว่าจะเพิ่มความลำบากขึ้นมาอีก บทความนี้จึงขอรวบรวมเป็นที่เก็บข้อมูลการ Set Internet Proxy ไว้ที่นี่เอาซะเลย

Git

NPM

Yarn

Maven

Gradle

Docker (Docker-Machine)


CI/CD คำอธิบาย อ่านจากบทความนี้ โดยบทความจะนำเสนอในนี้ จะเน้นไปทางการปฏิบัติ มาเริ่มกันเลยดีกว่า

เริ่มเขียน pipeline script

3. create .gitlab-ci.yml file


ณ วันที่เริ่มเขียนบทความนี้อายุของผมก็เข้าเลข 30 แล้ว คิดถึงคำพูดที่ว่าอายุ 30 แล้วมีของอะไรเป็นของตัวเองบ้างแล้ว สำหรับผมไม่ค่อยจะสนคำพูดเหล่านั้นสักเท่าไหร่ แต่สนใจย้อนมองว่าเริ่มทำอะไรที่อยากที่จะทำไปแล้วมากกว่า บทความนี้จะไม่ขอพูดถึงเรื่องเงินหรือทรัพย์สินที่ ณ ตอนนี้มีอยู่เท่าไหร่ แต่จะมาพูดถึงเมื่อครั้งอดีตที่ผ่านมาผมได้ทำอะไรบ้าง ทั้งที่ประสบการ์ความสำเร็จในระดับนึง และล้มเหลว จะถือว่าเป็นประสบการณ์ในชีวิต ที่ทำให้ได้เรียนรู็สิ่งใหม่ ๆ

เริ่มเล่าประสบการณ์

โดยผมจะมีเกณฑ์ให้คะแนนสำหรับสิ่งที่ได้ทำต่าง ๆ เป็นระดับ 0–5 ความหมายคือ 0 คือ เริ่มทำแล้วไม่สำเร็จ และ 5 คือทำสำเร็จแล้วยังทำอยู่ในปัจจุบัน และจะสรุปปัญหา สาเหตุ ที่ทำสำเร็จ และเกิดความล้มเหลวในสิ่งนั้น ๆ ที่ทำ

ทำระบบ ให้คำปรึกษา สำหรับนักศึกษา (ความสำเร็จ 3/5)

เป็นช่วงเวลาเกือบ 2 ปีที่มีงานแบบนี้เข้ามาให้ทำ หลังจากเรียนจบมหาลัยจะยังพอมีเพื่อน ๆ พี่ ๆ ที่ยังไม่จบการศึกษา (เพื่อน ๆ พี่ ๆ ยังทำ Project จบการศึกษา (graduation project) ไม่เรียบร้อย) ก็ต้องการคนช่วย เพราะเป็น Project เกี่ยวกับการเขียนโปรแกรม จึงได้เลือกรับงานนี้มาทำเป็นอาชีพเสริม
ลักษณะงาน ให้คำปรึกษา ,เขียนโปรแกรม, อธิบายการทำงาน ,ช่วยออกแบบเอกสารเล่ม
ปัญหา/อุปสรรค เนื่องจากการติดตามงานของลูกค้าค่อนข้างยาก เพราะอยู่คนละสถานที่ (ผมอยู่ กทม ลูกค้าอยู่ ตจว) ทำให้ติดต่อพบเจอกันยาก ช่วงปีหลัง ๆ ก่อนเลิกรับงาน ลูกค้าน้อยลง เพราะคนที่รู้จักเรียบจบ กันไปหมดแล้ว…

Poolsawat Apin

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store