Skip to content

Commit f7b968a

Browse files
ktranDevtools-frontend LUCI CQ
authored andcommitted
Remove current recording after each test
This is an attempt to unflake the replay.test.ts. It looks as if one test recording may be present in a different test run, so remove the recording after each run. Fixed: 496565885 Change-Id: I21f5cd831bce094da7341a8c7d8c0c090c95d0cc Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/7724578 Reviewed-by: Alex Rudenko <alexrudenko@chromium.org> Auto-Submit: Kim-Anh Tran <kimanh@chromium.org> Commit-Queue: Alex Rudenko <alexrudenko@chromium.org>
1 parent 5f57a90 commit f7b968a

2 files changed

Lines changed: 28 additions & 2 deletions

File tree

test/e2e/helpers/recorder-helpers.ts

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -326,6 +326,10 @@ export async function replayShortcut(
326326
await devToolsPage.pressKey('Enter', {control: true});
327327
}
328328

329+
export async function deleteCurrentRecording(devToolsPage: DevToolsPage) {
330+
await devToolsPage.click('aria/Delete recording');
331+
}
332+
329333
export async function toggleCodeView(
330334
devToolsPage: DevToolsPage,
331335
) {

test/e2e/recorder/replay.test.ts

Lines changed: 24 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ import type {AssertedEventType, StepType} from '../../../front_end/panels/record
99
import {expectError} from '../../conductor/events.js';
1010
import {
1111
clickSelectButtonItem,
12+
deleteCurrentRecording,
1213
onReplayFinished,
1314
replayShortcut,
1415
setupRecorderWithScript,
@@ -46,6 +47,7 @@ describe('Recorder', function() {
4647
inspectedPage.page.url(),
4748
`${inspectedPage.getResourcesPath()}/recorder/recorder2.html`,
4849
);
50+
await deleteCurrentRecording(devToolsPage);
4951
});
5052

5153
it('should be able to replay click steps', async ({inspectedPage, devToolsPage}) => {
@@ -79,6 +81,7 @@ describe('Recorder', function() {
7981
inspectedPage.page.url(),
8082
`${inspectedPage.getResourcesPath()}/recorder/recorder2.html`,
8183
);
84+
await deleteCurrentRecording(devToolsPage);
8285
});
8386

8487
it('should be able to replay click steps on checkboxes', async ({inspectedPage, devToolsPage}) => {
@@ -103,6 +106,7 @@ describe('Recorder', function() {
103106
inspectedPage,
104107
);
105108
assert.isTrue(await inspectedPage.evaluate(() => document.querySelector('input')?.checked));
109+
await deleteCurrentRecording(devToolsPage);
106110
});
107111

108112
it('should not be able to navigate to chrome URLs', async ({devToolsPage, inspectedPage}) => {
@@ -121,6 +125,7 @@ describe('Recorder', function() {
121125
devToolsPage,
122126
inspectedPage,
123127
);
128+
await deleteCurrentRecording(devToolsPage);
124129
});
125130

126131
it('should be able to replay keyboard events', async ({inspectedPage, devToolsPage}) => {
@@ -151,6 +156,7 @@ describe('Recorder', function() {
151156
e => (e as HTMLElement).innerText.trim(),
152157
);
153158
assert.strictEqual(value, ['one:1', 'two:2'].join('\n'));
159+
await deleteCurrentRecording(devToolsPage);
154160
});
155161

156162
it('should be able to replay events on select', async ({inspectedPage, devToolsPage}) => {
@@ -180,6 +186,7 @@ describe('Recorder', function() {
180186
e => (e as HTMLSelectElement).value,
181187
);
182188
assert.strictEqual(value, 'O2');
189+
await deleteCurrentRecording(devToolsPage);
183190
});
184191

185192
it('should be able to replay events on non text inputs', async ({inspectedPage, devToolsPage}) => {
@@ -209,6 +216,7 @@ describe('Recorder', function() {
209216
e => (e as HTMLSelectElement).value,
210217
);
211218
assert.strictEqual(value, '#333333');
219+
await deleteCurrentRecording(devToolsPage);
212220
});
213221

214222
it('should be able to replay events with text selectors', async ({inspectedPage, devToolsPage}) => {
@@ -238,6 +246,7 @@ describe('Recorder', function() {
238246
frame => frame.url() === `${inspectedPage.getResourcesPath()}/recorder/iframe2.html`,
239247
);
240248
assert.isOk(frame, 'Frame that the target page navigated to is not found');
249+
await deleteCurrentRecording(devToolsPage);
241250
});
242251

243252
it('should be able to replay events with xpath selectors', async ({inspectedPage, devToolsPage}) => {
@@ -267,6 +276,7 @@ describe('Recorder', function() {
267276
frame => frame.url() === `${inspectedPage.getResourcesPath()}/recorder/iframe2.html`,
268277
);
269278
assert.isOk(frame, 'Frame that the target page navigated to is not found');
279+
await deleteCurrentRecording(devToolsPage);
270280
});
271281

272282
it('should be able to override the value in text inputs that have a value already',
@@ -297,8 +307,8 @@ describe('Recorder', function() {
297307
e => (e as HTMLSelectElement).value,
298308
);
299309
assert.strictEqual(value, 'cba');
310+
await deleteCurrentRecording(devToolsPage);
300311
});
301-
302312
it('should be able to override the value in text inputs that are partially prefilled',
303313
async ({inspectedPage, devToolsPage}) => {
304314
await setupRecorderWithScriptAndReplay(
@@ -327,8 +337,8 @@ describe('Recorder', function() {
327337
e => (e as HTMLSelectElement).value,
328338
);
329339
assert.strictEqual(value, 'abcdef');
340+
await deleteCurrentRecording(devToolsPage);
330341
});
331-
332342
it('should be able to replay viewport change', async ({inspectedPage, devToolsPage}) => {
333343
await setupRecorderWithScriptAndReplay(
334344
{
@@ -357,6 +367,7 @@ describe('Recorder', function() {
357367
devToolsPage,
358368
inspectedPage,
359369
);
370+
await deleteCurrentRecording(devToolsPage);
360371
});
361372

362373
it('should be able to replay scroll events', async ({inspectedPage, devToolsPage}) => {
@@ -402,6 +413,7 @@ describe('Recorder', function() {
402413
await inspectedPage.evaluate(() => document.querySelector('#overflow')?.scrollLeft),
403414
0,
404415
);
416+
await deleteCurrentRecording(devToolsPage);
405417
});
406418

407419
it('should be able to scroll into view when needed', async ({inspectedPage, devToolsPage}) => {
@@ -430,6 +442,7 @@ describe('Recorder', function() {
430442
await inspectedPage.evaluate(() => document.querySelector('button')?.innerText),
431443
'clicked',
432444
);
445+
await deleteCurrentRecording(devToolsPage);
433446
});
434447

435448
it('should be able to replay ARIA selectors on inputs', async ({inspectedPage, devToolsPage}) => {
@@ -468,6 +481,7 @@ describe('Recorder', function() {
468481
await inspectedPage.evaluate(() => document.activeElement?.id),
469482
'name',
470483
);
484+
await deleteCurrentRecording(devToolsPage);
471485
});
472486

473487
it('should be able to waitForElement', async ({inspectedPage, devToolsPage}) => {
@@ -506,6 +520,7 @@ describe('Recorder', function() {
506520
await inspectedPage.evaluate(() => document.querySelectorAll('custom-element').length),
507521
2,
508522
);
523+
await deleteCurrentRecording(devToolsPage);
509524
});
510525

511526
it('should be able to waitForExpression', async ({inspectedPage, devToolsPage}) => {
@@ -541,6 +556,7 @@ describe('Recorder', function() {
541556
),
542557
2,
543558
);
559+
await deleteCurrentRecording(devToolsPage);
544560
});
545561

546562
it('should show PerformancePanel if the MeasurePerformance SelectMenu is clicked for replay',
@@ -567,6 +583,7 @@ describe('Recorder', function() {
567583
`${inspectedPage.getResourcesPath()}/recorder/recorder2.html`,
568584
);
569585
await devToolsPage.waitFor('[aria-label="Performance panel"]');
586+
await deleteCurrentRecording(devToolsPage);
570587
});
571588

572589
it('should be able to replay actions with popups', async ({inspectedPage, devToolsPage, browser}) => {
@@ -637,6 +654,7 @@ describe('Recorder', function() {
637654

638655
browser.browser.off('targetcreated', targetCreatedHandler);
639656
browser.browser.off('targetdestroyed', targetDestroyedHandler);
657+
await deleteCurrentRecording(devToolsPage);
640658
});
641659

642660
it('should record interactions with OOPIFs', async ({inspectedPage, devToolsPage}) => {
@@ -679,6 +697,7 @@ describe('Recorder', function() {
679697
frame => frame.url() === `${inspectedPage.getOopifResourcesPath()}/recorder/iframe2.html`,
680698
);
681699
assert.isOk(frame, 'Frame that the target page navigated to is not found');
700+
await deleteCurrentRecording(devToolsPage);
682701
});
683702

684703
it('should replay when clicked on slow replay', async ({inspectedPage, devToolsPage}) => {
@@ -717,6 +736,7 @@ describe('Recorder', function() {
717736
inspectedPage.page.url(),
718737
`${inspectedPage.getResourcesPath()}/recorder/recorder2.html`,
719738
);
739+
await deleteCurrentRecording(devToolsPage);
720740
});
721741
});
722742

@@ -743,6 +763,7 @@ describe('Recorder', function() {
743763
inspectedPage.page.url(),
744764
`${inspectedPage.getResourcesPath()}/recorder/recorder2.html`,
745765
);
766+
await deleteCurrentRecording(devToolsPage);
746767
});
747768

748769
it('should be able to navigate to a prerendered page', async ({inspectedPage, devToolsPage}) => {
@@ -777,5 +798,6 @@ describe('Recorder', function() {
777798
});
778799

779800
assert.isTrue(isPrerendered);
801+
await deleteCurrentRecording(devToolsPage);
780802
});
781803
});

0 commit comments

Comments
 (0)