หลังจากหักดิบ ให้ Jenkins ถ้า Test Fail ให้ระบบตี Fail เลย มาเกือบๆ 2 ปี เรียกว่าหักดิบจริงๆแหละ เพราะคนในบริษัทไม่ค่อยเห็นด้วยเท่าไหร่ ยังเชื่อมั่นในทุกคนจะมาตรวจเองด้วยมือ และ QA ตรวจทุกรอบ
และวันนี้เจอเคสแปลกๆ เข้าตามรูปครับ
จากเคสนี้จะเห็นว่ามัน Test Fail แบบแปลกๆ ผ่านหมด / fail 1 -7 สุ่มกันไป และสุ่ม Agent ด้วย
ถ้าเราเข้ามาดูลึก มันจะเป็นเรื่องของ Concurrent / Thread ได้นะ แยกกันทำ แล้วทำงานไม่ได้ ซึ่งถ้าหากไปดูที่ Service ที่ Call Helper ตัวนี้จะพบว่า มัน Run Parallel.ForEach ครับ
Test method ds.Perf.Service.Impl.ROI.Tests.ROIEqServiceTests.T352946_ProcessDataTest threw exception: System.AggregateException: One or more errors occurred. (Operations that change non-concurrent collections must have exclusive access. A concurrent update was performed on this collection and corrupted its state. The collection's state is no longer correct.) ---> System.InvalidOperationException: Operations that change non-concurrent collections must have exclusive access. A concurrent update was performed on this collection and corrupted its state. The collection's state is no longer correct.
สำหรับเคสนี้ ต้องคุยกันครับ ว่าดูจาก Test / Spec เจ้าตัวมี Intention ยังไง แล้วเกิดการเปลี่ยนแปลงตรงนี้ Impact ขนาดไหน แล้วหาทางออกร่วมกันครับ
Discover more from naiwaen@DebuggingSoft
Subscribe to get the latest posts sent to your email.