Retrospective ด้วย ORID

ORID เป็นกิจกรรมแบบหนึ่งที่คนที่ทำหน้าที่เป็น facilitator ใช้วิธีการพูดคุยในการดำเนินกิจกรรม ในกิจกรรมจะเป็นการตั้งคำถามให้ผู้เข้าร่วมกิจกรรมตอบผ่านคำถาม 4 คำถาม โดยทั้ง 4 คำถามจะเป็นคำถามที่นำไปสู่การตัดสินใจ (Decision Making) ของผู้เข้าร่วมกิจกรรม

อ่านต่อ »

Migrate jasmine ไปใช้ jest ใน Angular 6

อะกิมาบอกว่า jest น่าสนใจดีนะ จำได้ว่ามีคนเคยชวนไปใช้ jest แต่ตอนนั้นก็ยังไม่ได้สนใจอะไร ตอนนี้พอมีเวลาก็เลยมาลองซะหน่อย มี project ทดสอบอยู่ตัวนึงที่เอาไว้ใช้สอน robot คือ ng-calculator ซึ่งเดิมใช้ jasmine อยู่ เดี๋ยวจะมาลองเปลี่ยนเป็น jest ดู

อ่านต่อ »

เขียน test บน go ด้วย testify

จริง ๆ ใน golang มี package ชื่อ testing อยู่ ใช้ตัวนั้นก็ได้ ตรงไปตรงมาดี ความซับซ้อนก็จะเริ่มมาตอนที่เราอยากจะทำอะไรที่ยากขึ้น เช่น การทำ test double หรือการเปรียบเทียบ struct 2 ตัว ซึ่งจริง ๆ แล้วเราสามารถเอาพวก reflect มาใช้เปรียบเทียบ struct ได้ ส่วนการทำ test double ก็จะซับซ้อนกว่านั้น

อ่านต่อ »

โชว์ Code Coverage ของ Angular Project ใน Github

เข้าไปเห็น repo ใน github ของหลาย ๆ คน เขาแสดง code coverage เป็น badge แล้วมันดูเท่ไม่หยอก ที่สำคัญมันออโต้ด้วย ไม่ต้องมานั่งพิมพ์เองหลังจาก run unit test เสร็จว่า code coverage เราเท่านี้แล้วนะ ให้มันอัพเดทโดยอัตโนมัติดีกว่า จิ้ม ๆ ดูเห็นเขาใช้ service ของ codecov.io เลยไปลองมั่งดีกว่า

จริง ๆ วิธีนี้ใช้กับ provider เจ้าอื่นได้ด้วย ไม่ใช่แค่ github พวก bitbucket, gitlab ก็ได้นะ

อ่านต่อ »

ทำ Code Analysis ของ .NET Core ใน SonarQube

ก่อนนี้ SonarQube ยังไม่มี feature ที่รองรับ .NET Core ถ้าจะใช้งานบน platform ที่เป็นตระกูล Linux จะต้องใช้ mono เพื่อให้มันสามารถรัน MSBuild.exe ได้ จนเมื่อเดือนมีนาคมที่ผ่านมา SonarQube ก็ออกตัว SonarQube Scanner for MSBuild ที่สนับสนุนการ scan code ที่เป็น .NET Core แบบไม่ต้องพึ่ง mono และสามารถทำงานผ่าน dotnet cli ได้มาใช้กันแล้ว

อ่านต่อ »

เอา .NET Core Project Test ออกจาก Code Coverage ใน Sonarqube

ในโพสต์ที่แล้วลองหา Code Coverage ใน .NET Core ไปแล้ว พอเอาเข้าไปแสดงใน Sonarqube มันดันมีผลของ Coverage จาก Project Test ปนเข้ามาด้วย นั่นแปลว่า ถ้าเราไม่หาวิธีเอามันออกจากผล Coverage เราก็ต้องทำ Project Test ขึ้นมาอีกอัน เพื่อเป็น Unit test ของ Project Test นั้นซ้อนอีกที ซึ่งวิธีแรกดูเข้าท่ากว่าเยอะ

อ่านต่อ »

ดู​ Code Coverage บน .NET Core ด้วย coverlet

หาวิธีเช็ค code coverage บน dotnet core บน non-windows platform จนเจอตัวที่ชื่อ minicover ตามที่ฟิวแนะนำด้วย blog ของปุ๋ย เข้าไปอ่านก็เจอว่าโอเคดีเหมือนกันนะ ตัว minicover แต่ก็ยังไม่ได้ตัดสินใจว่าจะใช้ minicover หรือตัวอื่น เลยหา ๆ ต่อ จนเจออีกตัวที่ชื่อ coverlet ก็โอเคเหมือนกัน ด้วยอยากลองทางเลือกอื่น ๆ บ้าง แถมกับที่ ตัว coverlet มันดูง่ายดี เลยลองเอา coverlet มาใช้ดู

อ่านต่อ »

รัน unit test บน jasmine ด้วย karma บน javascript บ้าน ๆ

ไปเจอโค้ด javascript ของลูกค้าแบบที่ไม่ได้ใช้ framework อะไรที่เป็น legacy คือไม่มี test ด้วย แล้วต้องการเขียน unit test เลยแนะนำว่าให้ลองใช้ jasmine ไปแบบไม่ได้บอกอะไร คิดว่าไม่เกิน 15 นาทีน่าจะหาวิธีใช้งานได้ เดินไปดูอีกที อ้าว เข้าป่าไปซะแล้ว เลยนึกขึ้นได้ว่า jasmine เฉย ๆ มันจะยุ่ง ๆ หน่อย ถ้าใช้ karma ร่วมด้วย น่าจะสะดวกกว่านี้เยอะ เลยทำตัวอย่าง ยัดใส่ github แล้วก็เอาไปให้ลูกค้าดู น่าจะเห็นทางไปละ

อ่านต่อ »

ใช้ Watcher ใน .NET Core

Microsoft ทำ tool ที่เอาไว้ auto rerun โค้ดใน .NET Core ไม่ว่าจะเป็น app เราหรือแค่เฉพาะ test เรียกว่า watcher โดยมันจะทำหน้าที่คอย detect ว่าโค้ดเรามีการเปลี่ยนแปลงหรือไม่ ถ้ามีการเปลี่ยนแปลงเกิดขึ้น มันก็จะ auto rerun สิ่งที่เราทำอยู่ให้

อ่านต่อ »

Headless Robot Framework มาพร้อมกับ SeleniumLibrary แล้ว

ก่อนหน้านี้เคยโพสต์เกี่ยวกับการใช้ Headless Browser ใน Robot Framework ทั้ง Chrome และ Firefox ตอนนั้นตัว Selenium Library เองยังไม่สนับสนุนการใช้ Headless Browser ทำให้ต้องเขียน Keyword หรือ Library เอา เพื่อเปิดใช้งาน Chrome หรือ Firefox แบบ Headless แต่วันนี้ลองเข้าไปดูใน Document ของ SeleniumLibrary อีกที อ้าวเฮ้ย มันสนับสนุน Headless Browser แล้ว ทั้ง Chrome และ Firefox เลยเว้ย ลองกันเลยดีกว่า

อ่านต่อ »