@camunda/e2e-test-suite 0.0.360 → 0.0.362
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/pages/8.10/OperateHomePage.d.ts +3 -0
- package/dist/pages/8.10/OperateHomePage.js +19 -1
- package/dist/pages/8.10/UtilitiesPage.js +7 -0
- package/dist/pages/8.9/OperateHomePage.d.ts +3 -0
- package/dist/pages/8.9/OperateHomePage.js +19 -1
- package/dist/pages/8.9/UtilitiesPage.js +7 -0
- package/dist/tests/8.10/smoke-tests.spec.js +25 -11
- package/dist/tests/8.9/smoke-tests.spec.js +25 -11
- package/package.json +1 -1
|
@@ -13,6 +13,8 @@ declare class OperateHomePage {
|
|
|
13
13
|
readonly processPageHeading: Locator;
|
|
14
14
|
readonly applyButton: Locator;
|
|
15
15
|
readonly openButton: Locator;
|
|
16
|
+
readonly closeButton: Locator;
|
|
17
|
+
readonly messageBanner: Locator;
|
|
16
18
|
constructor(page: Page);
|
|
17
19
|
clickProcessesTab(): Promise<void>;
|
|
18
20
|
closeInformationDialog(): Promise<void>;
|
|
@@ -21,5 +23,6 @@ declare class OperateHomePage {
|
|
|
21
23
|
clearVariableValueInput(): Promise<void>;
|
|
22
24
|
fillVariableValueInput(newValue: string): Promise<void>;
|
|
23
25
|
clickSaveVariableButton(): Promise<void>;
|
|
26
|
+
clickMessageBanner(): Promise<void>;
|
|
24
27
|
}
|
|
25
28
|
export { OperateHomePage };
|
|
@@ -18,6 +18,8 @@ class OperateHomePage {
|
|
|
18
18
|
processPageHeading;
|
|
19
19
|
applyButton;
|
|
20
20
|
openButton;
|
|
21
|
+
closeButton;
|
|
22
|
+
messageBanner;
|
|
21
23
|
constructor(page) {
|
|
22
24
|
this.page = page;
|
|
23
25
|
this.operateHeader = page.getByRole('link', { name: 'Camunda Operate' });
|
|
@@ -48,9 +50,15 @@ class OperateHomePage {
|
|
|
48
50
|
this.openButton = page
|
|
49
51
|
.getByTestId('variable-testVariable')
|
|
50
52
|
.getByLabel('Open');
|
|
53
|
+
this.closeButton = page.getByRole('button', { name: 'Got it - Dismiss' });
|
|
54
|
+
this.messageBanner = page.getByRole('button', { name: 'Close' });
|
|
51
55
|
}
|
|
52
56
|
async clickProcessesTab() {
|
|
53
|
-
await (0, clickLocatorWithRetry_1.clickLocatorWithRetry)(this.page, this.processesTab
|
|
57
|
+
await (0, clickLocatorWithRetry_1.clickLocatorWithRetry)(this.page, this.processesTab, {
|
|
58
|
+
preAction: async () => {
|
|
59
|
+
await this.clickMessageBanner();
|
|
60
|
+
},
|
|
61
|
+
});
|
|
54
62
|
await (0, expectLocatorWithRetry_1.expectLocatorWithRetry)(this.page, this.processPageHeading, {
|
|
55
63
|
preAction: async () => {
|
|
56
64
|
await (0, test_1.expect)(this.processesTab).toBeVisible({ timeout: 10000 });
|
|
@@ -83,5 +91,15 @@ class OperateHomePage {
|
|
|
83
91
|
async clickSaveVariableButton() {
|
|
84
92
|
await this.applyButton.click();
|
|
85
93
|
}
|
|
94
|
+
async clickMessageBanner() {
|
|
95
|
+
try {
|
|
96
|
+
const button = this.messageBanner.or(this.closeButton).first();
|
|
97
|
+
await (0, test_1.expect)(button).toBeVisible({ timeout: 15000 });
|
|
98
|
+
await button.click();
|
|
99
|
+
}
|
|
100
|
+
catch {
|
|
101
|
+
console.log('No banner or close button found to click');
|
|
102
|
+
}
|
|
103
|
+
}
|
|
86
104
|
}
|
|
87
105
|
exports.OperateHomePage = OperateHomePage;
|
|
@@ -65,6 +65,13 @@ async function modelRestConnector(modelerCreatePage, connectorSettingsPage, proc
|
|
|
65
65
|
});
|
|
66
66
|
await modelerCreatePage.enterDiagramName(processName);
|
|
67
67
|
await (0, sleep_1.sleep)(10000);
|
|
68
|
+
await modelerCreatePage.clickCanvas();
|
|
69
|
+
await modelerCreatePage.clickGeneralPropertiesPanel();
|
|
70
|
+
await modelerCreatePage.clickNameInput();
|
|
71
|
+
await modelerCreatePage.fillNamedInput(processName);
|
|
72
|
+
await modelerCreatePage.clickIdInput();
|
|
73
|
+
await modelerCreatePage.fillIdInput(processName);
|
|
74
|
+
await modelerCreatePage.clickStartEventElement();
|
|
68
75
|
await modelerCreatePage.clickAppendElementButton();
|
|
69
76
|
await modelerCreatePage.clickAppendTaskButton();
|
|
70
77
|
await modelerCreatePage.clickChangeTypeButton();
|
|
@@ -11,6 +11,8 @@ declare class OperateHomePage {
|
|
|
11
11
|
readonly operateBanner: Locator;
|
|
12
12
|
readonly noPermissionsMessage: Locator;
|
|
13
13
|
readonly processPageHeading: Locator;
|
|
14
|
+
readonly closeButton: Locator;
|
|
15
|
+
readonly messageBanner: Locator;
|
|
14
16
|
constructor(page: Page);
|
|
15
17
|
clickProcessesTab(): Promise<void>;
|
|
16
18
|
closeInformationDialog(): Promise<void>;
|
|
@@ -19,5 +21,6 @@ declare class OperateHomePage {
|
|
|
19
21
|
clearVariableValueInput(): Promise<void>;
|
|
20
22
|
fillVariableValueInput(value: string): Promise<void>;
|
|
21
23
|
clickSaveVariableButton(): Promise<void>;
|
|
24
|
+
clickMessageBanner(): Promise<void>;
|
|
22
25
|
}
|
|
23
26
|
export { OperateHomePage };
|
|
@@ -16,6 +16,8 @@ class OperateHomePage {
|
|
|
16
16
|
operateBanner;
|
|
17
17
|
noPermissionsMessage;
|
|
18
18
|
processPageHeading;
|
|
19
|
+
closeButton;
|
|
20
|
+
messageBanner;
|
|
19
21
|
constructor(page) {
|
|
20
22
|
this.page = page;
|
|
21
23
|
this.operateHeader = page.getByRole('link', { name: 'Camunda Operate' });
|
|
@@ -40,9 +42,15 @@ class OperateHomePage {
|
|
|
40
42
|
this.processPageHeading = page
|
|
41
43
|
.getByTestId('expanded-panel')
|
|
42
44
|
.getByText('Process', { exact: true });
|
|
45
|
+
this.closeButton = page.getByRole('button', { name: 'Got it - Dismiss' });
|
|
46
|
+
this.messageBanner = page.getByRole('button', { name: 'Close' });
|
|
43
47
|
}
|
|
44
48
|
async clickProcessesTab() {
|
|
45
|
-
await (0, clickLocatorWithRetry_1.clickLocatorWithRetry)(this.page, this.processesTab
|
|
49
|
+
await (0, clickLocatorWithRetry_1.clickLocatorWithRetry)(this.page, this.processesTab, {
|
|
50
|
+
preAction: async () => {
|
|
51
|
+
await this.clickMessageBanner();
|
|
52
|
+
},
|
|
53
|
+
});
|
|
46
54
|
await (0, expectLocatorWithRetry_1.expectLocatorWithRetry)(this.page, this.processPageHeading, {
|
|
47
55
|
preAction: async () => {
|
|
48
56
|
await (0, test_1.expect)(this.processesTab).toBeVisible({ timeout: 10000 });
|
|
@@ -69,5 +77,15 @@ class OperateHomePage {
|
|
|
69
77
|
async clickSaveVariableButton() {
|
|
70
78
|
await this.saveVariableButton.click();
|
|
71
79
|
}
|
|
80
|
+
async clickMessageBanner() {
|
|
81
|
+
try {
|
|
82
|
+
const button = this.messageBanner.or(this.closeButton).first();
|
|
83
|
+
await (0, test_1.expect)(button).toBeVisible({ timeout: 15000 });
|
|
84
|
+
await button.click();
|
|
85
|
+
}
|
|
86
|
+
catch {
|
|
87
|
+
console.log('No banner or close button found to click');
|
|
88
|
+
}
|
|
89
|
+
}
|
|
72
90
|
}
|
|
73
91
|
exports.OperateHomePage = OperateHomePage;
|
|
@@ -65,6 +65,13 @@ async function modelRestConnector(modelerCreatePage, connectorSettingsPage, proc
|
|
|
65
65
|
});
|
|
66
66
|
await modelerCreatePage.enterDiagramName(processName);
|
|
67
67
|
await (0, sleep_1.sleep)(10000);
|
|
68
|
+
await modelerCreatePage.clickCanvas();
|
|
69
|
+
await modelerCreatePage.clickGeneralPropertiesPanel();
|
|
70
|
+
await modelerCreatePage.clickNameInput();
|
|
71
|
+
await modelerCreatePage.fillNamedInput(processName);
|
|
72
|
+
await modelerCreatePage.clickIdInput();
|
|
73
|
+
await modelerCreatePage.fillIdInput(processName);
|
|
74
|
+
await modelerCreatePage.clickStartEventElement();
|
|
68
75
|
await modelerCreatePage.clickAppendElementButton();
|
|
69
76
|
await modelerCreatePage.clickAppendTaskButton();
|
|
70
77
|
await modelerCreatePage.clickChangeTypeButton();
|
|
@@ -63,6 +63,14 @@ _8_10_1.test.describe('Smoke Tests', () => {
|
|
|
63
63
|
});
|
|
64
64
|
await modelerCreatePage.enterDiagramName(processName);
|
|
65
65
|
await modelerCreatePage.assertDiagramNameSet(processName);
|
|
66
|
+
await (0, sleep_1.sleep)(10000);
|
|
67
|
+
await modelerCreatePage.clickCanvas();
|
|
68
|
+
await modelerCreatePage.clickGeneralPropertiesPanel();
|
|
69
|
+
await modelerCreatePage.clickNameInput();
|
|
70
|
+
await modelerCreatePage.fillNamedInput(processName);
|
|
71
|
+
await modelerCreatePage.clickIdInput();
|
|
72
|
+
await modelerCreatePage.fillIdInput(processName);
|
|
73
|
+
await modelerCreatePage.clickStartEventElement();
|
|
66
74
|
await modelerCreatePage.addParallelUserTasks(2, userTaskName);
|
|
67
75
|
await modelerCreatePage.clickAppendElementButton();
|
|
68
76
|
await modelerCreatePage.clickAppendEndEventButton('parallelGateway');
|
|
@@ -143,7 +151,7 @@ _8_10_1.test.describe('Smoke Tests', () => {
|
|
|
143
151
|
await (0, test_1.expect)(optimizeTabOptimizeReportPage.oneUserTaskInstance).toHaveCount(2, { timeout: 60000 });
|
|
144
152
|
});
|
|
145
153
|
});
|
|
146
|
-
(0, _8_10_1.test)('Most Common REST Connector User Flow', async ({ page, modelerHomePage, appsPage, modelerCreatePage, connectorSettingsPage,
|
|
154
|
+
(0, _8_10_1.test)('Most Common REST Connector User Flow', async ({ page, modelerHomePage, appsPage, modelerCreatePage, connectorSettingsPage, }) => {
|
|
147
155
|
_8_10_1.test.slow();
|
|
148
156
|
const randomString = await (0, _setup_1.generateRandomStringAsync)(3);
|
|
149
157
|
const processName = 'REST_Connector_Basic_Auth_Process' + randomString;
|
|
@@ -151,7 +159,7 @@ _8_10_1.test.describe('Smoke Tests', () => {
|
|
|
151
159
|
await appsPage.clickCamundaApps();
|
|
152
160
|
await appsPage.clickModeler();
|
|
153
161
|
await (0, test_1.expect)(modelerHomePage.modelerPageBanner).toBeVisible({
|
|
154
|
-
timeout:
|
|
162
|
+
timeout: 60000,
|
|
155
163
|
});
|
|
156
164
|
});
|
|
157
165
|
await _8_10_1.test.step('Open Cross Component Test Project and Create a BPMN Diagram Template', async () => {
|
|
@@ -164,17 +172,23 @@ _8_10_1.test.describe('Smoke Tests', () => {
|
|
|
164
172
|
await modelerCreatePage.runProcessInstance(clusterName);
|
|
165
173
|
});
|
|
166
174
|
await _8_10_1.test.step('View Process Instance in Operate, assert it completes and assert result expression', async () => {
|
|
167
|
-
await
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
await
|
|
171
|
-
await
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
+
await (0, test_1.expect)(modelerCreatePage.viewProcessInstanceLink).toBeVisible({
|
|
176
|
+
timeout: 60000,
|
|
177
|
+
});
|
|
178
|
+
await modelerCreatePage.clickViewProcessInstanceLink();
|
|
179
|
+
const operateTab = await page.waitForEvent('popup', { timeout: 30000 });
|
|
180
|
+
const operateTabHomePage = new OperateHomePage_1.OperateHomePage(operateTab);
|
|
181
|
+
const operateTabProcessesPage = new OperateProcessesPage_1.OperateProcessesPage(operateTab);
|
|
182
|
+
const operateTabProcessInstancePage = new OperateProcessInstancePage_1.OperateProcessInstancePage(operateTab);
|
|
183
|
+
await operateTabHomePage.clickProcessesTab();
|
|
184
|
+
await operateTabProcessesPage.clickProcessCompletedCheckbox();
|
|
185
|
+
await operateTabProcessesPage.clickProcessInstanceLink(processName);
|
|
186
|
+
await (0, expectLocatorWithRetry_1.expectLocatorWithRetry)(page, operateTabProcessInstancePage.completedIcon, { totalTimeout: 60000, maxRetries: 5 });
|
|
187
|
+
await (0, expectLocatorWithRetry_1.expectLocatorWithRetry)(page, operateTabProcessInstancePage.variablesList, { totalTimeout: 60000, maxRetries: 5 });
|
|
188
|
+
await (0, test_1.expect)(operateTabProcessInstancePage.connectorResultVariableName('message')).toBeVisible({
|
|
175
189
|
timeout: 15000,
|
|
176
190
|
});
|
|
177
|
-
await (0, test_1.expect)(
|
|
191
|
+
await (0, test_1.expect)(operateTabProcessInstancePage
|
|
178
192
|
.connectorResultVariableName('message')
|
|
179
193
|
.getByText('"Message from Mock!"')).toBeVisible({
|
|
180
194
|
timeout: 15000,
|
|
@@ -69,6 +69,14 @@ _8_9_1.test.describe('Smoke Tests', () => {
|
|
|
69
69
|
});
|
|
70
70
|
await modelerCreatePage.enterDiagramName(processName);
|
|
71
71
|
await modelerCreatePage.assertDiagramNameSet(processName);
|
|
72
|
+
await (0, sleep_1.sleep)(10000);
|
|
73
|
+
await modelerCreatePage.clickCanvas();
|
|
74
|
+
await modelerCreatePage.clickGeneralPropertiesPanel();
|
|
75
|
+
await modelerCreatePage.clickNameInput();
|
|
76
|
+
await modelerCreatePage.fillNamedInput(processName);
|
|
77
|
+
await modelerCreatePage.clickIdInput();
|
|
78
|
+
await modelerCreatePage.fillIdInput(processName);
|
|
79
|
+
await modelerCreatePage.clickStartEventElement();
|
|
72
80
|
await modelerCreatePage.addParallelUserTasks(2, userTaskName);
|
|
73
81
|
await modelerCreatePage.clickAppendElementButton();
|
|
74
82
|
await modelerCreatePage.clickAppendEndEventButton('parallelGateway');
|
|
@@ -149,7 +157,7 @@ _8_9_1.test.describe('Smoke Tests', () => {
|
|
|
149
157
|
await (0, test_1.expect)(optimizeTabOptimizeReportPage.oneUserTaskInstance).toHaveCount(2, { timeout: 60000 });
|
|
150
158
|
});
|
|
151
159
|
});
|
|
152
|
-
(0, _8_9_1.test)('Most Common REST Connector User Flow', async ({ page, modelerHomePage, appsPage, modelerCreatePage, connectorSettingsPage,
|
|
160
|
+
(0, _8_9_1.test)('Most Common REST Connector User Flow', async ({ page, modelerHomePage, appsPage, modelerCreatePage, connectorSettingsPage, }) => {
|
|
153
161
|
_8_9_1.test.slow();
|
|
154
162
|
const randomString = useFixedNames
|
|
155
163
|
? 'UpgradeTest'
|
|
@@ -159,7 +167,7 @@ _8_9_1.test.describe('Smoke Tests', () => {
|
|
|
159
167
|
await appsPage.clickCamundaApps();
|
|
160
168
|
await appsPage.clickModeler();
|
|
161
169
|
await (0, test_1.expect)(modelerHomePage.modelerPageBanner).toBeVisible({
|
|
162
|
-
timeout:
|
|
170
|
+
timeout: 60000,
|
|
163
171
|
});
|
|
164
172
|
});
|
|
165
173
|
await _8_9_1.test.step('Open Cross Component Test Project and Create a BPMN Diagram Template', async () => {
|
|
@@ -172,17 +180,23 @@ _8_9_1.test.describe('Smoke Tests', () => {
|
|
|
172
180
|
await modelerCreatePage.runProcessInstance(clusterName);
|
|
173
181
|
});
|
|
174
182
|
await _8_9_1.test.step('View Process Instance in Operate, assert it completes and assert result expression', async () => {
|
|
175
|
-
await
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
await
|
|
179
|
-
await
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
+
await (0, test_1.expect)(modelerCreatePage.viewProcessInstanceLink).toBeVisible({
|
|
184
|
+
timeout: 60000,
|
|
185
|
+
});
|
|
186
|
+
await modelerCreatePage.clickViewProcessInstanceLink();
|
|
187
|
+
const operateTab = await page.waitForEvent('popup', { timeout: 30000 });
|
|
188
|
+
const operateTabHomePage = new OperateHomePage_1.OperateHomePage(operateTab);
|
|
189
|
+
const operateTabProcessesPage = new OperateProcessesPage_1.OperateProcessesPage(operateTab);
|
|
190
|
+
const operateTabProcessInstancePage = new OperateProcessInstancePage_1.OperateProcessInstancePage(operateTab);
|
|
191
|
+
await operateTabHomePage.clickProcessesTab();
|
|
192
|
+
await operateTabProcessesPage.clickProcessCompletedCheckbox();
|
|
193
|
+
await operateTabProcessesPage.clickProcessInstanceLink(processName);
|
|
194
|
+
await (0, expectLocatorWithRetry_1.expectLocatorWithRetry)(page, operateTabProcessInstancePage.completedIcon, { totalTimeout: 60000, maxRetries: 5 });
|
|
195
|
+
await (0, expectLocatorWithRetry_1.expectLocatorWithRetry)(page, operateTabProcessInstancePage.variablesList, { totalTimeout: 60000, maxRetries: 5 });
|
|
196
|
+
await (0, test_1.expect)(operateTabProcessInstancePage.connectorResultVariableName('message')).toBeVisible({
|
|
183
197
|
timeout: 15000,
|
|
184
198
|
});
|
|
185
|
-
await (0, test_1.expect)(
|
|
199
|
+
await (0, test_1.expect)(operateTabProcessInstancePage
|
|
186
200
|
.connectorResultVariableName('message')
|
|
187
201
|
.getByText('"Message from Mock!"')).toBeVisible({
|
|
188
202
|
timeout: 15000,
|