mirror of
https://github.com/httprunner/httprunner.git
synced 2026-05-07 04:42:42 +08:00
53 lines
1.3 KiB
Python
53 lines
1.3 KiB
Python
import io
|
|
import os
|
|
import sys
|
|
import unittest
|
|
|
|
import pytest
|
|
|
|
from httprunner.cli import main
|
|
|
|
|
|
class TestCli(unittest.TestCase):
|
|
def setUp(self):
|
|
self.captured_output = io.StringIO()
|
|
sys.stdout = self.captured_output
|
|
|
|
def tearDown(self):
|
|
sys.stdout = sys.__stdout__ # Reset redirect.
|
|
|
|
def test_show_version(self):
|
|
sys.argv = ["hrun", "-V"]
|
|
|
|
with self.assertRaises(SystemExit) as cm:
|
|
main()
|
|
|
|
self.assertEqual(cm.exception.code, 0)
|
|
|
|
from httprunner import __version__
|
|
|
|
self.assertIn(__version__, self.captured_output.getvalue().strip())
|
|
|
|
def test_show_help(self):
|
|
sys.argv = ["hrun", "-h"]
|
|
|
|
with self.assertRaises(SystemExit) as cm:
|
|
main()
|
|
|
|
self.assertEqual(cm.exception.code, 0)
|
|
|
|
from httprunner import __description__
|
|
|
|
self.assertIn(__description__, self.captured_output.getvalue().strip())
|
|
|
|
def test_debug_pytest(self):
|
|
cwd = os.getcwd()
|
|
try:
|
|
os.chdir(os.path.join(cwd, "examples", "postman_echo"))
|
|
exit_code = pytest.main(
|
|
["-s", "request_methods/request_with_testcase_reference_test.py",]
|
|
)
|
|
self.assertEqual(exit_code, 0)
|
|
finally:
|
|
os.chdir(cwd)
|