ก่อนหน้านี้ เราจะใช้เครื่องมือที่ชื่อว่า SpecRun.SpecFlow ในการรัน Test Scenario และสร้างรายงาน Test Execution Report.html ซึ่งปัญหาที่เราพบก็คือ เราไม่สามารถสร้างไฟล์ผลการทดสอบ .trx ซึ่งเป็นไฟล์ที่ได้จากการรัน MsTest ทำให้เกิดปัญหาตามมาดังนี้ครับ
- ไม่สามารถนำผลไปใช้ใน Team Foundation
- ถ้าใครใช้ Test Report ของ Pickles จะไม่สามารถนำผลการทดสอบมารวมใน Pickles Report ได้ครับ
ซึ่งวิธีแก้ปัญหานี้ เราจะเปลี่ยนมาใช้เครื่องมือที่ชื่อว่า Specflow.MsTest ครับ
อันดับแรก uninstall SpecRun.SpecFlow ออกกันก่อน
uninstall-package SpecRun.SpecFlow
แล้วค่อยเปลี่ยนมาใช้ Specflow.MsTest
install-package specflow.mstest
เมื่อเข้าไปดูไฟล์ App.config จะเห็นว่า UnitTest Provider เปลี่ยนเป็น MSTest
ที่นี้ลองมารัน Test Explorer ซึ่งจะได้ผลดังนี้ครับ
(สังเกตว่าภาษาไทยสระลอยมีปัญหา แต่เราไม่ใส่ใจครับ เนื่องจาก Pickles Test Report ยังคงแสดงภาษาไทยได้ถูกต้อง)
ทีนี้เรามาสร้างไฟล์ .trx กันครับ
1. เปิด Command Prompt
2. ใส่คำสั่ง mstest ดังนี้ครับ
(สามารถดูเงื่อนไข หรือคำสั่งได้โดยใช้ “mstest /help” นะครับ)
mstest /testcontainer:UnitTestProject1\bin\Debug\UnitTestProject1.dll /category:”mytag”
Enter ได้เลย
จากรูปด้านบนจะเห็นผลลัพธ์
Passed = 1
Failed = 1
เข้าไปดูที่ Folder : TestResults จะได้ไฟล์นามสกุล .trx เมื่อเปิดไฟล์ .trx จะแสดงดังรูปครับ
สามารถคลิกขวาเลือก View Test Results Details เพื่อดูรายละเอียดได้เลย
[…] SpecFlow.MsTest […]
ถูกใจถูกใจ