@progress/kendo-e2e 0.13.0 → 1.0.0

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/README.md CHANGED
@@ -132,19 +132,33 @@ To check available mobile devices and capabilities please visit [this](https://w
132
132
 
133
133
  ### Find Elements and Wait for Conditions
134
134
 
135
- TODO
135
+ Selenium default behavior when you search for element is to return it if available and throw if not available (do not try to wait until element is available).
136
136
 
137
- ### Take Screenshots
137
+ To make writing e2e tests easier and tests more stable in `kendo-e2e` we have:
138
138
 
139
- TODO
139
+ ```js
140
+ const element = await browser.find(locator, timeout);
141
+ ```
142
+
143
+ This `find` with wait until element is available (until timeout reached), if timeout reached and element still not found it will throw.
140
144
 
141
145
  ### Detect JavaScript errors in Browser Logs
142
146
 
143
- TODO
147
+ ```js
148
+ await browser.getErrorLogs()
149
+ ```
150
+
151
+ Will return all errors in browser console and it is nice check we can perform after each test to ensure we have no missing resources or scripts throwing errors.
144
152
 
145
153
  ### Detect Accessibility Violations
146
154
 
147
- TODO
155
+ ```js
156
+ const disableRules = ['aria-allowed-role', 'label'];
157
+ const errors = await browser.getAccessibilityViolations('#table', disableRules);
158
+ expect(errors).toEqual([]);
159
+ ```
160
+
161
+ `getAccessibilityViolations` uses [axe](https://www.deque.com/axe/) to detect WCAG 2.1 violations.
148
162
 
149
163
  ### Kendo UI Components Abstractions
150
164
 
@@ -169,5 +183,7 @@ npm run build
169
183
  Run tests:
170
184
 
171
185
  ```bash
186
+ npm run tests:a11y
172
187
  npm run tests:e2e
188
+ npm run tests:visual
173
189
  ```
@@ -6,21 +6,21 @@ export declare class Grid extends UIComponent {
6
6
  protected parentElement?: WebElement;
7
7
  static get Selector(): string;
8
8
  constructor(driver: ThenableWebDriver, locator?: By, parentElement?: WebElement);
9
- Pager(): Promise<Pager>;
10
- DataRows(): Promise<WebElement[]>;
11
- DataRowsCount(): Promise<number>;
12
- IsEmpty(): Promise<boolean>;
13
- Header(column: number): Promise<WebElement>;
14
- HeaderFilter(column: number): Promise<WebElement>;
15
- HeaderByText(text: string, exactMatch?: boolean): Promise<WebElement>;
16
- HeaderSortType(text: string, exactMatch?: boolean): Promise<SortType>;
17
- GetSortOrder(text: string, exactMatch?: boolean): Promise<number>;
18
- HeaderCell(column: number): Promise<WebElement>;
9
+ pager(): Promise<Pager>;
10
+ dataRows(): Promise<WebElement[]>;
11
+ dataRowsCount(): Promise<number>;
12
+ isEmpty(): Promise<boolean>;
13
+ header(column: number): Promise<WebElement>;
14
+ headerFilter(column: number): Promise<WebElement>;
15
+ headerByText(text: string, exactMatch?: boolean): Promise<WebElement>;
16
+ headerSortType(text: string, exactMatch?: boolean): Promise<SortType>;
17
+ getSortOrder(text: string, exactMatch?: boolean): Promise<number>;
18
+ headerCell(column: number): Promise<WebElement>;
19
19
  HeaderCellInput(column: number): Promise<WebElement>;
20
20
  HeaderCellFilterDropDown(column: number): Promise<WebElement>;
21
21
  HeaderCellCleanFilterButton(column: number): Promise<WebElement>;
22
22
  Cell(row: number, column: number): Promise<WebElement>;
23
- CellInput(row: number, column: number): Promise<WebElement>;
24
- CellsByColumn(column: number, limit?: number): Promise<WebElement[]>;
25
- private GetGridElement;
23
+ cellInput(row: number, column: number): Promise<WebElement>;
24
+ cellsByColumn(column: number, limit?: number): Promise<WebElement[]>;
25
+ private getGridElement;
26
26
  }
@@ -24,44 +24,44 @@ class Grid extends ui_component_1.UIComponent {
24
24
  static get Selector() {
25
25
  return ".k-grid";
26
26
  }
27
- Pager() {
27
+ pager() {
28
28
  return __awaiter(this, void 0, void 0, function* () {
29
29
  const rootElement = yield this.getRootElement();
30
30
  return new pager_1.Pager(this.driver, selenium_webdriver_1.By.css(".k-grid-pager"), rootElement);
31
31
  });
32
32
  }
33
- DataRows() {
33
+ dataRows() {
34
34
  return __awaiter(this, void 0, void 0, function* () {
35
35
  const rootElement = yield this.getRootElement();
36
36
  return yield rootElement.findElements(selenium_webdriver_1.By.css("tbody tr"));
37
37
  });
38
38
  }
39
- DataRowsCount() {
39
+ dataRowsCount() {
40
40
  return __awaiter(this, void 0, void 0, function* () {
41
- return (yield this.DataRows()).length;
41
+ return (yield this.dataRows()).length;
42
42
  });
43
43
  }
44
- IsEmpty() {
44
+ isEmpty() {
45
45
  return __awaiter(this, void 0, void 0, function* () {
46
46
  const rootElement = yield this.getRootElement();
47
47
  return (yield rootElement.findElements(selenium_webdriver_1.By.css(".k-grid-norecords"))).length === 1;
48
48
  });
49
49
  }
50
- Header(column) {
50
+ header(column) {
51
51
  return __awaiter(this, void 0, void 0, function* () {
52
52
  const locator = selenium_webdriver_1.By.css(`thead tr th:nth-of-type(${column})`);
53
- return yield this.GetGridElement(locator, `Failed to find header at column ${column}.`);
53
+ return yield this.getGridElement(locator, `Failed to find header at column ${column}.`);
54
54
  });
55
55
  }
56
- HeaderFilter(column) {
56
+ headerFilter(column) {
57
57
  return __awaiter(this, void 0, void 0, function* () {
58
58
  const defaultLocator = `thead tr th:nth-of-type(${column}) .k-grid-filter`;
59
59
  const reactLocator = `thead tr th:nth-of-type(${column}) span.k-i-more-vertical`;
60
60
  const errorMessage = `Failed to find filter menu inside header at column ${column}.`;
61
- return yield this.GetGridElement(selenium_webdriver_1.By.css(`${defaultLocator}, ${reactLocator}`), errorMessage);
61
+ return yield this.getGridElement(selenium_webdriver_1.By.css(`${defaultLocator}, ${reactLocator}`), errorMessage);
62
62
  });
63
63
  }
64
- HeaderByText(text, exactMatch = true) {
64
+ headerByText(text, exactMatch = true) {
65
65
  return __awaiter(this, void 0, void 0, function* () {
66
66
  // Angular and Blazor: Header text is in span with class "k-column-title"
67
67
  // jQuery, React and Vue: Header text is in span with class "k-link"
@@ -72,12 +72,12 @@ class Grid extends ui_component_1.UIComponent {
72
72
  else {
73
73
  locator = selenium_webdriver_1.By.xpath(`//thead//tr//th[.//*[(@class='k-column-title' or @class='k-link') and contains(.,'${text}')]]`);
74
74
  }
75
- return yield this.GetGridElement(locator, `Failed to find header with "${text}" text.`);
75
+ return yield this.getGridElement(locator, `Failed to find header with "${text}" text.`);
76
76
  });
77
77
  }
78
- HeaderSortType(text, exactMatch = true) {
78
+ headerSortType(text, exactMatch = true) {
79
79
  return __awaiter(this, void 0, void 0, function* () {
80
- const rootElement = yield this.HeaderByText(text, exactMatch);
80
+ const rootElement = yield this.headerByText(text, exactMatch);
81
81
  if ((yield rootElement.findElements(selenium_webdriver_1.By.css(".k-i-sort-asc-sm"))).length > 0) {
82
82
  return enums_1.SortType.Asc;
83
83
  }
@@ -89,10 +89,10 @@ class Grid extends ui_component_1.UIComponent {
89
89
  }
90
90
  });
91
91
  }
92
- GetSortOrder(text, exactMatch = true) {
92
+ getSortOrder(text, exactMatch = true) {
93
93
  return __awaiter(this, void 0, void 0, function* () {
94
94
  const locator = selenium_webdriver_1.By.css(".k-sort-order");
95
- const rootElement = yield this.HeaderByText(text, exactMatch);
95
+ const rootElement = yield this.headerByText(text, exactMatch);
96
96
  if ((yield rootElement.findElements(locator)).length > 0) {
97
97
  const element = yield rootElement.findElement(locator);
98
98
  return +(yield element.getText());
@@ -102,12 +102,12 @@ class Grid extends ui_component_1.UIComponent {
102
102
  }
103
103
  });
104
104
  }
105
- HeaderCell(column) {
105
+ headerCell(column) {
106
106
  return __awaiter(this, void 0, void 0, function* () {
107
107
  const defaultLocator = `thead tr td:nth-of-type(${column})`;
108
108
  const reactLocator = `thead tr.k-filter-row th:nth-of-type(${column})`;
109
109
  const errorMessage = `Failed to find header cell at column ${column}.`;
110
- return yield this.GetGridElement(selenium_webdriver_1.By.css(`${defaultLocator}, ${reactLocator}`), errorMessage);
110
+ return yield this.getGridElement(selenium_webdriver_1.By.css(`${defaultLocator}, ${reactLocator}`), errorMessage);
111
111
  });
112
112
  }
113
113
  HeaderCellInput(column) {
@@ -115,7 +115,7 @@ class Grid extends ui_component_1.UIComponent {
115
115
  const defaultLocator = `thead tr td:nth-of-type(${column}) input`;
116
116
  const reactLocator = `thead tr.k-filter-row th:nth-of-type(${column}) input`;
117
117
  const errorMessage = `Failed to find input inside header cell at column ${column}.`;
118
- return yield this.GetGridElement(selenium_webdriver_1.By.css(`${defaultLocator}, ${reactLocator}`), errorMessage);
118
+ return yield this.getGridElement(selenium_webdriver_1.By.css(`${defaultLocator}, ${reactLocator}`), errorMessage);
119
119
  });
120
120
  }
121
121
  HeaderCellFilterDropDown(column) {
@@ -123,7 +123,7 @@ class Grid extends ui_component_1.UIComponent {
123
123
  const defaultLocator = `thead tr td:nth-of-type(${column}) .k-dropdown`;
124
124
  const reactLocator = `thead tr.k-filter-row th:nth-of-type(${column}) .k-dropdown`;
125
125
  const errorMessage = `Failed to find filter dropdown inside header cell at column ${column}.`;
126
- return yield this.GetGridElement(selenium_webdriver_1.By.css(`${defaultLocator}, ${reactLocator}`), errorMessage);
126
+ return yield this.getGridElement(selenium_webdriver_1.By.css(`${defaultLocator}, ${reactLocator}`), errorMessage);
127
127
  });
128
128
  }
129
129
  HeaderCellCleanFilterButton(column) {
@@ -131,7 +131,7 @@ class Grid extends ui_component_1.UIComponent {
131
131
  const defaultLocator = `thead tr td:nth-of-type(${column}) button[title='Clear']`;
132
132
  const reactLocator = `thead tr.k-filter-row th:nth-of-type(${column}) button[title='Clear']`;
133
133
  const errorMessage = `Failed to find clear filter button inside header cell at column ${column}.`;
134
- return yield this.GetGridElement(selenium_webdriver_1.By.css(`${defaultLocator}, ${reactLocator}`), errorMessage);
134
+ return yield this.getGridElement(selenium_webdriver_1.By.css(`${defaultLocator}, ${reactLocator}`), errorMessage);
135
135
  });
136
136
  }
137
137
  Cell(row, column) {
@@ -139,18 +139,18 @@ class Grid extends ui_component_1.UIComponent {
139
139
  const defaultLocator = `tr:nth-of-type(${row}) td[role='gridcell']:nth-of-type(${column})`;
140
140
  const vueLocator = `tr.k-master-row:nth-of-type(${row}) td:nth-of-type(${column})`;
141
141
  const errorMessage = `Failed to find cell at {${row}, ${column}}.`;
142
- return yield this.GetGridElement(selenium_webdriver_1.By.css(`${defaultLocator}, ${vueLocator}`), errorMessage);
142
+ return yield this.getGridElement(selenium_webdriver_1.By.css(`${defaultLocator}, ${vueLocator}`), errorMessage);
143
143
  });
144
144
  }
145
- CellInput(row, column) {
145
+ cellInput(row, column) {
146
146
  return __awaiter(this, void 0, void 0, function* () {
147
147
  const defaultLocator = `tr:nth-of-type(${row}) td[role='gridcell']:nth-of-type(${column}) input`;
148
148
  const vueLocator = `tr.k-master-row:nth-of-type(${row}) td:nth-of-type(${column}) input`;
149
149
  const errorMessage = `Failed to find input at cell {${row}, ${column}}.`;
150
- return yield this.GetGridElement(selenium_webdriver_1.By.css(`${defaultLocator}, ${vueLocator}`), errorMessage);
150
+ return yield this.getGridElement(selenium_webdriver_1.By.css(`${defaultLocator}, ${vueLocator}`), errorMessage);
151
151
  });
152
152
  }
153
- CellsByColumn(column, limit) {
153
+ cellsByColumn(column, limit) {
154
154
  return __awaiter(this, void 0, void 0, function* () {
155
155
  const rootElement = yield this.getRootElement();
156
156
  const cells = yield rootElement.findElements(selenium_webdriver_1.By.css(`tr td:nth-of-type(${column})`));
@@ -162,7 +162,7 @@ class Grid extends ui_component_1.UIComponent {
162
162
  }
163
163
  });
164
164
  }
165
- GetGridElement(locator, error) {
165
+ getGridElement(locator, error) {
166
166
  return __awaiter(this, void 0, void 0, function* () {
167
167
  const rootElement = yield this.getRootElement();
168
168
  yield this.driver.wait(conditions_1.EC.hasChild(rootElement, locator), settings_1.Settings.timeout, error);
@@ -44,8 +44,16 @@ class WebApp {
44
44
  }
45
45
  click(locator, timeout = 10000) {
46
46
  return __awaiter(this, void 0, void 0, function* () {
47
- const element = yield this.find(locator, timeout);
48
- yield element.click();
47
+ try {
48
+ const element = yield this.find(locator, timeout);
49
+ yield element.click();
50
+ }
51
+ catch (_a) {
52
+ const element = yield this.find(locator, timeout);
53
+ yield this.wait(selenium_webdriver_1.until.elementIsVisible(element), timeout, `Element located by ${locator} is not visible.`);
54
+ yield this.wait(selenium_webdriver_1.until.elementIsEnabled(element), timeout, `Element located by ${locator} is not enabled.`);
55
+ yield element.click();
56
+ }
49
57
  });
50
58
  }
51
59
  hover(locator, timeout = 10000) {
@@ -1 +1 @@
1
- {"version":3,"file":"web-app.js","sourceRoot":"","sources":["../../src/selenium/web-app.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"web-app.js","sourceRoot":"","sources":["../../src/selenium/web-app.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@progress/kendo-e2e",
3
- "version": "0.13.0",
3
+ "version": "1.0.0",
4
4
  "description": "Kendo UI end-to-end test utilities.",
5
5
  "main": "dist/index.js",
6
6
  "typings": "dist/index.d.ts",
@@ -27,11 +27,11 @@
27
27
  "fallbackTags": {
28
28
  "dev": "latest"
29
29
  },
30
- "analyzeCommits": "@telerik/semantic-prerelease/analyzeCommits",
31
- "generateNotes": "@telerik/semantic-prerelease/generateNotes",
32
- "getLastRelease": "@telerik/semantic-prerelease/getLastRelease",
33
- "verifyConditions": "@telerik/semantic-prerelease/verifyConditions",
34
- "verifyRelease": "@telerik/semantic-prerelease/verifyRelease"
30
+ "analyzeCommits": "@progress/semantic-prerelease/analyzeCommits",
31
+ "generateNotes": "@progress/semantic-prerelease/generateNotes",
32
+ "getLastRelease": "@progress/semantic-prerelease/getLastRelease",
33
+ "verifyConditions": "@progress/semantic-prerelease/verifyConditions",
34
+ "verifyRelease": "@progress/semantic-prerelease/verifyRelease"
35
35
  },
36
36
  "keywords": [
37
37
  "a11y",
@@ -59,13 +59,13 @@
59
59
  "jsdom": "^16.6.0",
60
60
  "looks-same": "^7.3.0",
61
61
  "pngjs": "^6.0.0",
62
- "selenium-webdriver": "4.3.1"
62
+ "selenium-webdriver": "4.4.0"
63
63
  },
64
64
  "devDependencies": {
65
65
  "@commitlint/cli": "^17.0.3",
66
66
  "@commitlint/config-conventional": "^17.0.3",
67
67
  "@progress/kendo-common-tasks": "^8.0.2",
68
- "@telerik/semantic-prerelease": "^2.0.1",
68
+ "@progress/semantic-prerelease": "^3.0.2",
69
69
  "@types/jest": "^28.1.6",
70
70
  "@types/node": "ts4.3",
71
71
  "@typescript-eslint/eslint-plugin": "^5.31.0",
@@ -80,5 +80,9 @@
80
80
  "ts-node": "^10.9.1",
81
81
  "tslib": "^2.3.0",
82
82
  "typescript": "~4.3.4"
83
+ },
84
+ "engines": {
85
+ "npm": ">=6.0.0",
86
+ "node": ">=14.0.0"
83
87
  }
84
88
  }