Refresh ข้อมูลในกรณีที่ฐานข้อมูลมีการอัพเดทใน LINQ และ Entity Framework (Refresh Query in LINQ)

จากปัญหาที่เคยเจอในกรณีที่ฐานข้อมูลมีการอัพเดทไปแล้ว พอ Select ข้อมูลออกมาข้อมูลไม่ refresh ในกรณีนี้จะยกตัวอย่างการใช้งานฟังก์ชัน reload ของ System.Data.Entity.Infrastructure public class DbEntityEntry where TEntity : class // Summary:// Reloads the entity from the database overwriting any property values with values // from the database. The entity will be in the Unchanged state after calling this// method.public void Reload(); โดยการใช้งานนั้นจะยกตัวอย่างตามโค้ดด้านล่าง ProjectEntities pe = new ProjectEntities(); var … Read more

การสร้างเงื่อนไขแบบหลายตัวแปรในการค้นหาข้อมูลผ่าน LINQ (Multiple Search In LINQ)

การสร้างเงื่อนไขแบบหลายตัวแปรในการค้นหาข้อมูลผ่าน Linq เพื่อให้เห็นภาพชัดเจน จะยกตัวอย่างโดย กำหนดเงื่อนไข 3 ตัวแปร ดังนี้ ตัวแปร “ชื่อ/นามสกุล/เลขประจำตัวประชาชน” โดยใช้ control TextBox ที่ชื่อ ID=”txtSearch” ตัวแปร “โครงการรับ” โดยใช้ control DropDownList ที่ชื่อ ID=”ddProject” ตัวแปร “สถานะการตรวจเอกสาร” โดยใช้ control DropDownList ที่ชื่อ ID=”ddStatus” จากนั้นเราสร้าง Entity ยกตัวอย่างเป็น UploadEntities ซึ่งในที่นี้ สร้าง DbSet ที่เชื่อมต่อฝั่งฐานข้อมูลยกตัวอย่างเป็น V_REGISTRATION_UPLOAD ผ่าน Entity Framework 4.5 จากนั้นใช้ LINQ ในการเขียนเงื่อนไข ยกตัวอย่างตามโค้ดด้านล่าง project = ddProject.SelectedValue; status = ddStatus.SelectedValue; search = txtSearch.Text.Trim(); … Read more

การทดสอบซอฟต์แวร์ (Software Testing) – #1 กิจกรรม และขั้นตอนการทดสอบซอฟต์แวร์

สวัสดีค่ะ … ถึงเวลาซ๊ากที ฤกษ์งามยามดี กลิ่นดอกพญาสัตบรรณเลือนหาย แสงแดดสาดส่องแทนที่ ฤดูร้อนถามหา ณ เพลานี้เราได้พบกัน 🌼🌼 ก็ว่ากันตามหัวข้อของบทความ เรื่องราวเหมือนจะไม่เครียดแต่จริง ๆ ก็วิชาก๊านน วิชาการอยู่นะคะ ฮาา 😉ผู้เขียนจำได้ว่าสมัยเรียนป. ตรี (ก็ผ่านมายังไม่กี่ปีหรอกค่ะ ฮรี่ ๆ) Software Testing เป็น หัวข้อหนึ่งที่ผู้เขียนต้องเรียนด้วยค่ะ .. และผ่านมาไม่กี่ปีปัจจุบันผู้เขียนก็ได้มีโอกาส (ที่เรียกว่าบทบาทหน้าที่) เป็นผู้ทดสอบซอฟต์แวร์มาแล้วหลาย ๆ โปรแกรมค่ะ (อ๊ะไม่กี่ปีเหรอ ?) จึงได้รวบรวมข้อมูลและประสบการณ์เอาไว้ และถือโอกาสนี้มาเขียนบทความแชร์ให้กับผู้อ่านเพื่อเป็นแนวทางและ/หรือความรู้เล็ก ๆ น้อย ๆ ได้นำไปใช้ในการทดสอบซอฟต์แวร์ซึ่งถือเป็นขั้นตอนหนึ่งที่สำคัญไม่น้อยไปกว่าขั้นตอนอื่นในกระบวนการพัฒนาซอฟต์แวร์กันค่ะ สำหรับเนื้อหาหลักของบทความนี้ (ตอนที่ 1) ผู้เขียนจะนำเสนอข้อมูลและแชร์ประสบการณ์ให้กับผู้อ่านทราบเกี่ยวกับกิจกรรมและขั้นตอนต่าง ๆ ของการทดสอบซอฟต์แวร์กันก่อนค่ะ ในตอนต่อไปเราจะลงลึกไปแต่ละขั้นตอนพร้อมตัวอย่าง และประสบการณ์ที่ผู้เขียนอยากจะแชร์ให้ผู้อ่านได้ทราบกันนะคะ (เผื่อว่าเราจะได้มาระดมสมอง ช่วยแสดงความคิดเห็นกันเข้ามา และ/หรือผู้อ่านจะมีข้อเสนอแนะให้กับผู้เขียน ถือว่าเป็นการแลกเปลี่ยนกันค่ะ)การทดสอบซอฟต์แวร์ที่ผู้เขียนจะมาแชร์นั้น จะเป็นการทดสอบแบบ Functional Testing โดยใช้เทคนิค … Read more

มารู้จัก Web Element Locator กัน

ทำไม Tester ต้องรู้จัก Web Element Locator ก็เพราะว่าทุกสิ่งทุกอย่างที่ทุกคนเห็นบนหน้าเว็บ มันคือ Web Element และ Robot Framework ก็รู้จัก หน้าเว็บจาก  Element Locator ที่เหล่า Tester กำหนดให้ในแต่ละ Test script นั่นเองค่ะ ดังนั้น Tester ควรจะต้องรู้จัก Element Locator และวิธีการใช้งานค่ะ ตัวอย่าง Locator ของ Selenium library ดังรูป Element Locator มีหลายประเภท ดังนี้ 1. Id Element ที่มีการกำหนด id ไว้ ซึ่งเราควรจะเลือกใช้ locator นี้ค่ะ มีความเสถียรมากสุด เพราะถึงแม้ว่าจะมีการเปลี่ยนย้ายตำแหน่งของ Element นี้ จะไม่กระทบ Test script … Read more

Run automated test ด้วย Chrome แบบที่ไม่มี web browser แสดงขึ้นมา (Headless Mode)

สืบเนื่องจากการทำ Automated test แล้วรำคาญการเปิดหน้าต่างการทำงานขึ้นมา เพราะอยากจะรู้แค่ผลลัพธ์ก็เท่านั้น วันนี้เลยมาเสนอ Headless Mode feature เป็นของ Chrome สามารถ run automated test ด้วย Chrome แบบที่ไม่มี web browser แสดงขึ้นมา หรือที่เรียกกันว่า Headless Mode นั่นเองค่ะ ไม่ต้องDownload อะไรใด ๆ เลย เพียงแค่เราติดตั้ง Chrome เท่านั้นก็สามารถใช้งาน feature นี้ได้แร่ะ (Version 60 ขึ้นไป) ขั้นตอนมาดูกันเลย ในตัวอย่างนี้จะเป็นการเขียน Code ทดสอบด้วย Selenium Library จ้า การตั้งค่า Headless Mode คำสั่งดังนี้ ตัวอย่าง Test script สำหรับรันเทส web แบบ Headless mode … Read more