Commit graph

2205 commits

Author SHA1 Message Date
Sidharth Vinod be30f9f1c4
feat(test-runner): Add GitHub Actions reporter (#9191) 2021-10-04 10:32:56 +02:00
Max Schmitt 771dd83c16
fix: installation with folders which contain spaces (#9275) 2021-10-04 10:25:15 +02:00
Pavel Feldman 913821f675
chore: roll Electron to 12.2.1 (#9271) 2021-10-01 19:40:47 -07:00
Dmitry Gozman edf07949be
test: use separate Playwright instance to automate inspector (#9270)
This will prevent inspector from picking up test actions.
2021-10-01 17:06:13 -07:00
Dmitry Gozman 080e372a4f
feat(inspector): use chrome/msedge when chromium is not available (#9269)
Drive-by: language-specific error message.
2021-10-01 17:06:00 -07:00
Yury Semikhatsky 1b4adfb916
fix(webkit): deduce response mime type from content-type (#9264) 2021-10-01 13:04:03 -07:00
Yury Semikhatsky 235eaca34a
fix(fetch): use data, form and multipart for different post data (#9248) 2021-10-01 12:11:33 -07:00
Dmitry Gozman f3648a66a3
chore: split ContextRecorder from inspector (#9250) 2021-10-01 12:07:35 -07:00
Nick Partridge b126a5685b
feat: add path option to toMatchSnapshot (#9156) 2021-10-01 09:15:44 -07:00
Sidharth Vinod 3296c21a80
feat(cli): Support trace file URLs (#9030) 2021-10-01 07:08:41 -07:00
github-actions[bot] 131e26c65e
feat(chromium): roll to r926934 (#9259)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-10-01 15:57:19 +02:00
Max Schmitt e674d873a3
feat(test-runner): add reuse context mode to share a single context between tests (#9115) 2021-10-01 09:16:03 +02:00
Dmitry Gozman 5e3ad63b42
fix(test runner): do not write missing snapshot until the last retry (#9246)
This prevents future retries from passing because of the actual
snapshot being written.

In theory, we can avoid running the retry since it should fail anyway.
However, this brings problems, for example in the `describe.serial` mode
where running a test also has some side effects and so it should not be
skipped. Since running a test without a snapshot is rare, it should be
fine to retry it.
2021-09-30 16:44:52 -07:00
Sidharth Vinod fcb7d2b15a
feat(reporters): Add error position to JSON Report (#9151) 2021-09-30 14:18:36 -07:00
Yury Semikhatsky 4e372dccb5
feat(fetch): import/export storageState (#9244) 2021-09-30 14:14:29 -07:00
Max Schmitt a1d0878fa1
fix: allow binary response interception (#9236) 2021-09-30 23:12:33 +02:00
Max Schmitt 7c89bc162a
fix: leaking route handlers when times is used in Page.route (#9234) 2021-09-30 12:37:05 +02:00
Max Schmitt cf12a1a97e
chore: upgrade commander.js to version 8 (#9230) 2021-09-30 12:24:24 +02:00
Yury Semikhatsky 2d428c8a4e
feat(fetch): store cookies between requests (#9221) 2021-09-29 17:15:32 -07:00
Dmitry Gozman 5633520f45
fix(selenium connect): register in gracefullyCloseAll for driver cleanup (#9218)
Otherwise, killing the driver does not cleanup sessions in the grid.
2021-09-29 14:54:24 -07:00
Pavel Feldman f78302e8dd
fix(toBeHidden): return true to missing elements (#9205) 2021-09-28 17:11:04 -07:00
Max Schmitt 55ddc553a5
chore: fix PlaywrightClient disconnection logic (#9149) 2021-09-29 01:54:10 +02:00
Dmitry Gozman 0a690778e4
fix(expect): beautiful expect stacks (#9204)
We now mark our wrapper as `__PWTRAP__[expect.toHaveText]` and
find it later in the stack trace.

Added trace/inspector tests to ensure this behavior in the future.
2021-09-28 16:02:34 -07:00
Yury Semikhatsky b93718daea
feat(fetch): support ignoreHTTPSErrors option (#9206) 2021-09-28 15:33:36 -07:00
Pavel Feldman 2b055b3092
feat(api): introduce locator.waitFor (#9200) 2021-09-28 13:57:11 -07:00
Yury Semikhatsky 64657c3b65
feat(fetch): send Playwright as default user-agent for global fetch (#9195) 2021-09-28 13:01:35 -07:00
Dmitry Gozman ed9b42a92d
feat(test runner): collect test error from worker teardown (#9190)
When the test fails (usually with timeout), we wait until all hooks are run
and worker scope is teared down before reporting test end result.

This allows us to collect any error details populated by teardown
in addition to the "timed out" message.
2021-09-28 10:56:50 -07:00
Dmitry Gozman 9a94ccaf0f
chore(test runner): remove DonePayload.failedTestId (#9186)
We now track failed tests on the dispatcher side.
This is a preparation for capturing more errors from
afterAll and worker teardown and attributing them to the last test.
2021-09-27 21:38:19 -07:00
Dmitry Gozman fa536786f2
fix(test runner): proper serial mode with beforeAll/afterAll failures (#9183) 2021-09-27 15:58:26 -07:00
Dmitry Gozman 8dc8777ab4
feat(expect): toContainText(array) (#9160)
This matches when each expected item from the array
is matched to one of the resolved elements, in order.
Note this performs both "sub-array" and "substring" matching.

Drive-by: documentation fixes.
Drive-by: added "selector resolved to 3 elements" log line
when expecting arrays.
2021-09-27 11:14:35 -07:00
Max Schmitt cd22072685
chore: enable object-curly-spacing in ESLint (#9168) 2021-09-27 18:58:08 +02:00
github-actions[bot] 03376ed44b
feat(chromium): roll to r925110 (#9175)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-09-27 18:26:09 +02:00
Pavel Feldman 241411ad42
chore: render expect in trace viewer (#9141) 2021-09-27 09:19:59 -07:00
Max Schmitt 4573ce0cf8
chore(test-runner): launch -> webServer (#9167) 2021-09-27 11:32:57 +02:00
Dmitry Gozman ee25fefb62
chore: remove FatalDOMError (#9119)
We can now throw stackless errors instead.
Also fixed stackless errors on Firefox.
2021-09-24 20:51:09 -07:00
Dmitry Gozman f4aaebfba0
fix(expect): produce "waiting for selector" log, corner cases (#9140) 2021-09-24 18:55:45 -07:00
Yury Semikhatsky 45b365d958
fix: increase recent logs buffer (#9143) 2021-09-24 17:28:06 -07:00
Pavel Feldman db6c55af51
chore: add a test for the log scale polling (#9136) 2021-09-24 12:54:33 -07:00
Pavel Feldman 1db41c330a
chore: migrate remaining expect to protocol (#9121) 2021-09-24 11:06:30 -07:00
Max Schmitt 4eede61f79
feat(chromium): roll to 924544 (#9131) 2021-09-24 18:13:12 +02:00
Pavel Feldman 0908dc98c8
chore: migrate expect(locator).toMatchText to protocol (#9117) 2021-09-23 16:46:46 -07:00
Joel Einbinder 40ae28e3bb
feat(test runner): add some fixture debugging (#8918) 2021-09-23 11:56:39 -04:00
Joel Einbinder 219d00d17b
chore(typescript): bump typescript to v4.4.3 (#9087) 2021-09-23 11:55:44 -04:00
Pavel Feldman e03db79682
fix(firefox): use global eval in injected script (#9101) 2021-09-22 21:49:14 -07:00
Dmitry Gozman 2afe76d86d
feat(launch): connect to process.env.SELENIUM_REMOTE_URL instead of local launch (#9056) 2021-09-22 21:13:32 -07:00
Pavel Feldman de4aa50d55
chore: simplify dom tasks (#9089) 2021-09-22 17:17:49 -07:00
Dmitry Gozman 568ec05a97
fix(junit): produce a single system-out entry (#9091)
Instead of multiple `system-out` entries we produce a single one
with concatenated content. This is compatible with various junit xml
parsers in the wild.
2021-09-22 15:28:57 -07:00
Dmitry Gozman f0d23b5d4d
fix(css selector): absolutize relative CSS selectors (#9088)
Selectors like `> div` are replaced by `:scope > div`,
which is useful for combining them with parent selectors.
This is a part of CSS Level 4 spec.
2021-09-22 14:13:00 -07:00
Yury Semikhatsky 79eb7744bc
feat(fetch): support options in playwright._newRequest (#9061) 2021-09-22 12:44:22 -07:00
Joel Einbinder c673ef5330
chore(registry): refactor logic of what browsers to download to top level (#9078) 2021-09-22 11:43:13 -07:00