@@ -33,16 +33,12 @@ def test_anything(self):
33
33
import unittest
34
34
import uuid
35
35
from bs4 import BeautifulSoup
36
- from pyvirtualdisplay import Display
37
36
from seleniumbase .common import decorators
38
- from seleniumbase .config import ad_block_list
39
37
from seleniumbase .config import settings
40
38
from seleniumbase .core .application_manager import ApplicationManager
41
- from seleniumbase .core .s3_manager import S3LoggingBucket
42
39
from seleniumbase .core .testcase_manager import ExecutionQueryPayload
43
40
from seleniumbase .core .testcase_manager import TestcaseDataPayload
44
41
from seleniumbase .core .testcase_manager import TestcaseManager
45
- from seleniumbase .core import browser_launcher
46
42
from seleniumbase .core import download_helper
47
43
from seleniumbase .core import log_helper
48
44
from seleniumbase .fixtures import constants
@@ -1608,6 +1604,7 @@ def remove_elements(self, selector, by=By.CSS_SELECTOR):
1608
1604
self .safe_execute_script (remove_script )
1609
1605
1610
1606
def ad_block (self ):
1607
+ from seleniumbase .config import ad_block_list
1611
1608
for css_selector in ad_block_list .AD_BLOCK_LIST :
1612
1609
css_selector = re .escape (css_selector )
1613
1610
script = ("""var $elements = document.querySelectorAll('%s');
@@ -2251,6 +2248,8 @@ def get_new_driver(self, browser=None, headless=None,
2251
2248
if browser_name not in valid_browsers :
2252
2249
raise Exception ("Browser: {%s} is not a valid browser option. "
2253
2250
"Valid options = {%s}" % (browser , valid_browsers ))
2251
+ # Launch a web browser
2252
+ from seleniumbase .core import browser_launcher
2254
2253
new_driver = browser_launcher .get_driver (browser_name = browser_name ,
2255
2254
headless = headless ,
2256
2255
use_grid = use_grid ,
@@ -2792,6 +2791,7 @@ def setUp(self):
2792
2791
self .testcase_manager .insert_testcase_data (data_payload )
2793
2792
self .case_start_time = int (time .time () * 1000 )
2794
2793
if self .headless :
2794
+ from pyvirtualdisplay import Display
2795
2795
self .display = Display (visible = 0 , size = (1920 , 1200 ))
2796
2796
self .display .start ()
2797
2797
self .headless_active = True
@@ -2965,7 +2965,8 @@ def tearDown(self):
2965
2965
self .testcase_manager .update_execution_data (
2966
2966
self .execution_guid , runtime )
2967
2967
if self .with_s3_logging and has_exception :
2968
- """ After each testcase, upload logs to the S3 bucket. """
2968
+ """ If enabled, upload logs to S3 during test exceptions. """
2969
+ from seleniumbase .core .s3_manager import S3LoggingBucket
2969
2970
s3_bucket = S3LoggingBucket ()
2970
2971
guid = str (uuid .uuid4 ().hex )
2971
2972
path = "%s/%s" % (self .log_path , test_id )
0 commit comments