GoGPT Best VPN GoSearch

ไอคอน Fav ของ OnWorks

py.test - ออนไลน์ในคลาวด์

เรียกใช้ py.test ในผู้ให้บริการโฮสต์ฟรีของ OnWorks ผ่าน Ubuntu Online, Fedora Online, โปรแกรมจำลองออนไลน์ของ Windows หรือโปรแกรมจำลองออนไลน์ของ MAC OS

นี่คือคำสั่ง py.test ที่สามารถเรียกใช้ในผู้ให้บริการโฮสต์ฟรีของ OnWorks โดยใช้เวิร์กสเตชันออนไลน์ฟรีของเรา เช่น Ubuntu Online, Fedora Online, โปรแกรมจำลองออนไลน์ของ Windows หรือโปรแกรมจำลองออนไลน์ของ MAC OS

โครงการ:

ชื่อ


pytest - การใช้งาน pytest

โทร PY.TEST ผ่าน ไพทอน -M PY.TEST


ใหม่ในเวอร์ชัน 2.0

หากคุณใช้ Python-2.5 หรือใหม่กว่า คุณสามารถเรียกใช้การทดสอบผ่านตัวแปล Python จาก
บรรทัดคำสั่ง:

หลาม -m pytest [...]

ซึ่งเทียบเท่ากับการเรียกใช้สคริปต์บรรทัดคำสั่ง py.test [ ... ] โดยตรง.

การเดินทาง ช่วยด้วย ON รุ่น ทางเลือกที่ ชื่อ และพวกเรา ตัวแปร


py.test --version # แสดงตำแหน่งที่นำเข้า pytest จาก
py.test --fixtures # แสดงอาร์กิวเมนต์ของฟังก์ชันบิวด์อินที่มีอยู่
py.test -h | --help # แสดงวิธีใช้บนบรรทัดคำสั่งและตัวเลือกไฟล์กำหนดค่า

หยุด หลัง DIE FIRST (หรือ N) ความล้มเหลว


หากต้องการหยุดกระบวนการทดสอบหลังจากเกิดความล้มเหลวครั้งแรก (N) ให้ทำดังนี้

py.test -x # หยุดหลังจากความล้มเหลวครั้งแรก
py.test --maxfail=2 # หยุดหลังจากเกิดความล้มเหลวสองครั้ง

การระบุ ทดสอบ / การเลือก ทดสอบ


ตัวเลือกการทดสอบการทำงานหลายอย่าง:

py.test test_mod.py # เรียกใช้การทดสอบในโมดูล
py.test somepath # เรียกใช้การทดสอบทั้งหมดด้านล่าง somepath
py.test -k stringexpr # เรียกใช้การทดสอบด้วยชื่อที่ตรงกับ .เท่านั้น
# "นิพจน์สตริง" เช่น "MyClass ไม่ใช่เมธอด"
# จะเลือก TestMyClass.test_something
# แต่ไม่ใช่ TestMyClass.test_method_simple
py.test test_mod.py::test_func # เรียกใช้การทดสอบที่ตรงกับ "node ID" เท่านั้น
# เช่น "test_mod.py::test_func" จะเลือก
# เฉพาะ test_func ใน test_mod.py
py.test test_mod.py::TestClass::test_method # เรียกใช้เมธอดเดียวใน
#ชั้นเดียว

นำเข้า 'pkg' และใช้ตำแหน่งระบบไฟล์เพื่อค้นหาและเรียกใช้การทดสอบ:

py.test --pyargs pkg # เรียกใช้การทดสอบทั้งหมดที่อยู่ด้านล่างไดเรกทอรีของ pypkg

กำลังแก้ไข ไพทอน ตรวจสอบย้อนกลับ พิมพ์


ตัวอย่างสำหรับการแก้ไขการพิมพ์แบบย้อนกลับ:

py.test --showlocals # แสดงตัวแปรท้องถิ่นในการติดตาม
py.test -l # แสดงตัวแปรท้องถิ่น (ทางลัด)

py.test --tb=long # การจัดรูปแบบการติดตามข้อมูลเริ่มต้น
py.test --tb=native # การจัดรูปแบบไลบรารีมาตรฐานของ Python
py.test --tb=short # รูปแบบการติดตามที่สั้นกว่า
py.test --tb=line # เพียงหนึ่งบรรทัดต่อความล้มเหลว

ลดต่ำลง TO PDB (ไพทอน ดีบักเกอร์) ON ความล้มเหลว


