การกำหนดค่า IntelliJ IDEA สำหรับการทดสอบหน่วยด้วย JUnit


181

ฉันตัดสินใจลองใช้ IntelliJ เมื่อเช้านี้ผ่านทางรุ่นทดลองและติดตั้งปลั๊กอิน JUnit ฉันสร้างโครงการ Java ใหม่และฉันต้องการเขียนกรณีทดสอบ

ฉันจะเพิ่มไฟล์ junit.jar ไปยังโครงการของฉันได้อย่างไร (ฉันอยากจะเพิ่มเข้าไปในทุก ๆ โปรเจ็กต์ของจาวาในตอนนี้และตลอดไปมากกว่านี้ - มีวิธีการทำเช่นนั้นหรือไม่?)


6
คุณสามารถยอมรับหนึ่งเป็นคำตอบและฉันต้องการหนึ่งจาก @CrazyCoder ...
Kjellski

ในความเป็นจริงไม่มีคำตอบจริงตอบคำถาม"ฉันจะเพิ่ม junit.jar ในโครงการของฉันได้อย่างไร " ยัง 71 และ 104 โหวต ... ดังนั้นไม่เคยหยุดฉันที่น่าตื่นตาตื่นใจ
m0skit0

ไม่มีคำถามใดที่มีคุณสมบัติเป็นคำตอบสำหรับคำถามนี้ เป็นไปได้หรือไม่
incises

คำตอบ:


135

กดCtrl+ Shift+ Tในเครื่องมือแก้ไขรหัส มันจะแสดงป๊อปอัพพร้อมข้อเสนอแนะเพื่อสร้างการทดสอบ

Mac OS: ⌘ Cmd+ Shift+T


5
หากคุณต้องการคำตอบที่ "แข็ง" โปรดเลื่อนลง นี่คือคำตอบที่รวดเร็วและสั้นด้านล่างคือคำตอบที่ละเอียดยิ่งขึ้น
Igor Konoplyanko

4
คำตอบนั้นสั้นและเร็วและยังอธิบายว่าเมนูทำอะไรและตัวเลือกใดที่ OP ควรพิจารณาเลือก
vikingsteve

คุณไม่รู้ว่าแผนที่ ctr-shft-t คืออะไร
ฟิลิป Rego

บน mac การแม็พให้รูปขนาดย่อ ค่อนข้างแน่ใจว่านั่นไม่ใช่สิ่งที่ถูกต้อง
dtc

193

หากคุณมีคลาสทดสอบอยู่แล้ว แต่ขาดการพึ่งพาไลบรารี JUnit โปรดดูที่การ กำหนดค่าไลบรารีสำหรับหน่วยเอกสารการทดสอบหน่วย การกดAlt+ Enterบนรหัสสีแดงจะทำให้คุณมีเจตนาที่จะเพิ่มไหที่หายไป

อย่างไรก็ตามความคิดข้อเสนอมากขึ้น หากคุณยังไม่มีคลาสทดสอบและต้องการสร้างคลาสสำหรับคลาสแหล่งใดก็ได้ให้ดูคำแนะนำด้านล่าง

คุณสามารถใช้แอคชั่นสร้างการทดสอบความตั้งใจโดยกดAlt+ Enterขณะที่ยืนอยู่บนชื่อคลาสของคุณในตัวแก้ไขหรือโดยใช้Ctrl+ Shift+ Tแป้นพิมพ์ลัด

กล่องโต้ตอบจะปรากฏขึ้นเมื่อคุณเลือกกรอบการทดสอบที่จะใช้และกดปุ่มแก้ไขเป็นครั้งแรกเพื่อเพิ่มไลบรารีขวดที่ต้องการในการพึ่งพาโมดูล นอกจากนี้คุณยังสามารถเลือกวิธีการสร้างสตับทดสอบได้

สร้างความตั้งใจในการทดสอบ

สร้างกล่องโต้ตอบทดสอบ

คุณสามารถดูรายละเอียดเพิ่มเติมได้ในส่วนช่วยเหลือการทดสอบของเอกสารออนไลน์


อ่าขอบคุณ ลิงก์ไปยัง "ส่วนช่วยเหลือการทดสอบ" ทำให้ฉันวางเคอร์เซอร์บน @Test ที่ไม่ได้รับการแก้ไขในไฟล์ทดสอบของฉันและตอนนี้ชีวิตของฉันก็เสร็จสมบูรณ์แล้ว!
Bob

2
cmd-shift-T ไม่ได้หมายความว่าฉันจะต้องเริ่มต้นด้วยชั้นเรียนภายใต้การทดสอบแทนการทดสอบตัวเอง?
Bob

ลิงค์แรกไม่ทำงาน นี่คือสิ่งที่ถูกต้อง: site2.jetbrains.com/idea/webhelp/ …
dzieciou

ฉันได้อัปเดตลิงค์แล้วตอนนี้jetbrains.com/idea/webhelp/configuring-testing-l ไลบรารี . html
CrazyCoder

@Bob +1 สำหรับชี้ไปที่ช่องโหว่ แต่ทำให้ MyClass เป็นอันดับแรกจากนั้นสร้าง MyClassTest ที่เกี่ยวข้องทันทีด้วย Ctrl + Shift + T; นั่นเป็นสิ่งที่ไม่ดีหรือไม่? การทำให้ MyClassTest บอกเป็นนัยว่าจะมีคลาส MyClass หนึ่งการทดสอบในภายหลังใช่ไหม
andersoyvind

25

วิธีหนึ่งในการทำเช่นนี้คือเพิ่ม junit.jar ให้กับคุณ$CLASSPATHเป็นการพึ่งพาภายนอก

เพิ่ม junit intellij

ในการทำเช่นนั้นให้ไปที่โครงสร้างโครงการแล้วเพิ่ม JUnit เป็นหนึ่งในไลบรารีดังที่แสดงใน gif

ในการแจ้งเตือน 'เลือกโมดูล' เลือกเฉพาะโมดูลที่คุณต้องการ JUnit


2
คุณเป็นร็อคสตาร์ขอบคุณสำหรับ gif ที่แสดงว่าต้องทำอะไร!
พยาน

ชอบคำตอบนี้มาก
nocarrier

8

หากคุณมีคลาสทดสอบแล้วคุณสามารถ:

1) วางเคอร์เซอร์บนประกาศคลาสและกด+Alt Enterในบทสนทนาเลือก JUnit Fixและกด นี่เป็นวิธีมาตรฐานในการสร้างคลาสการทดสอบใน IntelliJ

2) อีกทางหนึ่งคุณสามารถเพิ่ม JUnit jars ด้วยตนเอง (ดาวน์โหลดจากเว็บไซต์หรือใช้จากไฟล์ IntelliJ)


เมื่อฉันทำสิ่งนี้มันทำให้ฉันมีข้อผิดพลาด: การซิงค์ Gradle ล้มเหลว: กระบวนการ daemon ที่สร้างขึ้นใหม่มีบริบทที่แตกต่างกว่าที่คาดไว้ มีคำแนะนำใด ๆ สำหรับฉันที่จะแก้ไขได้อย่างไร
Arctic Tern

1
คำถามคือ: คุณจะเพิ่ม JUnit jars ด้วยตนเองได้อย่างไร?
incises

ฉันคิดว่าหลังจากทั้งหมดนี้เรายังไม่มีความคิดในการเพิ่ม junit ด้วยตนเอง
เกร็กเค.

ซ้ำคำตอบก่อนหน้านี้ก่อนหน้านี้
cellepo
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.