在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
开源软件名称:mozilla/tls-canary开源软件地址:https://github.com/mozilla/tls-canary开源编程语言:Python 81.8%开源软件介绍:TLS CanaryTLS Canary is a TLS/SSL testing framework for the Mozilla Firefox web browser. It is used by developers to run regression and performance tests against a large number of HTTPS-enabled hosts on the Internet. Results of the regression scans are published in HTML format here: This project
IRC channelThe project has a dedicated IRC channel: #tlscanary on irc.mozilla.org. Come talk to us! Requirements
Dependencies for Debian and Ubuntu usersAssuming that you run TLS Canary on a regular graphical desktop machine, these are the packages it requires:
In addition, you'll need to install the Rust Cargo toolchain:
The script linux_bootstrap.sh provides bootstrapping for a headless Ubuntu-based EC2 instance which requires installation of a few standard GUI libraries for running Firefox. The script may or may not work for your other favourite Debian-based distribution. Dependencies for Mac usersAssuming that your're using Homebrew for package management, this should set you up:
The script osx_bootstrap.sh provides bootstrapping for Travis CI's Mac OS X instances using homebrew for package management. It may work for your OS X desktop environment as well. Dependencies for Windows usersWindows support targets PowerShell 5.1 on Windows 10. Windows 7 and 8 are generally able to run TLS Canary, but expect minor unicode encoding issues in terminal logging output. First, install Chocolatey, then run the following command in an admin PowerShell to install the dependencies:
For end usersTLS Canary can be installed as a stable package from PyPI and as experimental package directly from GitHub. The following command will install the latest stable release of TLS Canary to your current Python environment:
Whether or not you require the If you prefer the bleeding-edge developer version with the latest features and added instability, you can run
Once it finishes the
Usage examples# Run a quick regression test against the first 50000 hosts in the default `top` database
tlscanary regression -l 50000
# Compile a fresh 'top 1000' host database called `mini`
tlscanary srcupdate -s mini -l 1000 -x1
# Show a list of available host databases
tlscanary srcupdate -s list
# Use your fresh `mini` database for a quick regession test and see lots of things happening
tlscanary --debug regression -s mini Please refer to the complete argument and mode references below. Run log and reportingTLS Canary collects all run log data in Here are some usage examples how to interact with TLS Canary's run log database: # List all logs in database, including incomplete ones marked with (*)
tlscanary log
# List and then delete incomplete logs
tlscanary log -i incomplete
tlscanary log -i incomplete -a delete # just a dry-run
tlscanary log -i incomplete -a delete --really
# Print complete regression logs as JSON array to terminal
tlscanary log -i regression -e incomplete -a json
# Print JSON report of the last two runs to terminal
tlscanary log -i 2 -a json
# Create an HTML report in /tmp/report for completed regression runs
tlscanary log -i regression -e incomplete -a htmlreport -o /tmp/report Canary run modesRun modes are specified via the mandatory positional
Command line arguments for test runsThe run modes
For developersFor development you will additionally need to install:
git can be installed with your favourite package manager. virtualenv comes with a simple
Developing on Linux or MacThese are the commands that set you up for TLS Canary development work:
The latter command should be used regularly to install new Python dependencies that a TLS Canary update might require. Developing on WindowsDeveloping TLS Canary on Windows is not something we practice regularly. If you encounter quirks along the way, please do not hesitate to open an issue here on GitHub. The following commands, executed in a PowerShell session with user privileges, should set you up for TLS Canary development:
Building and running tls-canary
Running testsThere are two ways to run the test suite:
They are largely equivalent, but the former takes care of missing test dependencies, while running
Installing the pre-commit hook for gitThere's a pre-commit hook for git that you can use for automated PEP 8 violations checking. You can install it by running
in the top-level project directory. By using a symbolic link, you will automatically get updates once the hook in the repo changes. This is highly recommended. You can also copy the script manually, but then you have to take care of updates yourself. |
2023-10-27
2022-08-15
2022-08-17
2022-09-23
2022-08-13
请发表评论