Merge pull request #635 from seleniumbase/update-console-scripts

Update console scripts: "seleniumbase mkdir [DIR]" (and more)
This commit is contained in:
Michael Mintz 2020-07-22 23:01:59 -04:00 committed by GitHub
commit 0df878e6d7
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
18 changed files with 197 additions and 7 deletions

3
.gitignore vendored
View File

@ -38,6 +38,7 @@ pip-log.txt
# Unit test / coverage reports
.coverage
.tox
coverage.xml
nosetests.xml
# py.test
@ -84,7 +85,9 @@ report.html
report.xml
# Allure Reports / Results
allure_report
allure-report
allure_results
allure-results
# Presentations

View File

@ -88,6 +88,8 @@ seleniumbase install chromedriver
seleniumbase install chromedriver latest
```
(See [seleniumbase.io/seleniumbase/console_scripts/ReadMe/](https://seleniumbase.io/seleniumbase/console_scripts/ReadMe/) for more information on SeleniumBase console scripts, such as ``seleniumbase install`` and ``seleniumbase mkdir``.)
<h3><img src="https://seleniumbase.io/img/sb_icon.png" title="SeleniumBase" width="30" /> Run a test on Chrome:</h3>
```bash
@ -429,6 +431,14 @@ nosetests test_suite.py --report
(NOTE: You can add ``--show-report`` to immediately display Nosetest reports after the test suite completes. Only use ``--show-report`` when running tests locally because it pauses the test run.)
<h4><b>Allure Reports:</b></h4>
See: [https://docs.qameta.io/allure/](https://docs.qameta.io/allure/#_pytest)
```bash
pytest test_suite.py --alluredir=allure_results
```
<h3><img src="https://seleniumbase.io/img/sb_icon.png" title="SeleniumBase" width="30" /> Using a Proxy Server:</h3>

View File

@ -10,7 +10,7 @@ ipdb==0.13.3
jedi==0.17.2
idna==2.10
chardet==3.0.4
urllib3==1.25.9
urllib3==1.25.10
requests==2.24.0
selenium==3.141.0
pluggy==0.13.1
@ -43,7 +43,7 @@ coverage==5.2
pyotp==2.3.0
boto==2.49.0
cffi==1.14.0
rich==3.3.2;python_version>="3.6" and python_version<"4.0"
rich==3.4.1;python_version>="3.6" and python_version<"4.0"
flake8==3.7.9;python_version<"3.5"
flake8==3.8.3;python_version>="3.5"
pyflakes==2.1.1;python_version<"3.5"

View File

@ -90,6 +90,19 @@ file name while keeping the original file intact.
Works with Katalon Recorder scripts.
See: http://www.katalon.com/automation-recorder
### print
* Usage:
``sbase print [FILE] [OPTIONS]``
* Options:
``-n`` (Add line Numbers to the rows)
``-w`` (Use word-Wrap for long lines)
* Output:
Prints the code/text of any file
with syntax-highlighting.
### translate
* Usage:
@ -174,6 +187,24 @@ Reverts the changes made by ``seleniumbase objectify ...`` or
seleniumbase Python file. Objects will get replaced by
selectors stored in the "page_objects.py" file.
### encrypt / obfuscate
* Usage:
``sbase encrypt`` OR ``sbase obfuscate``
* Output:
Runs the password encryption/obfuscation tool.
(Where you can enter a password to encrypt/obfuscate.)
### decrypt / unobfuscate
* Usage:
``sbase decrypt`` OR ``sbase unobfuscate``
* Output:
Runs the password decryption/unobfuscation tool.
(Where you can enter an encrypted password to decrypt.)
### download
* Usage:

View File

@ -119,6 +119,104 @@ def main():
file.writelines("\r\n".join(data))
file.close()
data = []
data.append("")
file_path = "%s/%s" % (dir_name, "__init__.py")
file = codecs.open(file_path, "w+", "utf-8")
file.writelines("\r\n".join(data))
file.close()
data = []
data.append("*.py[cod]")
data.append("*.egg")
data.append("*.egg-info")
data.append("dist")
data.append("build")
data.append("ghostdriver.log")
data.append("eggs")
data.append("parts")
data.append("bin")
data.append("var")
data.append("sdist")
data.append("develop-eggs")
data.append(".installed.cfg")
data.append("lib")
data.append("lib64")
data.append("__pycache__")
data.append("env")
data.append("venv")
data.append("sbase")
data.append("sbase*")
data.append("pyvenv.cfg")
data.append(".Python")
data.append("include")
data.append("pip-delete-this-directory.txt")
data.append("pip-selfcheck.json")
data.append("ipython.1.gz")
data.append("nosetests.1")
data.append("pip-log.txt")
data.append(".swp")
data.append(".coverage")
data.append(".tox")
data.append("coverage.xml")
data.append("nosetests.xml")
data.append(".cache/*")
data.append(".pytest_cache/*")
data.append(".pytest_config")
data.append("junit")
data.append("test-results.xml")
data.append(".idea")
data.append(".project")
data.append(".pydevproject")
data.append(".vscode")
data.append("chromedriver")
data.append("geckodriver")
data.append("msedgedriver")
data.append("operadriver")
data.append("MicrosoftWebDriver.exe")
data.append("IEDriverServer.exe")
data.append("chromedriver.exe")
data.append("geckodriver.exe")
data.append("msedgedriver.exe")
data.append("operadriver.exe")
data.append("logs")
data.append("latest_logs")
data.append("log_archives")
data.append("archived_logs")
data.append("geckodriver.log")
data.append("pytestdebug.log")
data.append("latest_report")
data.append("report_archives")
data.append("archived_reports")
data.append("html_report.html")
data.append("report.html")
data.append("report.xml")
data.append("allure_report")
data.append("allure-report")
data.append("allure_results")
data.append("allure-results")
data.append("presentations_saved")
data.append("saved_presentations")
data.append("tours_exported")
data.append("images_exported")
data.append("saved_cookies")
data.append("visual_baseline")
data.append("selenium-server-standalone.jar")
data.append("proxy.zip")
data.append("verbose_hub_server.dat")
data.append("verbose_node_server.dat")
data.append("ip_of_grid_hub.dat")
data.append("downloaded_files")
data.append("archived_files")
data.append("assets")
data.append("temp")
data.append("temp*")
data.append("node_modules")
file_path = "%s/%s" % (dir_name, ".gitignore")
file = codecs.open(file_path, "w+", "utf-8")
file.writelines("\r\n".join(data))
file.close()
data = []
data.append("from seleniumbase import BaseCase")
data.append("")

View File

@ -239,7 +239,7 @@ def pytest_addoption(parser):
Format: A comma-separated string with the 3 values.
Example: "375,734,3"
Default: None. (Will use default values if None)""")
parser.addoption('--extension_zip', '--extension-zip',
parser.addoption('--extension_zip', '--extension-zip', '--crx',
action='store',
dest='extension_zip',
default=None,

View File

@ -144,7 +144,7 @@ class SeleniumBrowser(Plugin):
Example: "375,734,3"
Default: None. (Will use default values if None)""")
parser.add_option(
'--extension_zip', '--extension-zip',
'--extension_zip', '--extension-zip', '--crx',
action='store',
dest='extension_zip',
default=None,

View File

@ -437,6 +437,10 @@ class 硒测试用例(BaseCase): # noqa
# switch_to_alert(timeout=None)
return self.switch_to_alert(*args, **kwargs)
def 拖放(self, *args, **kwargs):
# drag_and_drop(drag_selector, drop_selector)
return self.drag_and_drop(*args, **kwargs)
def 加载HTML文件(self, *args, **kwargs):
# load_html_file(html_file, new_page=True)
return self.load_html_file(*args, **kwargs)

View File

@ -437,6 +437,10 @@ class Testgeval(BaseCase):
# switch_to_alert(timeout=None)
return self.switch_to_alert(*args, **kwargs)
def slepen_en_neerzetten(self, *args, **kwargs):
# drag_and_drop(drag_selector, drop_selector)
return self.drag_and_drop(*args, **kwargs)
def html_bestand_laden(self, *args, **kwargs):
# load_html_file(html_file, new_page=True)
return self.load_html_file(*args, **kwargs)

View File

@ -437,6 +437,10 @@ class CasDeBase(BaseCase):
# switch_to_alert(timeout=None)
return self.switch_to_alert(*args, **kwargs)
def glisser_et_déposer(self, *args, **kwargs):
# drag_and_drop(drag_selector, drop_selector)
return self.drag_and_drop(*args, **kwargs)
def charger_html_fichier(self, *args, **kwargs):
# load_html_file(html_file, new_page=True)
return self.load_html_file(*args, **kwargs)

View File

@ -437,6 +437,10 @@ class CasoDiProva(BaseCase):
# switch_to_alert(timeout=None)
return self.switch_to_alert(*args, **kwargs)
def trascinare_e_rilasciare(self, *args, **kwargs):
# drag_and_drop(drag_selector, drop_selector)
return self.drag_and_drop(*args, **kwargs)
def caricare_html_file(self, *args, **kwargs):
# load_html_file(html_file, new_page=True)
return self.load_html_file(*args, **kwargs)

View File

@ -437,6 +437,10 @@ class セレニウムテストケース(BaseCase): # noqa
# switch_to_alert(timeout=None)
return self.switch_to_alert(*args, **kwargs)
def ドラッグアンドドロップ(self, *args, **kwargs):
# drag_and_drop(drag_selector, drop_selector)
return self.drag_and_drop(*args, **kwargs)
def HTMLファイルを読み込む(self, *args, **kwargs):
# load_html_file(html_file, new_page=True)
return self.load_html_file(*args, **kwargs)

View File

@ -437,6 +437,10 @@ class 셀레늄_테스트_케이스(BaseCase): # noqa
# switch_to_alert(timeout=None)
return self.switch_to_alert(*args, **kwargs)
def 드래그_앤_드롭(self, *args, **kwargs):
# drag_and_drop(drag_selector, drop_selector)
return self.drag_and_drop(*args, **kwargs)
def HTML_파일_로드(self, *args, **kwargs):
# load_html_file(html_file, new_page=True)
return self.load_html_file(*args, **kwargs)

View File

@ -1512,6 +1512,18 @@ class MD:
md["switch_to_alert"][8] = "переключиться_на_оповещение"
md["switch_to_alert"][9] = "cambiar_a_alerta"
md["drag_and_drop"] = ["*"] * num_langs
md["drag_and_drop"][0] = "drag_and_drop"
md["drag_and_drop"][1] = "拖放"
md["drag_and_drop"][2] = "slepen_en_neerzetten"
md["drag_and_drop"][3] = "glisser_et_déposer"
md["drag_and_drop"][4] = "trascinare_e_rilasciare"
md["drag_and_drop"][5] = "ドラッグアンドドロップ"
md["drag_and_drop"][6] = "드래그_앤_드롭"
md["drag_and_drop"][7] = "arrastar_e_soltar"
md["drag_and_drop"][8] = "перетащить_и_падение"
md["drag_and_drop"][9] = "arrastrar_y_soltar"
md["load_html_file"] = ["*"] * num_langs
md["load_html_file"][0] = "load_html_file"
md["load_html_file"][1] = "加载HTML文件"

View File

@ -437,6 +437,10 @@ class CasoDeTeste(BaseCase):
# switch_to_alert(timeout=None)
return self.switch_to_alert(*args, **kwargs)
def arrastar_e_soltar(self, *args, **kwargs):
# drag_and_drop(drag_selector, drop_selector)
return self.drag_and_drop(*args, **kwargs)
def carregar_arquivo_html(self, *args, **kwargs):
# load_html_file(html_file, new_page=True)
return self.load_html_file(*args, **kwargs)

View File

@ -437,6 +437,10 @@ class ТестНаСелен(BaseCase): # noqa
# switch_to_alert(timeout=None)
return self.switch_to_alert(*args, **kwargs)
def перетащить_и_падение(self, *args, **kwargs):
# drag_and_drop(drag_selector, drop_selector)
return self.drag_and_drop(*args, **kwargs)
def загрузить_HTML_файл(self, *args, **kwargs):
# load_html_file(html_file, new_page=True)
return self.load_html_file(*args, **kwargs)

View File

@ -437,6 +437,10 @@ class CasoDePrueba(BaseCase):
# switch_to_alert(timeout=None)
return self.switch_to_alert(*args, **kwargs)
def arrastrar_y_soltar(self, *args, **kwargs):
# drag_and_drop(drag_selector, drop_selector)
return self.drag_and_drop(*args, **kwargs)
def cargar_archivo_html(self, *args, **kwargs):
# load_html_file(html_file, new_page=True)
return self.load_html_file(*args, **kwargs)

View File

@ -54,7 +54,7 @@ if sys.argv[-1] == 'publish':
setup(
name='seleniumbase',
version='1.43.0',
version='1.43.1',
description='Fast, Easy, and Reliable Browser Automation & Testing.',
long_description=long_description,
long_description_content_type='text/markdown',
@ -102,7 +102,7 @@ setup(
'jedi==0.17.2', # The last version for Python 2 and 3.5
'idna==2.10', # Must stay in sync with "requests"
'chardet==3.0.4', # Must stay in sync with "requests"
'urllib3==1.25.9', # Must stay in sync with "requests"
'urllib3==1.25.10', # Must stay in sync with "requests"
'requests==2.24.0',
'selenium==3.141.0',
'pluggy==0.13.1',
@ -135,7 +135,7 @@ setup(
'pyotp==2.3.0',
'boto==2.49.0',
'cffi==1.14.0',
'rich==3.3.2;python_version>="3.6" and python_version<"4.0"',
'rich==3.4.1;python_version>="3.6" and python_version<"4.0"',
'flake8==3.7.9;python_version<"3.5"',
'flake8==3.8.3;python_version>="3.5"',
'pyflakes==2.1.1;python_version<"3.5"',