ตามจากคำตอบของ Benjamin Muschko (19 มีนาคม 2554) คุณสามารถใช้-i
ธงพร้อมกับgrepเพื่อกรองบรรทัดที่ไม่ต้องการจำนวน 1,000 บรรทัด ตัวอย่าง:
Strong filter - แสดงเฉพาะชื่อและผลการทดสอบแต่ละหน่วยและสถานะการสร้างโดยรวม ข้อผิดพลาดในการตั้งค่าหรือข้อยกเว้นจะไม่ปรากฏขึ้น
./gradlew test -i | grep -E " > |BUILD"
Soft filter - แสดงชื่อและผลการทดสอบแต่ละหน่วยรวมถึงข้อผิดพลาดในการตั้งค่า / ข้อยกเว้น แต่มันจะรวมถึงข้อมูลที่ไม่เกี่ยวข้อง:
./gradlew test -i | grep -E -v "^Executing |^Creating |^Parsing |^Using |^Merging |^Download |^title=Compiling|^AAPT|^future=|^task=|:app:|V/InstrumentationResultParser:"
ซอฟต์ฟิลเตอร์, ไวยากรณ์ทางเลือก: (โทเค็นการค้นหาจะแบ่งออกเป็นแต่ละสตริง)
./gradlew test -i | grep -v -e "^Executing " -e "^Creating " -e "^Parsing " -e "^Using " -e "^Merging " -e "^Download " -e "^title=Compiling" -e "^AAPT" -e "^future=" -e "^task=" -e ":app:" -e "V/InstrumentationResultParser:"
คำอธิบายวิธีการทำงาน:เอาต์พุตของคำสั่งแรก./gradlew test -i
ถูกไพพ์ไปยังคำสั่งที่สองgrep
ซึ่งจะกรองบรรทัดที่ไม่ต้องการจำนวนมากออกตามนิพจน์ทั่วไป "-E"
เปิดใช้งานโหมดการแสดงออกปกติและ"|"
หมายถึง "หรือ" ชื่อหน่วยทดสอบและผลที่ได้รับอนุญาตให้แสดงการใช้และสถานะโดยรวมที่ได้รับอนุญาตด้วย" > "
"BUILD"
ในตัวกรองแบบอ่อน"-v"
ค่าสถานะหมายถึง"ไม่ได้มี"และ"^"
หมายถึง "จุดเริ่มต้นของบรรทัด" ดังนั้นจะตัดออกทุกบรรทัดที่ขึ้นต้นด้วย "Executing" หรือเริ่มด้วย "Creating" ฯลฯ
ตัวอย่างสำหรับการทดสอบหน่วยอุปกรณ์ Android, กับ gradle 5.1:
./gradlew connectedDebugAndroidTest --continue -i | grep -v -e \
"^Transforming " -e "^Skipping " -e "^Cache " -e "^Performance " -e "^Creating " -e \
"^Parsing " -e "^file " -e "ddms: " -e ":app:" -e "V/InstrumentationResultParser:"
ตัวอย่างสำหรับการทดสอบครอบคลุมหน่วย Jacoco ที่มี gradle 4.10:
./gradlew createDebugCoverageReport --continue -i | grep -E -v "^Executing |^Creating |^Parsing |^Using |^Merging |^Download |^title=Compiling|^AAPT|^future=|^task=|:app:|V/InstrumentationResultParser:"
test
ปิด