Ubuntu Online, Fedora Online, Windows online emulator അല്ലെങ്കിൽ MAC OS ഓൺലൈൻ എമുലേറ്റർ എന്നിങ്ങനെയുള്ള ഞങ്ങളുടെ ഒന്നിലധികം സൗജന്യ ഓൺലൈൻ വർക്ക്സ്റ്റേഷനുകളിലൊന്ന് ഉപയോഗിച്ച് OnWorks സൗജന്യ ഹോസ്റ്റിംഗ് ദാതാവിൽ പ്രവർത്തിപ്പിക്കാൻ കഴിയുന്ന py.test-2.7 കമാൻഡ് ഇതാണ്.
പട്ടിക:
NAME
pytest - pytest ഉപയോഗം
വിളിക്കുന്നു PY.TEST വഴി പൈത്തൺ -M PY.TEST
2.0 പതിപ്പിൽ പുതിയത്.
നിങ്ങൾ പൈത്തൺ-2.5 അല്ലെങ്കിൽ അതിനുശേഷമുള്ളത് ഉപയോഗിക്കുകയാണെങ്കിൽ, പൈത്തൺ ഇന്റർപ്രെറ്റർ വഴി നിങ്ങൾക്ക് പരിശോധന അഭ്യർത്ഥിക്കാം
കമാൻഡ് ലൈൻ:
പൈത്തൺ -എം പൈറ്റെസ്റ്റ് [...]
ഇത് കമാൻഡ് ലൈൻ സ്ക്രിപ്റ്റ് അഭ്യർത്ഥിക്കുന്നതിന് തുല്യമാണ് py.test [...] നേരിട്ട്.
നേടുന്നു സഹായിക്കൂ ON പതിപ്പ്, ഓപ്ഷൻ പേരുകൾ, ENVIRONMENT വ്യത്യാസങ്ങൾ
py.test --version # pytest എവിടെ നിന്നാണ് ഇറക്കുമതി ചെയ്തതെന്ന് കാണിക്കുന്നു
py.test --fixtures # ലഭ്യമായ ബിൽറ്റ്ഇൻ ഫംഗ്ഷൻ ആർഗ്യുമെന്റുകൾ കാണിക്കുന്നു
py.test -h | --help # കമാൻഡ് ലൈനിലും കോൺഫിഗർ ഫയൽ ഓപ്ഷനുകളിലും സഹായം കാണിക്കുക
നിർത്തുന്നു ശേഷം ദി FIRST (അഥവാ N) പരാജയങ്ങൾ
ആദ്യ (N) പരാജയങ്ങൾക്ക് ശേഷം ടെസ്റ്റിംഗ് പ്രക്രിയ നിർത്താൻ:
ആദ്യ പരാജയത്തിന് ശേഷം py.test -x # നിർത്തുക
py.test --maxfail=2 # രണ്ട് പരാജയങ്ങൾക്ക് ശേഷം നിർത്തുക
വ്യക്തമാക്കുന്നത് ടെസ്റ്റുകൾ / തിരഞ്ഞെടുക്കുന്നു ടെസ്റ്റുകൾ
നിരവധി ടെസ്റ്റ് റൺ ഓപ്ഷനുകൾ:
py.test test_mod.py # മൊഡ്യൂളിൽ ടെസ്റ്റുകൾ പ്രവർത്തിപ്പിക്കുക
py.test somepath # ഏതെങ്കിലും പാതയ്ക്ക് താഴെയുള്ള എല്ലാ ടെസ്റ്റുകളും പ്രവർത്തിപ്പിക്കുക
py.test -k stringexpr # എന്നതുമായി പൊരുത്തപ്പെടുന്ന പേരുകളുള്ള ടെസ്റ്റുകൾ മാത്രം പ്രവർത്തിപ്പിക്കുക
# "സ്ട്രിംഗ് എക്സ്പ്രഷൻ", ഉദാ "MyClass and not method"
# TestMyClass.test_something തിരഞ്ഞെടുക്കും
# എന്നാൽ TestMyClass.test_method_simple അല്ല
py.test test_mod.py::test_func # "നോഡ് ഐഡി"യുമായി പൊരുത്തപ്പെടുന്ന ടെസ്റ്റുകൾ മാത്രം പ്രവർത്തിപ്പിക്കുക,
# ഉദാ: "test_mod.py::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 # പൈത്തൺ സ്റ്റാൻഡേർഡ് ലൈബ്രറി ഫോർമാറ്റിംഗ്
py.test --tb=short # ഒരു ചെറിയ ട്രെയ്സ്ബാക്ക് ഫോർമാറ്റ്
py.test --tb=line # ഒരു പരാജയത്തിന് ഒരു വരി മാത്രം
ഡ്രോപ്പിംഗ് TO പി.ഡി.ബി. (പൈത്തൺ ഡീബഗ്ഗർ) ON പരാജയങ്ങൾ
പൈത്തൺ ഒരു ബിൽട്ടിൻ പൈത്തൺ ഡീബഗ്ഗറുമായി വരുന്നു പി.ഡി.ബി.. പൈറ്റെസ്റ്റ് ഡ്രോപ്പ് ചെയ്യാൻ ഒരാളെ അനുവദിക്കുന്നു
The പി.ഡി.ബി. ഒരു കമാൻഡ് ലൈൻ ഓപ്ഷൻ വഴി ആവശ്യപ്പെടുക:
py.test --pdb
ഇത് ഓരോ പരാജയത്തിലും പൈത്തൺ ഡീബഗ്ഗറിനെ വിളിക്കും. പലപ്പോഴും നിങ്ങൾ ചെയ്യാൻ ആഗ്രഹിച്ചേക്കാം
ഒരു നിശ്ചിത പരാജയ സാഹചര്യം മനസ്സിലാക്കുന്നതിനുള്ള ആദ്യ പരാജയ പരിശോധനയ്ക്കായി ഇത്:
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
അസെർഷൻപിശക്('ശക്തി ഫലം == "ശരി"',)
സജ്ജമാക്കുന്നു A ബ്രേക്ക്പോയിന്റ് / AKA SET_TRACE()
നിങ്ങൾക്ക് ഒരു ബ്രേക്ക്പോയിന്റ് സജ്ജീകരിച്ച് എന്റർ ചെയ്യണമെങ്കിൽ pdb.set_trace() നിങ്ങൾക്ക് ഒരു സഹായിയെ ഉപയോഗിക്കാം:
പൈറ്റെസ്റ്റ് ഇറക്കുമതി ചെയ്യുക
def test_function():
...
pytest.set_trace() # PDB ഡീബഗ്ഗറും ട്രെയ്സിംഗും അഭ്യർത്ഥിക്കുക
പൈറ്റെസ്റ്റ് പതിപ്പ് 2.0.0 ന് മുമ്പ് നിങ്ങൾക്ക് മാത്രമേ പ്രവേശിക്കാൻ കഴിയൂ പി.ഡി.ബി. നിങ്ങൾ ക്യാപ്ചർ ചെയ്യുന്നത് അപ്രാപ്തമാക്കിയെങ്കിൽ കണ്ടെത്തുന്നു
വഴി കമാൻഡ് ലൈനിൽ py.test -s. പിന്നീടുള്ള പതിപ്പുകളിൽ, പൈറ്റെസ്റ്റ് അത് സ്വയമേവ പ്രവർത്തനരഹിതമാക്കുന്നു
നിങ്ങൾ പ്രവേശിക്കുമ്പോൾ ഔട്ട്പുട്ട് ക്യാപ്ചർ പി.ഡി.ബി. കണ്ടെത്തൽ:
· മറ്റ് ടെസ്റ്റുകളിലെ ഔട്ട്പുട്ട് ക്യാപ്ചർ ബാധിക്കില്ല.
· ഇതിനകം ക്യാപ്ചർ ചെയ്തതും അതുപോലെ പ്രോസസ്സ് ചെയ്യുന്നതുമായ ഏതെങ്കിലും മുൻകാല ടെസ്റ്റ് ഔട്ട്പുട്ട്.
· അതേ ടെസ്റ്റിനുള്ളിൽ ഉൽപ്പാദിപ്പിക്കുന്ന ഏതെങ്കിലും പിന്നീടുള്ള ഔട്ട്പുട്ട് ക്യാപ്ചർ ചെയ്യപ്പെടില്ല, പകരം അത് ലഭിക്കും
ലേക്ക് നേരിട്ട് അയച്ചു sys.stdout. ടെസ്റ്റ് ഔട്ട്പുട്ട് സംഭവിക്കുന്നതിന് പോലും ഇത് ശരിയാണെന്ന് ശ്രദ്ധിക്കുക
നിങ്ങൾ ഇന്ററാക്ടീവിൽ നിന്ന് പുറത്തുകടന്ന ശേഷം പി.ഡി.ബി. ട്രെയ്സിംഗ് സെഷൻ, പതിവ് പരിശോധനയിൽ തുടരുക
റൺ.
പൈറ്റെസ്റ്റ് പതിപ്പ് 2.4.0 മുതൽ നിങ്ങൾക്ക് നേറ്റീവ് പൈത്തണും ഉപയോഗിക്കാം ഇറക്കുമതി pdb;pdb.set_trace()
പ്രവേശിക്കാൻ വിളിക്കുക പി.ഡി.ബി. ഉപയോഗിക്കാതെ തന്നെ കണ്ടെത്തുന്നു pytest.set_trace() റാപ്പർ അല്ലെങ്കിൽ
വഴി പൈറ്റെസ്റ്റിന്റെ ഔട്ട്പുട്ട് ക്യാപ്ചറിംഗ് വ്യക്തമായി പ്രവർത്തനരഹിതമാക്കുക py.test -s.
പ്രൊഫൈലിംഗ് ടെസ്റ്റ് നിർവ്വഹണം DURATION
ഏറ്റവും വേഗത കുറഞ്ഞ 10 ടെസ്റ്റ് ദൈർഘ്യങ്ങളുടെ ഒരു ലിസ്റ്റ് ലഭിക്കാൻ:
py.test --durations=10
ഉണ്ടാക്കുന്നു ജൂണിറ്റ്എക്സ്എംഎൽ ഫോർമാറ്റ് ഫയലുകൾ
വായിക്കാൻ കഴിയുന്ന ഫല ഫയലുകൾ സൃഷ്ടിക്കാൻ ഹഡ്സൺ അല്ലെങ്കിൽ മറ്റ് തുടർച്ചയായ സംയോജനം
സെർവറുകൾ, ഈ അഭ്യർത്ഥന ഉപയോഗിക്കുക:
py.test --junitxml=പാത്ത്
ഒരു XML ഫയൽ സൃഷ്ടിക്കാൻ പാത.
റെക്കോർഡ്_xml_property
2.8 പതിപ്പിൽ പുതിയത്.
ഒരു ടെസ്റ്റിനായി നിങ്ങൾക്ക് കൂടുതൽ വിവരങ്ങൾ ലോഗ് ചെയ്യണമെങ്കിൽ, നിങ്ങൾക്ക് ഇത് ഉപയോഗിക്കാം റെക്കോർഡ്_xml_property
മത്സരം:
def test_function(record_xml_property):
record_xml_property("example_key", 1)
0 ഉറപ്പിക്കുക
ഇത് ഒരു അധിക സ്വത്ത് ചേർക്കും example_key="1" സൃഷ്ടിച്ചവയിലേക്ക് ടെസ്റ്റ് കേസ് ടാഗ്:
മുന്നറിയിപ്പ്:
ഇതൊരു പരീക്ഷണാത്മക സവിശേഷതയാണ്, അതിന്റെ ഇന്റർഫേസ് കൂടുതൽ എന്തെങ്കിലും ഉപയോഗിച്ച് മാറ്റിസ്ഥാപിച്ചേക്കാം
ഭാവി പതിപ്പുകളിൽ ശക്തവും പൊതുവായതും. ഓരോന്നിനും പ്രവർത്തനക്ഷമത നിലനിർത്തും,
എന്നിരുന്നാലും.
നിലവിൽ ഇത് ഉപയോഗിക്കുമ്പോൾ പ്രവർത്തിക്കുന്നില്ല pytest-xdist പ്ലഗിൻ.
ഈ ഫീച്ചർ ഉപയോഗിക്കുന്നത് ഏതെങ്കിലും സ്കീമ പരിശോധനയെ തകർക്കുമെന്നതും ദയവായി ശ്രദ്ധിക്കുക. ഈ
ചില CI സെർവറുകളിൽ ഉപയോഗിക്കുമ്പോൾ ഒരു പ്രശ്നമായിരിക്കാം.
ഉണ്ടാക്കുന്നു ഫലലോഗ് ഫോർമാറ്റ് ഫയലുകൾ
പ്ലെയിൻ-ടെക്സ്റ്റ് മെഷീൻ റീഡബിൾ റിസൾട്ട് ഫയലുകൾ സൃഷ്ടിക്കാൻ നിങ്ങൾക്ക് ഇഷ്യൂ ചെയ്യാം:
py.test --resultlog=path
എന്നതിലെ ഉള്ളടക്കം നോക്കുക പാത സ്ഥാനം. അത്തരം ഫയലുകൾ ഉപയോഗിക്കുന്നു ഉദാ PyPy-ടെസ്റ്റ്
നിരവധി പുനരവലോകനങ്ങളിൽ ടെസ്റ്റ് ഫലങ്ങൾ കാണിക്കുന്നതിനുള്ള വെബ് പേജ്.
അയയ്ക്കുന്നു ടെസ്റ്റ് റിപ്പോർട്ട് TO ഓൺലൈനിൽ പാസ്റ്റെബിൻ SERVICE
ഉണ്ടാക്കുന്നു a യുആർഎൽ വേണ്ടി ഓരോന്നും പരിശോധന പരാജയം:
py.test --pastebin=പരാജയപ്പെട്ടു
ഇത് ഒരു റിമോട്ട് പേസ്റ്റ് സേവനത്തിലേക്ക് ടെസ്റ്റ് റൺ വിവരങ്ങൾ സമർപ്പിക്കുകയും ഓരോന്നിനും ഒരു URL നൽകുകയും ചെയ്യും
പരാജയം. നിങ്ങൾക്ക് സാധാരണ പോലെ ടെസ്റ്റുകൾ തിരഞ്ഞെടുക്കാം അല്ലെങ്കിൽ ഉദാഹരണത്തിന് ചേർക്കുക -x നിങ്ങൾക്ക് ഒരെണ്ണം മാത്രം അയയ്ക്കണമെങ്കിൽ
പ്രത്യേക പരാജയം.
ഉണ്ടാക്കുന്നു a യുആർഎൽ വേണ്ടി a മുഴുവൻ പരിശോധന സമ്മേളനം ലോഗ്:
py.test --pastebin=എല്ലാം
നിലവിൽ ഒട്ടിക്കുക മാത്രമാണ് ചെയ്യുന്നത് http://bpaste.net സേവനം നടപ്പിലാക്കുന്നു.
പ്രവർത്തനരഹിതമാക്കുന്നു പ്ലഗ്ഗിനുകൾ
അഭ്യർത്ഥന സമയത്ത് നിർദ്ദിഷ്ട പ്ലഗിനുകൾ ലോഡുചെയ്യുന്നത് പ്രവർത്തനരഹിതമാക്കാൻ, ഉപയോഗിക്കുക -p കൂടെ ഓപ്ഷൻ
പ്രിഫിക്സ് ഇവിടെ:.
ഉദാഹരണം: പ്ലഗിൻ ലോഡ് ചെയ്യുന്നത് പ്രവർത്തനരഹിതമാക്കാൻ ഡോക്ടർ, ഡോക്ടെസ്റ്റ് നടപ്പിലാക്കുന്നതിനുള്ള ഉത്തരവാദിത്തം
ടെക്സ്റ്റ് ഫയലുകളിൽ നിന്നുള്ള പരിശോധനകൾ, ഇതുപോലെയുള്ള py.test ആവശ്യപ്പെടുക:
py.test -p നമ്പർ:ഡോക്ടെസ്റ്റ്
വിളിക്കുന്നു PY.TEST FROM പൈത്തൺ കോഡ്
2.0 പതിപ്പിൽ പുതിയത്.
നിങ്ങൾക്ക് അഭ്യർത്ഥിക്കാം പൈറ്റെസ്റ്റ് പൈത്തൺ കോഡിൽ നിന്ന് നേരിട്ട്:
pytest.main()
കമാൻഡ് ലൈനിൽ നിന്ന് നിങ്ങൾ "py.test" എന്ന് വിളിക്കുന്നതുപോലെ ഇത് പ്രവർത്തിക്കുന്നു. അത് ഉയർത്തില്ല
സിസ്റ്റം എക്സിറ്റ് പകരം എക്സിറ്റ് കോഡ് തിരികെ നൽകുക. നിങ്ങൾക്ക് ഓപ്ഷനുകളും ആർഗ്യുമെന്റുകളും നൽകാം:
pytest.main(['-x', 'mytestdir'])
അല്ലെങ്കിൽ ഒരു സ്ട്രിംഗിൽ കടന്നുപോകുക:
pytest.main("-x mytestdir")
നിങ്ങൾക്ക് അധിക പ്ലഗിനുകൾ വ്യക്തമാക്കാൻ കഴിയും pytest.main:
myinvoke.py-യുടെ # ഉള്ളടക്കം
പൈറ്റെസ്റ്റ് ഇറക്കുമതി ചെയ്യുക
ക്ലാസ് MyPlugin:
def pytest_sessionfinish(self):
പ്രിന്റ് ("*** ടെസ്റ്റ് റൺ റിപ്പോർട്ടിംഗ് ഫിനിഷിംഗ്")
pytest.main("-qq", plugins=[MyPlugin()])
അത് പ്രവർത്തിപ്പിച്ചാൽ അത് കാണിക്കും MyPlugin കൂട്ടിച്ചേർക്കുകയും അതിന്റെ കൊളുത്ത് പ്രയോഗിക്കുകയും ചെയ്തു:
$ പൈത്തൺ myinvoke.py
*** ടെസ്റ്റ് റൺ റിപ്പോർട്ടിംഗ് ഫിനിഷിംഗ്
onworks.net സേവനങ്ങൾ ഉപയോഗിച്ച് py.test-2.7 ഓൺലൈനായി ഉപയോഗിക്കുക