Footprints Load Testing Application

Author: Sophie Renshaw

The footprints load testing tool was developed as a mean of load testing the Errigal Footprints component.

Getting Started

The footprints load testing tool is stored in bitbucket: https://bitbucket.org/errigal/footprints-load-testing/src/master/

Clone the repo and open locally using IDEA.

All settings for the tool are stored in the TestingConfig.groovy file. Any changes that need to be made can be made in here, i.e database connections, ticket query, email configurations etc:

class TestingConfig {

    //Number of emails to send
    static int emailCount = 100
    static boolean correctEmailFormat = true

    //Database Connection
    static String hostIp = "nvqadb2.ckpotpvjjxpn.us-east-1.rds.amazonaws.com"
    static String databaseName = "ticketer"
    static String dbUsername = "<USERNAME"
    static String dbPassword = "<PASSWORD>"

    //Ticket Query
    static String query = "SELECT id FROM ticket WHERE current_status_id IN (select id from ticket_status where status in ('FOT Dispatched','FOT Dispatched - Pending Parts')) ORDER BY RAND() LIMIT 1;"

    //Email Config
    static String name = "Footprints Active Configuration"
    static String username = "testing"
    static String password = "#Test321!#"
    static String emailTo = "atc_das_noc@errigal.com"
    static String emailFrom = "testing@nvqa.awsapps.com"
    static boolean activeSMTPConfig = true
    static boolean activeIMAPConfig = false
    static String emailSubject = "Load Testing"

    //AmazonSES
    static String host = "email-smtp.us-east-1.amazonaws.com"
    static String sesUsername = "AKIAJ56FQRUVGHS7GRCA"
    static String sesPassword = "AvCninHhKoQcTIBkQ0KkSfkRVdhA7Rco16QLZOleXrt/"

    //Session Properties
    static String transportProtocol = "smtp"
    static int port = 587
    static boolean starttls = true
    static boolean authentication = true

}

To run the load testing tool, run the Main.groovy class.

The load testing tool logs, footprints logs, ticketer logs, emails and individual tickets should be checked to verify that all functionality is working as intended.