Real-time collaboration for Jupyter Notebooks, Linux Terminals, LaTeX, VS Code, R IDE, and more,
all in one place.
Real-time collaboration for Jupyter Notebooks, Linux Terminals, LaTeX, VS Code, R IDE, and more,
all in one place.
Path: blob/master/spec/acceptance/README.md
Views: 11766
Acceptance Tests
A slower test suite that ensures high level functionality works as expected, such as verifying msfconsole opens successfully, and can generate Meterpreter payloads, create handlers, etc.
The test suite runs on the current host, so the Meterpreter runtimes should be available. There is no remote host support currently.
Meterpreter
Useful environment variables:
SESSION
- Filter the test suite for specific Meterpreter instances, example:SESSION=meterpreter/java
SESSION_MODULE_TEST
- Filter the post modules to run, example:SESSION_MODULE_TEST=test/meterpreter
SPEC_HELPER_LOAD_METASPLOIT
- Skip RSpec from loading Metasploit framework and requiring a connected msfdb instance, example:SPEC_HELPER_LOAD_METASPLOIT=false
Running Meterpreter test suite:
Skip loading of Rails/Metasploit with:
Run a specific Meterpreter/module test Unix / Windows:
Bash command:
Powershell command:
Session types can be specified via the SESSION
argument. Meterpreter and command shell are support and use the following notation:
SESSION=meterpreter/php
SESSION=command_shell/php
Postgres
Run a target:
Run the test suite:
MySQL
Run a target:
Run the test suite:
MSSQL
Run a target:
Run the test suite:
SMB
Build the Docker image:
Run a target:
Run the test suite:
Shut down the container:
Allure reports
Generate allure reports locally:
Support Matrix generation
You can download the data from an existing Github job run:
Then generate the report using the allure data:
Debugging
If a test has failed you can enter into an interactive breakpoint with:
To interact with a console instance, forwarding the current stdin to the console's stdin, and writing the console's output to stdout:
Once inside the console, the following 'commands' can be used within the context of the interactive msfconsole:
!continue
- Continue, similar to Pry's continue functionality!exit
- Exit the Ruby process entirely, similar to Pry's exit functionality!pry
- Enter into a pry session within the calling Ruby process