Python มาพร้อมกับดีบักเกอร์ Python ในตัวที่เรียกว่า PDB. ไพเทสต์ อนุญาตให้หนึ่งหล่นลงใน
PDB พร้อมท์ผ่านตัวเลือกบรรทัดคำสั่ง:

py.test --pdb

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

py.test -x --pdb # ปล่อยไปที่ PDB เมื่อเกิดความล้มเหลวครั้งแรก จากนั้นสิ้นสุดเซสชันการทดสอบ
py.test --pdb --maxfail=3 # วางไปที่ PDB สำหรับความล้มเหลวสามครั้งแรก

โปรดทราบว่าในความล้มเหลวใด ๆ ข้อมูลข้อยกเว้นจะถูกเก็บไว้บน sys.last_value,
sys.last_type และ sys.last_traceback. ในการใช้งานแบบอินเทอร์แอกทีฟ จะทำให้สามารถเข้าไปที่
การดีบักชันสูตรพลิกศพด้วยเครื่องมือแก้ไขข้อบกพร่องใดๆ คุณสามารถเข้าถึงข้อยกเว้นได้ด้วยตนเอง
ข้อมูล เช่น

>>>นำเข้าsys
>>> sys.last_traceback.tb_lineno
42
>>> sys.last_value
AssertionError('ยืนยันผลลัพธ์ == "ตกลง"',)

การตั้งค่า A เบรกพอยต์ / AKA SET_TRACE()


หากคุณต้องการตั้งค่าเบรกพอยต์และป้อน pdb.set_trace() คุณสามารถใช้ตัวช่วย:

นำเข้า pytest
def test_function ():
...
pytest.set_trace () # เรียกใช้ตัวดีบัก PDB และการติดตาม

ก่อนหน้า pytest เวอร์ชัน 2.0.0 คุณสามารถ enter ได้เท่านั้น PDB ติดตามหากคุณปิดใช้งานการจับภาพ
บนบรรทัดคำสั่ง via py.test -s. ในเวอร์ชันที่ใหม่กว่า pytest จะปิดการทำงานโดยอัตโนมัติ
จับภาพเอาต์พุตเมื่อคุณป้อน PDB ติดตาม:

· การจับเอาต์พุตในการทดสอบอื่นจะไม่ได้รับผลกระทบ

· ผลการทดสอบใดๆ ก่อนหน้านี้ที่ถูกจับแล้วและจะถูกประมวลผลในลักษณะดังกล่าว

· ผลลัพธ์ใดๆ ที่เกิดขึ้นภายหลังจากการทดสอบเดียวกันจะไม่ถูกบันทึกและจะได้รับ . แทน
ส่งตรงถึง sys.stdout. โปรดทราบว่าสิ่งนี้ถือเป็นจริงแม้สำหรับผลการทดสอบที่เกิดขึ้น
หลังจากที่คุณออกจากการโต้ตอบ PDB ติดตามเซสชั่นและดำเนินการต่อด้วยการทดสอบปกติ
การทำงาน

ตั้งแต่ pytest เวอร์ชัน 2.4.0 คุณสามารถใช้ Python . ดั้งเดิมได้ นำเข้า pdb;pdb.set_trace()
โทรเข้ามา PDB ติดตามโดยไม่ต้องใช้ pytest.set_trace() กระดาษห่อหรือ
ปิดใช้งานการจับเอาต์พุตของ pytest อย่างชัดเจนผ่าน py.test -s.

โปรไฟล์ ทดสอบ การดำเนินการ DURATION


วิธีรับรายการระยะเวลาการทดสอบ 10 รายการที่ช้าที่สุด:

py.test --ระยะเวลา = 10

การสร้าง JUNITXML FORMAT ไฟล์


เพื่อสร้างไฟล์ผลลัพธ์ที่สามารถอ่านได้โดย ฮัดสัน หรือการบูรณาการอย่างต่อเนื่องอื่นๆ
เซิร์ฟเวอร์ ใช้การเรียกนี้:

py.test --junitxml=เส้นทาง

เพื่อสร้างไฟล์ XML ที่ เส้นทาง.

บันทึก_xml_property
ใหม่ในเวอร์ชัน 2.8

หากคุณต้องการบันทึกข้อมูลเพิ่มเติมสำหรับการทดสอบ คุณสามารถใช้ บันทึก_xml_property
ประจำ:

def test_function (บันทึก xml_property):
record_xml_property("example_key", 1)
ยืนยัน 0

สิ่งนี้จะเพิ่มคุณสมบัติพิเศษ example_key="1" สู่การสร้าง กรณีทดสอบ แท็ก:







