diff --git a/changelog.md b/changelog.md index 0142f27..efe8135 100644 --- a/changelog.md +++ b/changelog.md @@ -1,5 +1,8 @@ # Version log ## 0.0.7dev +### Thu 12 Oct 18:30:11 CEST 2023 +- tests: + - capturing browser console to the report folder *console.log* ### Thu 12 Oct 13:11:11 BST 2023 - issue#62 : delete frames - simple new feature diff --git a/tests/conftest.py b/tests/conftest.py index 1b55947..c3d0e61 100644 --- a/tests/conftest.py +++ b/tests/conftest.py @@ -9,6 +9,7 @@ def pytest_addoption(parser): parser.addoption('--ip' ,action="store" ,default="localhost") parser.addoption('--address' ,action="store" ,default='') parser.addoption('--sleep' ,action="store" ,default=0.3) + parser.addoption('--report' ,action='store' ,default="")#"console.log") parser.addoption('--headless' ,action='store_true',default=False) parser.addoption("--slow", action="store_true", default=False, help="run slow tests") @@ -51,7 +52,7 @@ def pytest_collection_modifyitems(config, items): lvl = int(config.getoption("--lvl")) for item in items: - for i in range(1,3): + for i in range(1,5): if "lvl%d" %i in item.keywords: reason="test level marked as lvl{test_level}>{lvl}".format(test_level=i,lvl=lvl) item.add_marker(pytest.mark.skipif(lvl> "tests/$report_log"; tail -n1 "tests/$report_log" $env_bin/python3 serve.py -p $port &> "tests/$server_log" & @@ -209,6 +211,7 @@ fi if [ $do_report -eq 1 ];then echo "Shutting down server used for pytest" >> $report_log; tail -n1 $report_log kill $server_pid + cat $pytest_log if [ $send_email -eq 1 ];then echo "Sending email to $email_address" >> $report_log; tail -n1 $report_log cmd="$env_bin/python3 email_report.py -f=$report_dir" diff --git a/tests/test_close.py b/tests/test_close.py index 4661eb7..6540e95 100644 --- a/tests/test_close.py +++ b/tests/test_close.py @@ -28,6 +28,16 @@ def test_delete_struct(chrome_driver,sec): sleep(2) @pytest.mark.new -def test_close(chrome_driver): +def test_close(chrome_driver,report): print(colors.green+"\nclosing browser. Good bye"+colors.black) + log_entries = chrome_driver.get_log("performance") + entries = chrome_driver.get_log('browser') + + msg='\n'.join([entry['message'] for entry in entries + if entry['source']=='console-api']) + # print(msg) + if report: + with open(report,'w') as f : + f.write(msg) + chrome_driver.close()