e2e ftw!
This commit is contained in:
@@ -1 +1,10 @@
|
||||
{}
|
||||
{
|
||||
"integrationFolder": "tests",
|
||||
"xbaseUrl": "http://localhost:7575",
|
||||
"baseUrl":"http://localhost:8080",
|
||||
"defaultCommandTimeout": 10000,
|
||||
"env": {
|
||||
"adminusername": "superuser",
|
||||
"adminpassword": "l3tm3in"
|
||||
}
|
||||
}
|
||||
445
e2e/tests/smoke.js
Normal file
445
e2e/tests/smoke.js
Normal file
@@ -0,0 +1,445 @@
|
||||
// Basic smoke test, visit every form to ensure they load
|
||||
|
||||
describe("SMOKE", () => {
|
||||
it("Every form opens without error", () => {
|
||||
cy.visit("/login");
|
||||
|
||||
cy.get("input[name=username]").clear().type(Cypress.env("adminusername"));
|
||||
|
||||
// {enter} causes the form to submit
|
||||
cy.get("input[name=password]")
|
||||
.clear()
|
||||
.type(`${Cypress.env("adminpassword")}{enter}`);
|
||||
|
||||
//################# HOME
|
||||
cy.visit("/home-dashboard");
|
||||
cy.url({ timeout: 10000 }).should("include", "/home-dashboard");
|
||||
|
||||
cy.visit("/home-search");
|
||||
cy.url({ timeout: 10000 }).should("include", "/home-search");
|
||||
cy.get("[data-cy=phrase]");
|
||||
|
||||
cy.visit("/home-schedule");
|
||||
cy.url({ timeout: 10000 }).should("include", "/home-schedule");
|
||||
cy.get("[data-cy=btnTodayHomeSchedule]");
|
||||
|
||||
cy.visit("/home-memos");
|
||||
cy.url({ timeout: 10000 }).should("include", "/home-memos");
|
||||
cy.get("[data-cy=memosTable]");
|
||||
|
||||
cy.visit("/home-memos/0"); //no reliable single id would work for existing
|
||||
cy.url({ timeout: 10000 }).should("include", "/home-memos/0");
|
||||
cy.get("[data-cy=pickListSelectedUserId]");
|
||||
|
||||
cy.visit("/home-reminders");
|
||||
cy.url({ timeout: 10000 }).should("include", "/home-reminders");
|
||||
cy.get("[data-cy=remindersTable]");
|
||||
|
||||
cy.visit("/home-reminders/0");
|
||||
cy.url({ timeout: 10000 }).should("include", "/home-reminders/0");
|
||||
cy.get("[data-cy=name]");
|
||||
|
||||
cy.visit("/home-reviews");
|
||||
cy.url({ timeout: 10000 }).should("include", "/home-reviews");
|
||||
cy.get("[data-cy=reviewsTable]");
|
||||
|
||||
cy.visit("/home-reviews/8/1");
|
||||
cy.url({ timeout: 10000 }).should("include", "/home-reviews/8/1");
|
||||
cy.get("[data-cy=clickThru]");
|
||||
|
||||
cy.visit("/home-user-settings");
|
||||
cy.url({ timeout: 10000 }).should("include", "/home-user-settings");
|
||||
cy.get("[data-cy=emailAddress]");
|
||||
|
||||
cy.visit("/home-password");
|
||||
cy.url({ timeout: 10000 }).should("include", "/home-password");
|
||||
cy.get("[data-cy=loginName]");
|
||||
|
||||
cy.visit("/home-security");
|
||||
cy.url({ timeout: 10000 }).should("include", "/home-security");
|
||||
cy.get("[data-cy=tfa]");
|
||||
|
||||
//can't do this without reset code etc, just logs out
|
||||
// cy.visit("/home-reset");
|
||||
// cy.url({ timeout: 10000 }).should("include", "/home-reset");
|
||||
// cy.get("[data-cy=loginName]");
|
||||
|
||||
cy.visit("/home-notify-subscriptions");
|
||||
cy.url({ timeout: 10000 }).should("include", "/home-notify-subscriptions");
|
||||
cy.get("[data-cy=subsTable]");
|
||||
|
||||
cy.visit("/home-notify-subscriptions/0");
|
||||
cy.url({ timeout: 10000 }).should(
|
||||
"include",
|
||||
"/home-notify-subscriptions/0"
|
||||
);
|
||||
cy.get("[data-cy=eventType]");
|
||||
|
||||
cy.visit("/home-notifications");
|
||||
cy.url({ timeout: 10000 }).should("include", "/home-notifications");
|
||||
cy.get("[data-cy=notifications]");
|
||||
|
||||
cy.visit("/home-notify-direct");
|
||||
cy.url({ timeout: 10000 }).should("include", "/home-notify-direct");
|
||||
cy.get("[data-cy=pickListSelectedUserId]");
|
||||
|
||||
//################# CUSTOMERS
|
||||
cy.visit("/cust-customers");
|
||||
cy.url({ timeout: 10000 }).should("include", "/cust-customers");
|
||||
cy.get("[data-cy=customersTable]");
|
||||
|
||||
cy.visit("/cust-customers/1");
|
||||
cy.url({ timeout: 10000 }).should("include", "/cust-customers/1");
|
||||
cy.get("[data-cy=name]");
|
||||
|
||||
cy.visit("/cust-customer-notes/1");
|
||||
cy.url({ timeout: 10000 }).should("include", "/cust-customer-notes/1");
|
||||
cy.get("[data-cy=clickThru]");
|
||||
|
||||
cy.visit("/cust-customer-note/0");
|
||||
cy.url({ timeout: 10000 }).should("include", "/cust-customer-note/0");
|
||||
cy.get("[data-cy=notes]");
|
||||
|
||||
cy.visit("/cust-head-offices");
|
||||
cy.url({ timeout: 10000 }).should("include", "/cust-head-offices");
|
||||
cy.get("[data-cy=headofficesTable]");
|
||||
|
||||
cy.visit("/cust-head-offices/1");
|
||||
cy.url({ timeout: 10000 }).should("include", "cust-head-offices/1");
|
||||
cy.get("[data-cy=name]");
|
||||
|
||||
cy.visit("/cust-users");
|
||||
cy.url({ timeout: 10000 }).should("include", "/cust-users");
|
||||
cy.get("[data-cy=custUsersTable]");
|
||||
|
||||
// cy.visit("/cust-users/0");
|
||||
// cy.url({ timeout: 10000 }).should("include", "/cust-users/0");
|
||||
// cy.get("[data-cy=customerId]");
|
||||
|
||||
//################# SERVICE
|
||||
cy.visit("/svc-schedule");
|
||||
cy.url({ timeout: 10000 }).should("include", "/svc-schedule");
|
||||
cy.get("[data-cy=btnTodaySvcSchedule]");
|
||||
|
||||
cy.visit("/svc-workorders");
|
||||
cy.url({ timeout: 10000 }).should("include", "/svc-workorders");
|
||||
cy.get("[data-cy=workordersTable]");
|
||||
|
||||
cy.visit("/svc-workorders/1");
|
||||
cy.url({ timeout: 10000 }).should("include", "svc-workorders/1");
|
||||
cy.get("[data-cy=customerId]");
|
||||
|
||||
cy.visit("/svc-quotes");
|
||||
cy.url({ timeout: 10000 }).should("include", "/svc-quotes");
|
||||
cy.get("[data-cy=quotesTable]");
|
||||
|
||||
cy.visit("/svc-pms");
|
||||
cy.url({ timeout: 10000 }).should("include", "/svc-pms");
|
||||
cy.get("[data-cy=pmsTable]");
|
||||
|
||||
cy.visit("/svc-units");
|
||||
cy.url({ timeout: 10000 }).should("include", "/svc-units");
|
||||
cy.get("[data-cy=unitsTable]");
|
||||
|
||||
cy.visit("/svc-units/1");
|
||||
cy.url({ timeout: 10000 }).should("include", "/svc-units/1");
|
||||
cy.get("[data-cy=serial]");
|
||||
|
||||
cy.visit("/svc-unit-models");
|
||||
cy.url({ timeout: 10000 }).should("include", "/svc-unit-models");
|
||||
cy.get("[data-cy=unitmodelsTable]");
|
||||
|
||||
cy.visit("/svc-unit-models/1");
|
||||
cy.url({ timeout: 10000 }).should("include", "svc-unit-models/1");
|
||||
cy.get("[data-cy=name]");
|
||||
|
||||
cy.visit("/svc-loaners");
|
||||
cy.url({ timeout: 10000 }).should("include", "/svc-loaners");
|
||||
cy.get("[data-cy=loanUnitsTable]");
|
||||
|
||||
cy.visit("/svc-loaners/1");
|
||||
cy.url({ timeout: 10000 }).should("include", "/svc-loaners/1");
|
||||
cy.get("[data-cy=name]");
|
||||
|
||||
cy.visit("/svc-contracts");
|
||||
cy.url({ timeout: 10000 }).should("include", "/svc-contracts");
|
||||
cy.get("[data-cy=contractsTable]");
|
||||
|
||||
cy.visit("/svc-contracts/1");
|
||||
cy.url({ timeout: 10000 }).should("include", "/svc-contracts/1");
|
||||
cy.get("[data-cy=name]");
|
||||
|
||||
cy.visit("/svc-projects");
|
||||
cy.url({ timeout: 10000 }).should("include", "/svc-projects");
|
||||
cy.get("[data-cy=projectsTable]");
|
||||
|
||||
cy.visit("/svc-projects/1");
|
||||
cy.url({ timeout: 10000 }).should("include", "/svc-projects/1");
|
||||
cy.get("[data-cy=name]");
|
||||
|
||||
cy.visit("/svc-csr");
|
||||
cy.url({ timeout: 10000 }).should("include", "/svc-csr");
|
||||
cy.get("[data-cy=csrTable]");
|
||||
|
||||
cy.visit("/svc-csr/1");
|
||||
cy.url({ timeout: 10000 }).should("include", "/svc-csr/1");
|
||||
cy.get("[data-cy=name]");
|
||||
|
||||
//################# INVENTORY
|
||||
cy.visit("/inv-parts");
|
||||
cy.url({ timeout: 10000 }).should("include", "/inv-parts");
|
||||
cy.get("[data-cy=partsTable]");
|
||||
|
||||
cy.visit("/inv-parts/1");
|
||||
cy.url({ timeout: 10000 }).should("include", "/inv-parts/1");
|
||||
cy.get("[data-cy=partNumber]");
|
||||
|
||||
cy.visit("/inv-purchase-orders");
|
||||
cy.url({ timeout: 10000 }).should("include", "/inv-purchase-orders");
|
||||
cy.get("[data-cy=purchaseordersTable]");
|
||||
|
||||
cy.visit("/inv-purchase-orders/1");
|
||||
cy.url({ timeout: 10000 }).should("include", "/inv-purchase-orders/1");
|
||||
cy.get("[data-cy=serial]");
|
||||
|
||||
cy.visit("/inv-part-inventory");
|
||||
cy.url({ timeout: 10000 }).should("include", "/inv-part-inventory");
|
||||
cy.get("[data-cy=partInventoryTable]");
|
||||
|
||||
cy.visit("/inv-part-inventory-transactions");
|
||||
cy.url({ timeout: 10000 }).should(
|
||||
"include",
|
||||
"/inv-part-inventory-transactions"
|
||||
);
|
||||
cy.get("[data-cy=partInventoryTransactionsTable]");
|
||||
|
||||
cy.visit("/inv-part-assemblies");
|
||||
cy.url({ timeout: 10000 }).should("include", "/inv-part-assemblies");
|
||||
cy.get("[data-cy=partassemblysTable]");
|
||||
|
||||
cy.visit("/inv-part-assemblies/1");
|
||||
cy.url({ timeout: 10000 }).should("include", "/inv-part-assemblies/1");
|
||||
cy.get("[data-cy=name]");
|
||||
|
||||
cy.visit("/inv-part-serials/1");
|
||||
cy.url({ timeout: 10000 }).should("include", "/inv-part-serials/1");
|
||||
cy.get("[data-cy=selectedPartId]");
|
||||
|
||||
cy.visit("/inv-part-stock-levels/1");
|
||||
cy.url({ timeout: 10000 }).should("include", "/inv-part-stock-levels/1");
|
||||
cy.get("[data-cy=selectedPartId]");
|
||||
|
||||
cy.visit("/inv-part-warehouses");
|
||||
cy.url({ timeout: 10000 }).should("include", "/inv-part-warehouses");
|
||||
cy.get("[data-cy=partwarehousesTable]");
|
||||
|
||||
cy.visit("/inv-part-warehouses/1");
|
||||
cy.url({ timeout: 10000 }).should("include", "/inv-part-warehouses/1");
|
||||
cy.get("[data-cy=name]");
|
||||
|
||||
cy.visit("/inv-part-adjustment");
|
||||
cy.url({ timeout: 10000 }).should("include", "/inv-part-adjustment");
|
||||
cy.get("[data-cy=description]");
|
||||
|
||||
//################# VENDORS
|
||||
cy.visit("/vendors");
|
||||
cy.url({ timeout: 10000 }).should("include", "/vendors");
|
||||
cy.get("[data-cy=vendorsTable]");
|
||||
|
||||
cy.visit("/vendors/1");
|
||||
cy.url({ timeout: 10000 }).should("include", "vendors/1");
|
||||
cy.get("[data-cy=name]");
|
||||
|
||||
//################# ACCOUNTING
|
||||
// cy.visit("/acc-service-banks");
|
||||
// cy.url({ timeout: 10000 }).should("include", "/acc-service-banks");
|
||||
// cy.get("[data-cy=serviceBanksTable]");
|
||||
|
||||
// cy.visit("/acc-service-banks/8/1");
|
||||
// cy.url({ timeout: 10000 }).should("include", "/acc-service-banks/8/1");
|
||||
// cy.get("[data-cy=clickThru]");
|
||||
|
||||
// cy.visit("/acc-service-banks/0/8/1");
|
||||
// cy.url({ timeout: 10000 }).should("include", "/acc-service-banks/0/8/1");
|
||||
// cy.get("[data-cy=name]");
|
||||
|
||||
cy.visit("/acc-service-rates");
|
||||
cy.url({ timeout: 10000 }).should("include", "/acc-service-rates");
|
||||
cy.get("[data-cy=serviceRatesTable]");
|
||||
|
||||
cy.visit("/acc-service-rates/1");
|
||||
cy.url({ timeout: 10000 }).should("include", "/acc-service-rates/1");
|
||||
cy.get("[data-cy=name]");
|
||||
|
||||
cy.visit("/acc-travel-rates");
|
||||
cy.url({ timeout: 10000 }).should("include", "/acc-travel-rates");
|
||||
cy.get("[data-cy=travelRatesTable]");
|
||||
|
||||
cy.visit("/acc-travel-rates/1");
|
||||
cy.url({ timeout: 10000 }).should("include", "/acc-travel-rates/1");
|
||||
cy.get("[data-cy=name]");
|
||||
|
||||
cy.visit("/acc-tax-codes");
|
||||
cy.url({ timeout: 10000 }).should("include", "/acc-tax-codes");
|
||||
cy.get("[data-cy=taxCodesTable]");
|
||||
|
||||
cy.visit("/acc-tax-codes/1");
|
||||
cy.url({ timeout: 10000 }).should("include", "/acc-tax-codes/1");
|
||||
cy.get("[data-cy=name]");
|
||||
|
||||
//################# ADMIN
|
||||
cy.visit("/adm-global-settings");
|
||||
cy.url({ timeout: 10000 }).should("include", "/adm-global-settings");
|
||||
cy.get("[data-cy=filterCaseSensitive]");
|
||||
|
||||
cy.visit("/adm-global-select-templates");
|
||||
cy.url({ timeout: 10000 }).should(
|
||||
"include",
|
||||
"/adm-global-select-templates"
|
||||
);
|
||||
cy.get("[data-cy=selectTemplate]");
|
||||
|
||||
cy.visit("/adm-global-logo");
|
||||
cy.url({ timeout: 10000 }).should("include", "/adm-global-logo");
|
||||
cy.get("[data-cy=uploadSmall]");
|
||||
|
||||
cy.visit("/adm-global-seeds");
|
||||
cy.url({ timeout: 10000 }).should("include", "/adm-global-seeds");
|
||||
cy.get("[data-cy=purchaseOrderNextSerial]");
|
||||
|
||||
cy.visit("/adm-license");
|
||||
cy.url({ timeout: 10000 }).should("include", "/adm-license");
|
||||
cy.get("[data-cy=licenseForm]");
|
||||
|
||||
cy.visit("/adm-users");
|
||||
cy.url({ timeout: 10000 }).should("include", "/adm-users");
|
||||
cy.get("[data-cy=usersTable]");
|
||||
|
||||
cy.visit("/adm-users/1");
|
||||
cy.url({ timeout: 10000 }).should("include", "/adm-users/1");
|
||||
cy.get("[data-cy=name]");
|
||||
|
||||
cy.visit("/adm-translations");
|
||||
cy.url({ timeout: 10000 }).should("include", "/adm-translations");
|
||||
cy.get("[data-cy=transTable]");
|
||||
|
||||
cy.visit("/adm-translations/1");
|
||||
cy.url({ timeout: 10000 }).should("include", "/adm-translations/1");
|
||||
cy.get("[data-cy=name]");
|
||||
|
||||
cy.visit("/adm-report-templates");
|
||||
cy.url({ timeout: 10000 }).should("include", "/adm-report-templates");
|
||||
cy.get("[data-cy=reportTemplatesTable]");
|
||||
|
||||
cy.visit("/report-edit/1");
|
||||
cy.url({ timeout: 10000 }).should("include", "/report-edit/1");
|
||||
cy.get("[data-cy=viewChange]");
|
||||
|
||||
cy.visit("/adm-attachments");
|
||||
cy.url({ timeout: 10000 }).should("include", "/adm-attachments");
|
||||
cy.get("[data-cy=attachTable]");
|
||||
|
||||
cy.visit("/adm-history");
|
||||
cy.url({ timeout: 10000 }).should("include", "/adm-history");
|
||||
cy.get("[data-cy=historyTable]");
|
||||
|
||||
cy.visit("/adm-import");
|
||||
cy.url({ timeout: 10000 }).should("include", "/adm-import");
|
||||
cy.get("[data-cy=ayaType]");
|
||||
|
||||
//################# OPERATIONS
|
||||
cy.visit("/ops-backup");
|
||||
cy.url({ timeout: 10000 }).should("include", "/ops-backup");
|
||||
cy.get("[data-cy=backupTable]");
|
||||
|
||||
cy.visit("/ops-server-state");
|
||||
cy.url({ timeout: 10000 }).should("include", "/ops-server-state");
|
||||
cy.get("[data-cy=serverStateOpen]");
|
||||
|
||||
cy.visit("/ops-jobs");
|
||||
cy.url({ timeout: 10000 }).should("include", "/ops-jobs");
|
||||
cy.get("[data-cy=jobsTable]");
|
||||
|
||||
cy.visit("/ops-log");
|
||||
cy.url({ timeout: 10000 }).should("include", "/ops-log");
|
||||
cy.get("[data-cy=selectedLog]");
|
||||
|
||||
cy.visit("/ops-metrics");
|
||||
cy.url({ timeout: 10000 }).should("include", "/ops-metrics");
|
||||
cy.get("[data-cy=selectedTimePeriod]");
|
||||
|
||||
cy.visit("/ops-profile");
|
||||
cy.url({ timeout: 10000 }).should("include", "/ops-profile");
|
||||
cy.get("[data-cy=profileCard]");
|
||||
|
||||
cy.visit("/ops-notification-settings");
|
||||
cy.url({ timeout: 10000 }).should("include", "/ops-notification-settings");
|
||||
cy.get("[data-cy=smtpDeliveryActive]");
|
||||
|
||||
cy.visit("/ops-notify-queue");
|
||||
cy.url({ timeout: 10000 }).should("include", "/ops-notify-queue");
|
||||
cy.get("[data-cy=notifyQueueTable]");
|
||||
|
||||
cy.visit("/ops-view-configuration");
|
||||
cy.url({ timeout: 10000 }).should("include", "/ops-view-configuration");
|
||||
cy.get("[data-cy=configCard]");
|
||||
|
||||
//################# MISC
|
||||
cy.visit("/about");
|
||||
cy.url({ timeout: 10000 }).should("include", "/about");
|
||||
cy.get("[data-cy=versionCard]");
|
||||
|
||||
cy.visit("/applog");
|
||||
cy.url({ timeout: 10000 }).should("include", "/applog");
|
||||
cy.get("[data-cy=logText]");
|
||||
|
||||
cy.visit("/customize/Customer");
|
||||
cy.url({ timeout: 10000 }).should("include", "/customize/Customer");
|
||||
cy.get("[data-cy=customizeForm]");
|
||||
|
||||
cy.visit("/data-list-column-view/CustomerDataList");
|
||||
cy.url({ timeout: 10000 }).should(
|
||||
"include",
|
||||
"/data-list-column-view/CustomerDataList"
|
||||
);
|
||||
cy.get("[data-cy=dlcForm]");
|
||||
|
||||
cy.visit("/home-reviews/2/1");
|
||||
cy.url({ timeout: 10000 }).should("include", "/home-reviews/2/1");
|
||||
cy.get("[data-cy=reviewsTable]");
|
||||
|
||||
cy.visit("/history/3/1");
|
||||
cy.url({ timeout: 10000 }).should("include", "/history/3/1");
|
||||
cy.get("[data-cy=timeLine]");
|
||||
|
||||
cy.visit("/open/8/1");
|
||||
cy.url({ timeout: 10000 }).should("include", "/cust-customers/1");
|
||||
cy.get("[data-cy=name]");
|
||||
|
||||
cy.visit("/NOTFOUND");
|
||||
cy.contains("404");
|
||||
|
||||
//LOGOUT MANAGER USER
|
||||
cy.get("[data-cy=navicon]").click();
|
||||
cy.get("[data-cy=logout]").click();
|
||||
cy.url({ timeout: 10000 }).should("include", "/login");
|
||||
|
||||
//CUSTOMER PAGES
|
||||
cy.get("input[name=username]").clear().type("Customer");
|
||||
cy.get("input[name=password]").clear().type("Customer{enter}");
|
||||
|
||||
cy.url({ timeout: 10000 }).should("include", "/customer-csr");
|
||||
cy.get("[data-cy=csrTable]");
|
||||
|
||||
cy.visit("/customer-workorders");
|
||||
cy.url({ timeout: 10000 }).should("include", "/customer-workorders");
|
||||
cy.get("[data-cy=underconstruction]");
|
||||
|
||||
//LOGOUT
|
||||
cy.get("[data-cy=navicon]").click();
|
||||
cy.get("[data-cy=logout]").click();
|
||||
cy.url({ timeout: 10000 }).should("include", "/login");
|
||||
|
||||
//-----------------------------------------------------
|
||||
});
|
||||
});
|
||||
Reference in New Issue
Block a user