TLS, mTLS, SSL, and HTTPS Support in Testfully
Out of the box, Testfully supports sending requests to servers that use Transport Layer Security (TLS) and Secure Sockets Layer (SSL) protocols. This means you can send requests to servers that use HTTPS, the secure version of HTTP. This document explains how Testfully can be customized to work with servers that use self-signed certificates, invalid certificates, or custom certificates.
Pick the right agent!
Testfully Desktop Agent (Next Gen) is required to use TLS, mTLS, SSL, and HTTPS features. If you are using Testfully Desktop Agent (1.0.0), please switch to the Next Gen by selecting it from the bottom-right corner of the app.
Working with Self-Signed Certificates
When you send a request to a server that uses a self-signed certificate or a certificate that is not trusted by your operating system, Testfully will display an error message. You can choose to bypass the error by disabling the SSL verification in the request settings or by adding the server's certificate to the list of trusted certificates in Testfully. This section explains both approaches.
Adding a Certificate to the Trusted List
The best way to work with self-signed certificates is to add the server's certificate to the list of trusted certificates in Testfully. This way, you can continue to use SSL verification and ensure that your requests are secure. Here's how you can add a certificate to the trusted list:
- Open the Certificates App by clicking on the
Certificates
button in the sidebar. - Click on the
Add Certificate
Button to open the certificate dialog. - Select the CA from the Certificate Type dropdown.
- Click on the Select file button to select a
.pem
or.crt
file. - Click on the Save button to add the certificate to the trusted list.
Upon adding the certificate to the trusted list, Testfully will use it to verify the server's certificate when sending requests.
Uploading multiple certificates
Testfully allows you to add multiple certificates to the trusted list of certificates. This is useful when you need to work with multiple servers that use self-signed certificates. You can add as many certificates as you need by following the steps above.
.crt
and .pem
files
You can upload certificates in .crt
or .pem
format. These are the most common formats for certificates. If you have a certificate in a different format, you can convert it to .crt
or .pem
using a tool like openssl
.
.pem
files with multiple certificates
If you have a .pem
file that contains multiple certificates, you can upload it to Testfully. Testfully will extract all certificates from the file and add them to the trusted list.
Disabling a Certificate
Disabling a certificate will prevent Testfully from using it to verify the server's certificate. To disable a certificate, click on the Active
switch of the certificate.
Disabling SSL Verification
If you prefer to disable SSL verification for a request, you can do so by disabling this option in the request settings. Disabling SSL verification will allow you to send requests to servers that use self-signed certificates or invalid certificates.
Disabling SSL Verification in Request Settings
To disable SSL verification for a request, follow these steps:
- Open the Request Settings by clicking on the
Settings
button in the request editor. - Select Do not verify certificate option from the Certificate Verification dropdown.
- Click on the Save button to save the settings.
Disabling SSL Verification for all requests within a folder
You can disable SSL verification for all requests within a folder by setting the folder's certificate verification option to Do not verify certificate
. This will apply the setting to all requests within the folder. To do this, follow these steps:
- Hover over the folder in the sidebar and click on the
...
button. - Click on the Settings button to open the folder settings.
- Select Do not verify certificate option from the Certificate Verification dropdown.
- Click on the Save button to save the settings.
Disabling SSL Verification for an environment
It's also possible to disable SSL verification for requests that are sent using a specific environment. To do this, follow these steps:
- Open the environment settings by clicking on the
Environments
button in the sidebar. - Click on the environment that you want to edit.
- Click on the Settings button to open the environment settings.
- Select Do not verify certificate option from the Certificate Verification dropdown.
- Click on the Save button to save the settings.
Mutual TLS (mTLS) Support
Testfully supports Mutual TLS (mTLS) authentication, which allows you to send requests to servers that require client certificates.
Uploading a Client Certificate
To send requests to servers that require client certificates, you need to upload the client certificate to Testfully. Here's how you can upload a client certificate:
- Open the Certificates App by clicking on the
Certificates
button in the sidebar. - Click on the
Add Certificate
Button to open the certificate dialog. - Select the Client Certificate (mTLS) from the Certificate Type dropdown.
- Enter a list of hosts that require the client certificate in the Hosts field. You can add multiple hosts by separating them with commas. For example,
example.com,test.example.com
. - If you have a certificate and a private key in separate files, you can upload them by clicking on the Select file button for each file. If you have combined the certificate and the private key into a single file, you can upload a
.p12
or.pfx
file. - For
.p12
or.pfx
files, you need to enter the password in the Password field. - Click on the Save button to add the client certificate to Testfully.
Disabling a Client Certificate
Disabling a client certificate will prevent Testfully from using it when sending requests to servers that require client certificates. To disable a client certificate, click on the Active
switch of the certificate.
Supported Platforms
Platform | Supported |
---|---|
Testfully Desktop for Windows | ✅ |
Testfully Desktop for macOS | ✅ |
Testfully Desktop for Windows | ✅ |
Testfully CLI | Coming Soon |
Testfully for Web | Limited Support |
Testfully for Web Limitations
Testfully for Web (available via the browser) relies on Testfully Cloud Agent to send requests that require customising TLS. The Cloud Agent cannot reach servers that are not publicly accessible, require a VPN connection, are behind a firewall, or are dev servers running on localhost. If you need to send requests to such servers, you should use Testfully Desktop.
Support and Feedback
If you have any questions or need help with configuring TLS, mTLS, SSL, or HTTPS in Testfully, please don't hesitate to reach out to us via support@testfully.io
or the in-app chat. We're here to help you!