คำเตือน:
นี่เป็นคุณลักษณะทดลอง และอินเทอร์เฟซอาจถูกแทนที่ด้วยอย่างอื่น
ทรงพลังและทั่วถึงในเวอร์ชันต่อๆ ไป ฟังก์ชั่นต่อ se จะถูกเก็บไว้
อย่างไรก็ตาม

ปัจจุบันใช้งานไม่ได้เมื่อใช้ร่วมกับ pytest-xdist.pytest-xdist ปลั๊กอิน

นอกจากนี้ โปรดทราบว่าการใช้คุณลักษณะนี้จะทำลายการตรวจสอบสคีมาใดๆ นี้
อาจมีปัญหาเมื่อใช้กับเซิร์ฟเวอร์ CI บางตัว

การสร้าง ผลการค้นหา FORMAT ไฟล์


ในการสร้างไฟล์ผลลัพธ์ที่เครื่องอ่านข้อความธรรมดาได้ คุณสามารถออก:

py.test --resultlog=เส้นทาง

และดูเนื้อหาที่ เส้นทาง ที่ตั้ง. ไฟล์ดังกล่าวถูกใช้โดย the PyPy-ทดสอบ
หน้าเว็บเพื่อแสดงผลการทดสอบในการแก้ไขหลายๆ ครั้ง

การส่ง ทดสอบ รายงาน TO ออนไลน์ พาสต้าบิน บริการ


การสร้าง a URL สำหรับ แต่ละ ทดสอบ ความล้มเหลว:

py.test --pastebin=ล้มเหลว

การดำเนินการนี้จะส่งข้อมูลการทดสอบรันไปยังบริการ Paste ระยะไกลและระบุ URL สำหรับแต่ละ
ความล้มเหลว. คุณสามารถเลือกการทดสอบตามปกติหรือเพิ่มเช่น -x ถ้าคุณต้องการส่งเพียงอันเดียว
ความล้มเหลวโดยเฉพาะ

การสร้าง a URL สำหรับ a ทั้งหมด ทดสอบ เซสชั่น เข้าสู่ระบบ:

py.test --pastebin=ทั้งหมด

กำลังวางเฉพาะใน http://bpaste.net มีการใช้บริการ

ปิดการใช้งาน PLUGINS


หากต้องการปิดใช้งานการโหลดปลั๊กอินเฉพาะในเวลาที่เรียกใช้ ให้ใช้ปุ่ม -p ตัวเลือกร่วมกับ
คำนำหน้า ไม่:.

ตัวอย่าง: เพื่อปิดการใช้งานการโหลดปลั๊กอิน ปริญญาเอกซึ่งมีหน้าที่ดำเนินการ doctest
ทดสอบจากไฟล์ข้อความ เรียกใช้ py.test ดังนี้:

py.test -p ไม่:doctest

โทร PY.TEST จาก ไพทอน รหัส


ใหม่ในเวอร์ชัน 2.0

คุณสามารถเรียกใช้ ไพเทสต์ จากรหัส Python โดยตรง:

pytest.main()

การดำเนินการนี้เหมือนกับว่าคุณจะเรียก "py.test" จากบรรทัดคำสั่ง มันจะไม่ยก
SystemExit แต่ส่งคืนรหัสทางออกแทน คุณสามารถส่งผ่านตัวเลือกและอาร์กิวเมนต์:

pytest.main(['-x', 'mytestdir'])

หรือส่งผ่านสตริง:

pytest.main("-x mytestdir")

คุณสามารถระบุปลั๊กอินเพิ่มเติมเพื่อ pytest.main:

# เนื้อหาของ myinvoke.py
นำเข้า pytest
คลาส MyPlugin:
def pytest_sessionfinish(ตัวเอง):
print("*** ทดสอบการทำงานการรายงานเสร็จสิ้น")

pytest.main("-qq", plugins=[MyPlugin()])

วิ่งก็จะแสดงว่า ปลั๊กอินของฉัน ถูกเพิ่มเข้ามาและขอเกี่ยว:

$ หลาม myinvoke.py
*** ทดสอบการทำงานการรายงานเสร็จสิ้น

ใช้ py.test ออนไลน์โดยใช้บริการ onworks.net


เซิร์ฟเวอร์และเวิร์กสเตชันฟรี

ดาวน์โหลดแอพ Windows & Linux

คำสั่ง Linux

Ad




×
โฆษณา
❤️ช้อป จอง หรือซื้อที่นี่โดยไม่เสียค่าใช้จ่าย ช่วยให้บริการต่างๆ ฟรี