|
11 | 11 | Options: |
12 | 12 | -b / --basic (Basic boilerplate / single-line test) |
13 | 13 | -r / --rec (adds Pdb+ breakpoint for Recorder Mode) |
| 14 | + --url=URL (makes the test start on a specific page) |
14 | 15 |
|
15 | 16 | Language Options: |
16 | 17 | --en / --English | --zh / --Chinese |
|
20 | 21 | --ru / --Russian | --es / --Spanish |
21 | 22 |
|
22 | 23 | Syntax Formats: |
23 | | - --bc / --basecase (BaseCase class inheritance) |
24 | | - --pf / --pytest-fixture (sb pytest fixture) |
25 | | - --cf / --class-fixture (class + sb pytest fixture) |
26 | | - --cm / --context-manager (SB context manager) |
27 | | - --dc / --driver-context (DriverContext manager) |
28 | | - --dm / --driver-manager (Driver manager) |
| 24 | + --bc / --basecase (BaseCase class inheritance) |
| 25 | + --pf / --pytest-fixture (sb pytest fixture) |
| 26 | + --cf / --class-fixture (class + sb pytest fixture) |
| 27 | + --cm / --context-manager (SB context manager) |
| 28 | + --dc / --driver-context (DriverContext manager) |
| 29 | + --dm / --driver-manager (Driver manager) |
29 | 30 |
|
30 | 31 | Output: |
31 | 32 | Creates a new SBase test file with boilerplate code. |
@@ -53,19 +54,20 @@ def invalid_run_command(msg=None): |
53 | 54 | exp += " Options:\n" |
54 | 55 | exp += " -b / --basic (Basic boilerplate / single-line test)\n" |
55 | 56 | exp += " -r / --rec (adds Pdb+ breakpoint for Recorder Mode)\n" |
| 57 | + exp += " --url=URL (makes the test start on a specific page)\n" |
56 | 58 | exp += " Language Options:\n" |
57 | 59 | exp += " --en / --English | --zh / --Chinese\n" |
58 | 60 | exp += " --nl / --Dutch | --fr / --French\n" |
59 | 61 | exp += " --it / --Italian | --ja / --Japanese\n" |
60 | 62 | exp += " --ko / --Korean | --pt / --Portuguese\n" |
61 | 63 | exp += " --ru / --Russian | --es / --Spanish\n" |
62 | 64 | exp += " Syntax Formats:\n" |
63 | | - exp += " --bc / --basecase (BaseCase class inheritance)\n" |
64 | | - exp += " --pf / --pytest-fixture (sb pytest fixture)\n" |
65 | | - exp += " --cf / --class-fixture (class + sb pytest fixture)\n" |
66 | | - exp += " --cm / --context-manager (SB context manager)\n" |
67 | | - exp += " --dc / --driver-context (DriverContext manager)\n" |
68 | | - exp += " --dm / --driver-manager (Driver manager)\n" |
| 65 | + exp += " --bc / --basecase (BaseCase class inheritance)\n" |
| 66 | + exp += " --pf / --pytest-fixture (sb pytest fixture)\n" |
| 67 | + exp += " --cf / --class-fixture (class + sb pytest fixture)\n" |
| 68 | + exp += " --cm / --context-manager (SB context manager)\n" |
| 69 | + exp += " --dc / --driver-context (DriverContext manager)\n" |
| 70 | + exp += " --dm / --driver-manager (Driver manager)\n" |
69 | 71 | exp += " Output:\n" |
70 | 72 | exp += " Creates a new SBase test file with boilerplate code.\n" |
71 | 73 | exp += " If the file already exists, an error is raised.\n" |
@@ -100,6 +102,7 @@ def main(): |
100 | 102 | help_me = False |
101 | 103 | recorder = False |
102 | 104 | error_msg = None |
| 105 | + start_page = None |
103 | 106 | invalid_cmd = None |
104 | 107 | syntax = "BaseCase" |
105 | 108 | language = "English" |
@@ -128,6 +131,15 @@ def main(): |
128 | 131 | option = option.lower() |
129 | 132 | if option == "-h" or option == "--help": |
130 | 133 | help_me = True |
| 134 | + elif option.startswith("--url=") and len(option) > 6: |
| 135 | + from seleniumbase.fixtures import page_utils |
| 136 | + start_page = option.split("--url=")[1] |
| 137 | + if not page_utils.is_valid_url(start_page): |
| 138 | + if page_utils.is_valid_url("https://" + start_page): |
| 139 | + start_page = "https://" + start_page |
| 140 | + else: |
| 141 | + raise Exception("Invalid URL: %s" % start_page) |
| 142 | + basic = True |
131 | 143 | elif option == "-b" or option == "--basic": |
132 | 144 | basic = True |
133 | 145 | elif option == "-r" or option == "--rec": |
@@ -223,7 +235,9 @@ def main(): |
223 | 235 | goodbye = "Adiós" |
224 | 236 | class_name = "MiClaseDePrueba" |
225 | 237 | url = "" |
226 | | - if basic: |
| 238 | + if start_page: |
| 239 | + url = start_page |
| 240 | + elif basic: |
227 | 241 | url = "about:blank" |
228 | 242 | elif language not in ["English", "Dutch", "French", "Italian"]: |
229 | 243 | url = "data:text/html,<meta charset='utf-8'><p>%s<br><input>" % hello |
|
0 commit comments