ฉันต้องการที่จะเริ่มต้นการเขียนการทดสอบหน่วยรหัสหลามฉันและpy.testเสียงกรอบเช่นเดิมพันที่ดีกว่าของงูหลามรวมUnitTest ดังนั้นผมจึงเพิ่ม "การทดสอบ directory" กับโครงการของฉันและเพิ่มtest_sample.pyกับมัน ตอนนี้ฉันต้องการกำหนดค่า PyCharm เพื่อเรียกใช้การทดสอบทั้งหมดในไดเรกทอรี "การทดสอบ" ของฉัน
PyCharm กล่าวหาว่าสนับสนุน py.testในการทดสอบนักวิ่ง คุณควรจะสามารถที่จะสร้างการทำงาน / การแก้ปัญหาการกำหนดค่าที่จะเรียกใช้การทดสอบของคุณและ PyCharm ที่ถูกกล่าวหาว่ามีการ"สร้างการตั้งค่า" กล่องโต้ตอบเฉพาะสำหรับ py.test แต่นั่นเป็นขอบเขตที่สมบูรณ์ของเอกสารของพวกเขาในเรื่องและฉันไม่สามารถหากล่องโต้ตอบที่ถูกกล่าวหาได้ทุก
หากฉันคลิกขวาที่ไดเรกทอรีในหน้าต่างเครื่องมือโครงการฉันควรเห็นรายการเมนู "สร้าง <name>" แต่รายการเมนูเดียวที่เริ่มต้นด้วย "สร้าง" คือ "สร้างการกำหนดค่าการเรียกใช้" ตกลงอาจเป็นเอกสารที่ผิดและ "สร้างการกำหนดค่าการเรียกใช้" อาจทำให้คุณมั่นใจได้ แต่น่าเสียดายที่มีเพียงสองรายการในเมนูย่อยของมันคือ "Unittests ใน C: \ mypath ... " และ "Doctests ใน C: \ mypath ... " ซึ่งไม่เกี่ยวข้อง - ฉันไม่ได้ใช้ทั้ง unittest และ doctest ไม่มีรายการเมนูสำหรับ py.test
หากฉันเปิด test_sample.py และคลิกขวาในหน้าต่างตัวแก้ไขฉันจะได้รับรายการเมนู "สร้าง <name>" ที่มีสัญญา: มี "สร้าง 'Unittests ใน test_sa ...'... " ตามด้วย "Run 'Unittests ใน test_sa ... ' "และ" Debug "Unittests ใน test_sa ... '" ดังนั้นอีกครั้งมันทั้งหมดเฉพาะกับกรอบ unittest; ไม่มีอะไรสำหรับ py.test
หากฉันลองรายการเมนูที่พูดว่า "unittest" ฉันจะได้รับกล่องโต้ตอบพร้อมตัวเลือกสำหรับ "ชื่อ", "ประเภท", "กลุ่มการทดสอบ" กล่องที่มี "โฟลเดอร์" และ "รูปแบบ" และ "สคริปต์" และ "คลาส" "และ" ฟังก์ชั่น "ฯลฯ ฟังดูเหมือนว่าเป็นเอกสารในกล่องโต้ตอบเพื่อเพิ่มการกำหนดค่าสำหรับการทดสอบหน่วย Pythonและไม่เหมือนกับตัวเลือก" ชื่อ "และ" ทดสอบเพื่อเรียกใช้ "และ" คำหลัก "ที่ควรจะปรากฏขึ้น ในการกำหนดค่าสำหรับกล่องโต้ตอบpy.test ไม่มีอะไรในกล่องโต้ตอบเพื่อสลับกรอบการทดสอบที่ฉันเพิ่ม
ฉันใช้ PyCharm 1.5.2 บน Windows กับ Python 3.1.3 และ pytest 2.0.3 ฉันสามารถรันpy.test
การทดสอบของฉันได้จากบรรทัดคำสั่งดังนั้นจึงไม่ใช่เรื่องง่ายเหมือน pytest ที่ไม่ถูกติดตั้งอย่างถูกต้อง
ฉันจะกำหนดค่า PyCharm ให้เรียกใช้การทดสอบ py.test ได้อย่างไร