Commit graph

2539 commits

Author SHA1 Message Date
Pavel Feldman 056d0cb5c1 docs: minor fix 2021-11-30 17:34:58 -08:00
Max Schmitt d08dfdf532
docs(python): add assertion examples (#10532) 2021-11-30 20:04:44 +01:00
Max Schmitt 3337920c76
docs: clarify webServer ipv4/ipv6 and baseURL protocol (#10610) 2021-11-30 20:01:28 +01:00
Max Schmitt 24400a3d48
docs(intro-java): bump Java to 1.17.1 (#10609) 2021-11-30 16:15:50 +01:00
Pavlo Zhukov 71adefc814
docs(selectors): add missing closing backquote (#10601) 2021-11-30 13:01:25 +01:00
Max Schmitt 293c233a49
docs(test-runner): add webServer (#10531) 2021-11-29 18:01:14 +01:00
Max Schmitt af28a779be
docs: migrate JS assertions over to Java/Python assertions (#10431) 2021-11-24 21:58:35 +01:00
Max Schmitt af4a1c2d26
docs(python): add request API examples (#10512) 2021-11-24 21:55:03 +01:00
Max Schmitt 8fa0a87f1f
docs: reference to hosted trace viewer (#10515) 2021-11-24 21:50:41 +01:00
Max Schmitt 685892dd62
docs(intro-js): reference to create-playwright (#10516) 2021-11-24 21:09:33 +01:00
Dmitry Gozman fc9747b1df
docs: fix markup in test-timeouts (#10502) 2021-11-23 14:44:03 -08:00
Ross Wollman 854f321532
feat(api): add explicit async testInfo.attach (#10121)
feat(api): add explicit async testInfo.attach

We add an explicit async API for attaching file paths (and Buffers) to
tests that can be awaited to help users ensure they are attaching files
that actually exist at both the time of the invocation and later when
reporters (like the HTML Reporter) run and package up test artifacts.

This is intended to help surface attachment issues as soon as possible
so you aren't silently left with a missing attachment
minutes/days/months later when you go to debug a suddenly breaking test
expecting an attachment to be there.

NB: The current implemntation incurs an extra file copy compared to
manipulating the raw attachments array. If users encounter performance
issues because of this, we can consider an option parameter that uses
rename under the hood instead of copy. However, that would need to be
used with care if the file were to be accessed later in the test.
2021-11-23 09:30:53 -08:00
Alister Scott 80235c47a5
docs(test-parameterize): fixed typo (#10392) 2021-11-22 20:38:48 +01:00
Joel Einbinder d70e37de80
feat: locator.dragTo (#10287) 2021-11-22 20:27:26 +01:00
Dmitry Gozman e647f0420c
docs: add more references to TestInfo.retry (#10472) 2021-11-22 10:06:20 -08:00
Max Schmitt eaee864b2c
docs: python assertion type fixes (#10465) 2021-11-22 18:39:10 +01:00
Dmitry Gozman fde2f6a77f
docs: separate doc for test timeouts (#10448) 2021-11-19 17:06:46 -08:00
Yury Semikhatsky 9fed8a9344
docs(api): redo request API for java (#10449) 2021-11-19 16:40:35 -08:00
Dmitry Gozman 4eaeb3b59c
docs: explain that beforeAll/afterAll run again in the new worker process (#10446) 2021-11-19 13:47:30 -08:00
Dmitry Gozman 0302e759df
feat(test runner): allow top-level test.fixme similar to test.skip (#10250)
```js
test.fixme('my test name', () => {});
```
2021-11-19 11:40:40 -08:00
Dmitry Gozman 19f739dec8
docs: update fixtures doc (#10426)
- Introduction
  - Built-in fixtures
  - Without fixtures
  - With fixtures
- Creating a fixture
- Using a fixture
- Overriding fixtures
- Worker-scoped fixtures
- Automatic fixtures
- Fixtures-options
2021-11-18 21:35:21 -08:00
Dmitry Gozman d9f849fb14
feat(test runner): replace declare/define with "options" (#10293)
1. Fixtures defined in test.extend() can now have `{ option: true }` configuration that makes them overridable in the config. Options support all other properties of fixtures - value/function, scope, auto.
```
const test = base.extend<MyOptions>({
  foo: ['default', { option: true }],
});
```

2. test.declare() and project.define are removed.

3. project.use applies overrides to default option values and nothing else. Any test.extend() and test.use() calls take priority over config options.

Required user changes: if someone used to define fixture options with test.extend(), overriding them in config will stop working. The solution is to add `{ option: true }`.

```
// Old code
export const test = base.extend<{ myOption: number, myFixture: number }>({
  myOption: 123,
  myFixture: ({ myOption }, use) => use(2 * myOption),
});

// New code
export const test = base.extend<{ myOption: number, myFixture: number }>({
  myOption: [123, { option: true }],
  myFixture: ({ myOption }, use) => use(2 * myOption),
});
```
2021-11-18 15:45:52 -08:00
Nav-2d 82edd1f4b2
docs/test-configuration: Update code snippet (#10355) 2021-11-18 15:38:18 -08:00
Andrey Lushnikov 5eba6d538f
docs: land 1.17 release notes (#10425) 2021-11-18 15:08:49 -08:00
Max Schmitt 0781d0303b
docs(python): enable web-first assertions (#10390) 2021-11-18 00:46:30 +01:00
Dmitry Gozman 6e2bc890a6
docs: add links from annotations to respective methods (#10379) 2021-11-17 11:03:30 -08:00
Yury Semikhatsky 565ac910e7
docs(api): expose request API in java (#10331) 2021-11-15 14:54:07 -08:00
Yury Semikhatsky c5cb73003f
docs: OR for css and xpath selectors (#10285) 2021-11-15 13:54:12 -08:00
browse 5d4ec1d512
docs(python): fix incorrect snippet syntax (#10314) 2021-11-15 11:20:46 +01:00
Yevhen Laichenkov 724dc2ff2f
docs(test-parameterize): fix snippet typo (#10280) 2021-11-12 07:00:41 -08:00
Nav-2d 58b4052378
docs/test-config: add github, html reporter (#10234) 2021-11-12 06:50:56 -08:00
Max Schmitt d97fe4e2af
docs(test-parameterize): fixed snippet typo (#10276) 2021-11-12 05:50:45 -08:00
Max Schmitt 24cfcf867e
chore: create-playwright config nits & test-runner intro docs (#10253) 2021-11-11 22:45:07 +01:00
Dmitry Gozman 9622704a8a
fix(test runner): update TestInfo.duration before running afterEach hooks (#10228) 2021-11-10 16:02:27 -08:00
Pavel Feldman 1e38ec5fa4
docs(element-handle): discourage the element handle use (#10220) 2021-11-10 11:30:25 -08:00
Pavel Feldman 4e90eb9406
api(frame-locator): allow nth, first, last (#10195) 2021-11-09 14:14:20 -08:00
Yury Semikhatsky c30447216d
docs(fetch): typo in comment (#10160) 2021-11-09 14:00:58 -08:00
Dmitry Gozman 7bb38d2ac8
docs: use desktop devices in sample configs (#10197) 2021-11-09 13:19:21 -08:00
Yury Semikhatsky 031ceb3553
docs(java): assertion examples (#10194) 2021-11-09 12:44:02 -08:00
Pavel Feldman 1bf7f6d90d
docs: expand core-concepts and multi-age (#10161) 2021-11-09 07:42:04 -08:00
Max Schmitt 1a7fb912e4
docs(python): enable request API (#10179) 2021-11-09 14:04:34 +01:00
Dmitry Gozman 5c9dcffd67
docs(intro): rework js intro (#10157)
- Educate on the config file right away.
- Switch from `--browser` to `--project`.
- Update configuration sections.
2021-11-08 17:50:48 -08:00
Pavel Feldman 7b64161a37
feat(test-runner): allow specifying fine-grained trace options (#10147) 2021-11-08 15:39:58 -08:00
Dmitry Gozman 0a104bc500
docs: clarify that slow tests are about files (#10134) 2021-11-08 12:54:18 -08:00
Yury Semikhatsky ac25a67140
docs(java): assertion docs fixes (#10144) 2021-11-08 11:31:11 -08:00
Dmitry Gozman 9a7b4b745b
docs: Suite.project is a method, not a property (#10135) 2021-11-08 10:08:46 -08:00
Pavel Feldman 4553d76fce
api(frame-locator): introduce frame locators (#10102) 2021-11-08 09:58:24 -08:00
Yury Semikhatsky 4c53824235
docs: committed navigation (#10023) 2021-11-03 15:26:25 -07:00
Yury Semikhatsky bce9a8187d
fix(fetch): post data for delete request (#10019) 2021-11-03 13:26:15 -07:00
Max Schmitt bde5c2590e docs: fix minor release note typos 2021-11-03 20:51:47 +01:00
Dmitry Gozman 9cebe60831
feat(reporters): augment non-stdio reporters with dot/line (#10003) 2021-11-03 08:25:16 -07:00
Yury Semikhatsky 64a2be0e43
docs(java): message loop, Thread.sleep vs waitForTimeot (#9978) 2021-11-02 10:17:35 -07:00
Max Schmitt bedb817a00
docs(test-runner): worker fixtures only in before/after-All (#9967) 2021-11-02 16:51:41 +01:00
Max Schmitt b8b4f904b2
docs(auth): fix session storage restore snippets (#9970) 2021-11-02 16:51:22 +01:00
Nick Partridge a51ac39275
feat: add snapshotDir to set base snapshot directory (#9260) 2021-11-02 08:02:49 -07:00
Pavel Feldman 56ca3a18f5
feat(trace-viewer): show test name (#9957) 2021-11-01 21:23:35 -07:00
Pavel Feldman 85497c5509
feat(tracing): allow including source files in traces (#9946) 2021-11-01 19:57:29 -07:00
Yury Semikhatsky 13cc266b37
feat: add "commit" to possible waitUntil options (#9892) 2021-11-01 17:12:19 -07:00
Dmitry Gozman 4f1027bdd0
feat(test runner): introduce TestInfo.parallelIndex (#9762)
This is a worker number between `0` and `workers - 1` that
does not change after worker process restart.
2021-11-01 10:37:34 -07:00
Darío Kondratiuk 498894280b
docs(page): Document Page.reload (#9926) 2021-11-01 18:27:03 +01:00
Pavel Feldman d6adff7792
fix(html): include html into the reporter types (#9907) 2021-10-31 11:06:28 -07:00
Pavel Feldman 8991bbde33
feat(html): live filtering, opt-out from auto-open (#9889) 2021-10-29 16:24:08 -07:00
Dmitry Gozman 49337890d2
docs: improve documentation for assertions and test config (#9890) 2021-10-29 15:25:52 -07:00
Yury Semikhatsky 34e55007d0
docs: clarify how to import assertions (#9868) 2021-10-29 08:33:07 -07:00
Yury Semikhatsky 759e1b6bda
docs: fix list formatting (#9857) 2021-10-28 11:06:41 -07:00
Kenneth Lum a72930a7bb
docs: add the general rule to expect the opposite of the matchers (#9772) 2021-10-28 08:35:35 -07:00
Max Schmitt 885cd67f3d
docs(python): move browser_context_args fixture back to session scope (#9711) 2021-10-28 11:53:23 +02:00
Dmitry Gozman fac5da9517
docs: update console event snippet (#9800)
This avoids the confusion where arguments are printed
asynchronously, interleaved with other console messages.
2021-10-26 14:40:28 -07:00
Dmitry Gozman 676e72c8e0
docs(proxy): note that browser-wide proxy is only required for Cr+Win (#9767) 2021-10-25 16:32:09 -07:00
Yury Semikhatsky ada7f4be23
docs(api): add assertThat aliases for java (#9761) 2021-10-25 12:03:24 -07:00
Yury Semikhatsky 9eadbf9b81
docs(api): add locator assertions for java (#9723) 2021-10-22 16:56:58 -07:00
Dmitry Gozman 23aa0be15b
docs: update afterEach docs with an example (#9727)
Also add a test for TestInfo.status in afterEach.
2021-10-22 16:32:22 -07:00
Yury Semikhatsky e7b4c181c7
docs(api): add assertions API for java (#9660) 2021-10-21 17:44:17 -07:00
Yury Semikhatsky 2ad2f53482
docs(fetch): merge UI test examples into API testing guide (#9684) 2021-10-21 11:44:06 -07:00
Max Schmitt dd5364e445
feat(create-playwright): add option to add examples (#8963) 2021-10-21 20:21:50 +02:00
Andrey Lushnikov df188d5876
docs: release notes for other ports (#9681) 2021-10-21 11:13:19 -07:00
Andrey Lushnikov 0a7e1c90eb
chore: add release notes for 1.16 (#9680) 2021-10-21 10:39:41 -07:00
Andrey Lushnikov 7626e881ac
docs: move api testing to test sidebar (#9670) 2021-10-20 18:38:01 -07:00
Yury Semikhatsky ddb70a6d35
docs(expect): default timeout (#9658) 2021-10-20 12:06:02 -07:00
Dmitry Gozman fb421e0a65
feat(github reporter): update docs, strip ansi escapes (#9640) 2021-10-20 07:56:03 -07:00
Yury Semikhatsky 2a2a3d2ed9
docs(expect): group locator methods, remove extra > (#9625) 2021-10-19 13:54:26 -07:00
Yury Semikhatsky 7e52357178
docs(fetch): ApiResponse -> APIResponse (#9623) 2021-10-19 11:17:23 -07:00
Dmitry Gozman 6d554a5e30
feat(reporter): expose more apis (#9603) 2021-10-19 08:38:04 -07:00
Yury Semikhatsky 6d727401bf
chore(fetch): rename ApiRequest* to APIRequest* (#9606) 2021-10-19 07:38:27 -07:00
Pavel Feldman e37660b068
feat(api): expose step location (#9602) 2021-10-18 21:06:18 -07:00
Yury Semikhatsky 79955fc4a8
docs: add response interception to network guide (#9598) 2021-10-18 17:53:06 -07:00
Yury Semikhatsky 42b535246f
docs(fetch): add api requests section under playwright test (#9595) 2021-10-18 15:44:47 -07:00
Yury Semikhatsky 990e80a23b
docs(fetch): add login via ApiRequestContext example (#9593) 2021-10-18 15:03:45 -07:00
Yury Semikhatsky 909b039b9a
docs: note that setViewportSize changes screen size (#9588) 2021-10-18 13:01:04 -07:00
Dmitry Gozman 7a4e799968
docs: add Selenium Grid integration (#9582) 2021-10-18 11:24:30 -07:00
Dmitry Gozman 4364c5f248
docs: update API testing doc (#9561) 2021-10-18 06:31:38 -07:00
Paul Biggar e473fc6a10
docs(test-runner): afterEach JSDoc description typo (#9542) 2021-10-16 12:36:07 +02:00
Feng Yu 0160c18f7a
docs: fix typo retried (#9562) 2021-10-15 19:24:03 -07:00
Pavel Feldman 99f3389b3b
feat(html): automatically use console reporter with html (#9559) 2021-10-15 19:18:56 -07:00
Yury Semikhatsky 235cd10a43
fix(runner): clarify where test.use() can be called (#9486) 2021-10-15 12:03:26 -07:00
Pavel Feldman 458945821f
doc(html): document html reporter (#9528) 2021-10-15 08:15:30 -07:00
Yury Semikhatsky 4680ef46de
docs: clarify default retry behavior (#9525) 2021-10-14 19:28:47 -07:00
Yury Semikhatsky 478fb34e35
docs: fix api-testing section id (#9514) 2021-10-14 11:20:15 -07:00
Dmitry Gozman bb013d14c0
docs: minor changes in apirequest (#9507) 2021-10-14 09:48:53 -07:00
Michael Rienstra bcae69e653
docs: minor change for readability (#9400) 2021-10-12 08:19:21 -07:00
knaitas cfe75fc755
docs(selector): change Python textContent to text_content (#9440)
Co-authored-by: Tadas Gedgaudas <tadas.gedgaudas@oxylabs.io>
2021-10-12 10:16:29 +02:00
Dmitry Anshilevich 8ae926efbf
docs(dotnet): fix .NET code example (#9415)
Co-authored-by: Max Schmitt <max@schmitt.mx>
2021-10-11 23:29:48 +02:00
Jason Hu 89e98d85fc
docs(protractor): add more protractor selectors (#9334)
Also fix `by.cssContainingText`, the text should not double quoted
2021-10-11 10:20:51 -07:00
Yury Semikhatsky 6c18f1a6f0
feat(fetch): accept numeric and bool params (#9345) 2021-10-08 09:23:59 -07:00
Mark Skelton 52f19a222e
docs: update showcase.md (add lariat library)
1. Removes expect-playwright and jest-playwright from the list.  These projects both officially recommend using the built-in Playwright test runner so it probably doesn't make sense to keep them in the showcase.
1. Adds Lariat to the list.  Lariat is a library I've developed at my company to simplify page object construction with support for nesting, nth based matching, portals, and more.
1. Add karma-playwright-launcher info
2021-10-08 18:01:54 +02:00
Yury Semikhatsky ddf17e62f6
docs: reference only focal base image in docs (#9399) 2021-10-08 08:54:55 -07:00
Yury Semikhatsky e3256ee5d5
docs(fetch): add API testing guide with example (#9385) 2021-10-07 19:38:13 -07:00
Yury Semikhatsky 51490a82e1
feat(fetch): add helper methods for put, patch, head, delete (#9374) 2021-10-07 12:42:26 -07:00
Darío Kondratiuk ddbd64e4df
docs(dotnet): Improve some dotnet docs (#9265)
Co-authored-by: Max Schmitt <max@schmitt.mx>
2021-10-06 21:07:31 +02:00
Pavel Feldman bc71d20d0f
feat(request): add global request fixture (#9332) 2021-10-06 10:09:27 -07:00
Yury Semikhatsky ab879fecd6
fix(api): make storageState option type same as context.storageState (#9333) 2021-10-06 09:02:41 -07:00
Max Schmitt 480e5a69e8
docs(browsers): fix missing JS snippets (#9339) 2021-10-06 17:43:31 +02:00
Pavel Feldman e8fdbbfa03
api: alias Fetch as ApiRequest (#9330) 2021-10-05 18:53:19 -07:00
Yury Semikhatsky 0469a7552b
fix(fetch): do not allow to call get/post with request (#9326) 2021-10-05 16:36:15 -07:00
Yury Semikhatsky 701a97beca
chore(fetch): unprefix _request and _newRequest (#9325) 2021-10-05 13:56:34 -07:00
Max Schmitt 97b6a344ac
docs: add docs page for how to parameterize your tests (#9291)
Co-authored-by: Pavel Feldman <pavel.feldman@gmail.com>
Co-authored-by: Joel Einbinder <joel.einbinder@gmail.com>
2021-10-05 20:22:16 +02:00
Max Schmitt e859a6996a
docs: fix wrongly annotated JS only paragraph (#9290) 2021-10-04 15:46:52 +02:00
Max Schmitt a280a17157
docs: add tabs for shell scripts (#9289) 2021-10-04 15:45:52 +02:00
Anish Karandikar 92c1aa20a7
docs(reporters): clarify dot reporter is default on CI (#9074) 2021-10-04 14:50:55 +02:00
Sidharth Vinod be30f9f1c4
feat(test-runner): Add GitHub Actions reporter (#9191) 2021-10-04 10:32:56 +02:00
Yury Semikhatsky 235eaca34a
fix(fetch): use data, form and multipart for different post data (#9248) 2021-10-01 12:11:33 -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
Sidharth Vinod 2cf3448b6b
fix(docs): test-runner location column type (#9222) 2021-10-01 08:53:59 +02:00
Yury Semikhatsky 4e372dccb5
feat(fetch): import/export storageState (#9244) 2021-09-30 14:14:29 -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
Pavel Feldman 37ff9db7a0
chore: remove browserType.connect from .net - not yet ready (#9182) 2021-09-27 14:45:42 -07:00
Szymon Marczak 44c3b0270e
docs: mention empty string in userDataDir (#9069) 2021-09-27 12:50:35 -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
Kumar Aditya 3394bec364
docs(python): add docs about threading (#8829)
Co-authored-by: Max Schmitt <max@schmitt.mx>
2021-09-27 12:22:16 +02:00
Dmitry Gozman 0801a8c486
docs: cleanup test.describe.parallel.only doc (#9159) 2021-09-26 21:30:11 -07:00
Anže Vodovnik 6723a42544
docs(dotnet): add Null for dotnet in forced colors enum (#9051) 2021-09-24 16:31:53 +02:00
Max Schmitt 89aace688f
fix: make Serializable type any (#9059) 2021-09-23 11:06:34 -07:00
Yury Semikhatsky 79eb7744bc
feat(fetch): support options in playwright._newRequest (#9061) 2021-09-22 12:44:22 -07:00
Yury Semikhatsky 3c51f7d992
docs: improve ignorehttpserrors description (#9081) 2021-09-22 11:03:39 -07:00
Pavel Feldman d4073e8214 docs: assorted doc fixes 2021-09-21 15:10:22 -07:00
Pavel Feldman 4af576d0c7
docs: extract codegen docs (#9057) 2021-09-21 13:46:11 -07:00
Pavel Feldman d1a2803a57
docs: improve the auth state docs (#9052) 2021-09-21 13:20:50 -07:00
Max Schmitt 04858b3959 docs: release-notes adjust header indention 2021-09-21 22:16:43 +02:00
Max Schmitt 854cf9c25c
docs: add 1.15 release-notes (#9046)
Co-authored-by: Pavel Feldman <pavel.feldman@gmail.com>
2021-09-21 22:04:53 +02:00
Dmitry Gozman cb7285a8c0
docs(test): separate TestOptions from Fixtures (#9000) 2021-09-17 17:13:47 -07:00
Nav-2d e7a7a0cfc1
docs(test-configuration): Add actionTimeout to configuration (#8994) 2021-09-17 15:11:48 -07:00
Max Schmitt b5f6952f23
docs(core-concepts): mention newPage in browser context section (#8984) 2021-09-17 13:33:55 +02:00
Max Schmitt 6eee71a09b
docs: add GHA config for the deployment API (#8983) 2021-09-17 11:22:14 +02:00
Timm Krause 4cdc6f20c3
docs: fix "brower" typo in multi-pages doc 2021-09-17 10:36:51 +02:00
Yury Semikhatsky d3c71cc207
docs: clarify waitForURL(string) behavior (#8952) 2021-09-17 10:34:49 +02:00
Yury Semikhatsky 806a71a4f0
feat(fetch): support form data and json encodings (#8975) 2021-09-16 17:48:43 -07:00
Dmitry Gozman 545d793956
docs: an overview of reporter methods (#8948) 2021-09-15 15:29:06 -07:00
Yury Semikhatsky 2380b07f30
feat(fetch): introduce FetchRequest.dispose, fulfill with global fetch (#8945) 2021-09-15 14:02:55 -07:00
Max Schmitt 131239569d
feat(test-runner): add --debug CLI flag (#8938) 2021-09-15 21:19:31 +02:00
Nav-2d 476a3c59a3
docs(test-reporters): fix allure result path (#8930) 2021-09-14 20:56:28 -07:00
Max Schmitt e641bf2bed chore: hide Route.fulfill.response from != JS 2021-09-14 23:31:46 +02:00
Yury Semikhatsky 5141407c6b
fix(fetch): prefix request with underscore (#8922) 2021-09-14 12:56:09 -07:00
Joel Einbinder afae5bef5d
feat(mouse): page.mouse.wheel (#8690) 2021-09-14 15:22:52 -04:00
browse 95e1cfa0c1
docs(python): fix incorrect syntax in CDP snippet (#8909) 2021-09-14 11:18:28 +02:00
Nav-2d 9814dfb6c1
docs(test-typescript): fix grammatical mistake (#8907) 2021-09-13 21:10:31 -07:00
Dmitry Gozman 6722d95a7a
docs: fix markdown parser swallowing lines after code snippets (#8904) 2021-09-13 18:48:16 -07:00
Dmitry Gozman d9d2d809a2
fix(test): make use in config accept option values only (#8828)
Also include default options in FullConfig/FullProject.
Also make examples compile and add a test.
2021-09-13 17:50:31 -07:00
Yury Semikhatsky b79be5d98d
feat(fetch): introduce failOnStatusCode (#8896) 2021-09-13 15:38:27 -07:00
Yury Semikhatsky f8c0f0d637
feat(fetch): support query params (#8893) 2021-09-13 14:29:44 -07:00
Paulo Gonçalves 3e5645ecea
docs(showcase): example of parallel testing on AWS (#8870) 2021-09-13 13:52:57 -07:00
Pavel Feldman 64f9c3ba1d
feat(api): move fetch api into the namespace (#8871) 2021-09-13 12:43:07 -07:00
Andrey Lushnikov 67410ab70f
docs: fix protractor migration guide lists (#8875) 2021-09-13 12:06:47 +02:00
Pavel Feldman 798d0bfa9b
chore: fix headers api again (#8854) 2021-09-11 13:27:00 -07:00
Feng Yu 737b155869
docs(library-js.md): fix broken [managing browsers] link (#8856) 2021-09-11 07:32:50 -07:00
Yury Semikhatsky b6180055df
feat(fetch): make fetch api public (#8853) 2021-09-10 18:36:55 -07:00
Max Schmitt 33cd0d21da docs: rename protractor-js id to protractor 2021-09-10 19:40:36 +02:00
Max Schmitt a5fa190748
docs: no Response.finished() return value (#8819) 2021-09-10 08:02:34 -07:00
Max Schmitt 7f9d390cee docs(protractor): fixed invalid link reference 2021-09-10 13:17:20 +02:00
Andrey Lushnikov c0e4602e70
docs: add "migration from Protractor" guide (#8807) 2021-09-09 09:34:54 -07:00
arukiidou 784f030c15
docs: allure-playwright is not experimental now. (#8811) 2021-09-09 09:23:31 -07:00
Yury Semikhatsky e5a92c3e81
docs: less fancy header array type (#8808) 2021-09-09 09:00:11 -07:00
Anže Vodovnik c6bb0bb44e
docs(dotnet): fix incorrect syntax (#8801) 2021-09-09 11:39:26 +02:00
Pavel Feldman 6e97ac300c
Revert "docs: add waitForSelectorHidden (#8632)" (#8781) 2021-09-08 14:26:52 -07:00
Dmitry Gozman 27f4ef566e
docs: test parallel/failures docs (#8706) 2021-09-08 07:44:26 -07:00
Max Schmitt 25b5927a4d
docs: sizes enhancements (#8771) 2021-09-08 14:09:11 +02:00
Max Schmitt 25c8fc4229
docs: add waitForSelectorHidden (#8632) 2021-09-08 10:53:47 +02:00
Joel Einbinder e914f6bbc7
feat(network): remove Headers class and add headersArray method (#8749) 2021-09-07 10:27:53 -07:00
Max Schmitt 4f4bc72828
chore: add more tests for Request.sizes() (#8686) 2021-09-07 19:19:12 +02:00
David Rousset 9626b111bc
docs(test-runner): fix code snippets by using Playwright Test in import instead of Playwright (#8729)
Co-authored-by: Max Schmitt <max@schmitt.mx>
2021-09-07 11:07:05 +02:00
Max Schmitt e7d4d61442
feat: add forced-colors media query emulation (#6903) 2021-09-03 21:48:06 +02:00
Yusuke Iwaki d9bcb0b170
fix(types): remove strict param from Locator.setChecked (#8676) 2021-09-03 08:37:19 -07:00
Pavel Feldman 0d5b41ce7b
feat(headers): add Headers.headers that would mimic the behavior of the deprecated getters (#8665) 2021-09-02 20:48:23 -07:00
Dmitry Gozman 620712a5d9
feat(expect): support array of RegExp objects in toHaveText/toHaveClass (#8667) 2021-09-02 15:48:04 -07:00
Dmitry Gozman e691b649de
feat(test runner): describe.parallel (#8662) 2021-09-02 15:42:07 -07:00
Pavel Feldman 94170dacbd
chore: rename rawHeaders to allHeaders (#8659) 2021-09-02 11:46:52 -07:00
Pavel Feldman 54bda2c8dd
fix(size): fix some of the request.size() problems (#8645) 2021-09-02 10:39:57 -07:00
Max Schmitt 63e9287b36
docs(multi-pages): add a note about popups (#8656) 2021-09-02 17:21:33 +02:00
Max Schmitt b755705bf1
fix(types): remove ElementHandle.setChecked strict parameter (#8653) 2021-09-02 16:58:56 +02:00
Anže Vodovnik 119fcdf8be
fix: alias reserved dotnet keyword (#8589) 2021-09-02 12:06:31 +02:00
ragog 87cba249a2
docs(showcases): add Checkly to community showcase (#8647) 2021-09-02 11:41:15 +02:00
Pavel Feldman 42e44f888b
feat(rawheaders): introduce initial plumbing (#8638) 2021-09-01 18:28:20 -07:00
Dmitry Gozman b1260602ac
docs: update global setup docs (#8637)
Changing example to "authenticate once", and also updating the auth doc.
Adding a test with the same setup.
2021-09-01 15:35:46 -07:00
mrazauskas 6f96a243f2
docs: fix a typo in configuration docs (#8619) 2021-09-01 09:24:28 -07:00
Michael Rienstra 348277d09c
docs: expand "Strictness" examples (#8520) 2021-08-31 17:54:39 -07:00
Dmitry Gozman b8f8ca7493
feat(tracing): tracing.{start,stop}Chunk instead of tracing._export (#8521) 2021-08-31 17:03:31 -07:00
Max Schmitt 59d4e6d553
fix(types): change Request.sizes types to ints (#8555) 2021-08-30 19:02:06 +02:00
Pavel Feldman e574f4b7fd
feat(api): introduce setChecked convenience method (#8525) 2021-08-29 20:00:40 -07:00
Ross Wollman d3a8c38b7e
docs(reporters): fix TS example (#8531)
Co-authored-by: Max Schmitt <max@schmitt.mx>
2021-08-28 22:53:27 +02:00
Dmitry Gozman bb5e44fbc4
docs: introduce overloads, generate JSDoc for overloads (#8485)
- Each overload, e.g. for `page.evaluate`, shows a nice autocomplete doc,
  not only the first one.
- We can have multiple overloads directly on the docs page, e.g.
  `test.skip(title, fn)` and `test.skip(condition, description)`.
  These overloads are internally named `Test.skip#1` and all aliased
  to `test.skip`.
2021-08-27 21:57:40 -07:00
Max Schmitt f3dde0650f
feat(network): expose bodySize, transferSize, and headerSize (#8234) 2021-08-27 22:53:57 +02:00
Max Schmitt 998f2ab959
chore: hide Route.fulfill._response from API (#8483) 2021-08-27 00:44:20 +02:00
Sourav Kundu 8ebd7851c2
Added links to BrowserStack docs and GitHub repo (#8432) 2021-08-26 12:37:26 -07:00
Ross Wollman 222151f2e1
docs: connect example with non-deprecated API (#8463)
See [deprecation notice][notice].

[notice]: c627927bf5/types/types.d.ts (L8205)
2021-08-26 11:49:47 +02:00
Joel Einbinder 943c22c9c4
fix(protocol): remove unnused strict in QSA and add it to waitForSelector docs (#8140)
Strict doesn't make sense in querySelectorAll, but it was in the protocol.

And we had a strict option in ElementHandle.waitForSelector but it
was not surfaced in the docs/api.
2021-08-25 10:10:40 -04:00
Pavel Feldman cccc2ac4bc chore: fix docs 2021-08-24 19:49:02 -07:00
Max Schmitt 8e20f13079
feat(routes): add support for the times option (#8399) 2021-08-24 20:45:50 +02:00
Yury Semikhatsky 59422a00f5
feat(route): rename method, add response option (#8386) 2021-08-24 11:07:54 -07:00
Kumar Aditya 20e4d9eee5
docs(python): mention loop compatibility (#8403) 2021-08-24 17:04:25 +02:00
Max Schmitt a48dd8b84b
docs(test-runner): add frontmatter to custom TS page (#8398) 2021-08-24 15:57:45 +02:00
Max Schmitt d52250f2c5
docs: add note about Service Workers and route (#8401) 2021-08-24 15:57:35 +02:00
Pavel Feldman ef35bfa0da
docs: update cli & pom docs (#8380) 2021-08-23 20:10:12 -07:00
Joel Einbinder 6685f0dd76
fix(types): add electron.launch.timeout (#8384) 2021-08-23 20:09:47 -07:00
Aldo Velasco c355d4d05a
docs(test-parallel-js): fixes typo in retries (#8387) 2021-08-23 20:08:02 -07:00
Anish Karandikar 4dac4772ca
docs(intro): Fix writing assertions snippet (#8372)
Fixes #8333
2021-08-23 22:50:56 +02:00
Joel Einbinder c8f3c65d22
doc(test-runner): add example of compiling tests with typescript (#8046) 2021-08-23 16:40:03 -04:00
Pavel Feldman fa89b9a554 docs: spelling 2021-08-23 13:34:38 -07:00
Dmitry Gozman 827a909d36
docs: deprecate timeout option in isVisible/isHidden methods (#8371) 2021-08-23 12:32:06 -07:00
Dmitry Gozman 026426227d
docs: update "recording a trace" section (#8368) 2021-08-23 09:21:53 -07:00
nileshfriendbuy d3a703478b
docs(python): include pip upgrade command in intro (#8356) 2021-08-23 14:37:00 +02:00
Max Schmitt 953f19538a
docs(errors): add example for catching Timeout errors (#8362) 2021-08-23 13:57:38 +02:00
Ross Wollman 25a4c7b3df
feat(launchServer): accept wsPath option (#8353) 2021-08-22 09:04:47 -07:00
Yury Semikhatsky 434d07e711
docs: clarify download lifetime when downloadsPath is specified (#8227) 2021-08-19 13:34:17 -07:00
Yury Semikhatsky 851fe8d0bd
docs: use language-neutral references to page.goto (#8320) 2021-08-19 12:23:35 -07:00
Max Schmitt cd41c34299
docs(python): add missing register selector docs (#8309) 2021-08-19 21:01:40 +02:00
Yury Semikhatsky 3aae170b03
docs: fix java code snippets (#8319) 2021-08-19 11:24:38 -07:00
Pavel Feldman 6ef76e333e
feat(strict): add context-level selector strictness (#8290) 2021-08-18 12:51:45 -07:00
Pavel Feldman 710cec80a0
feat(test-runner): render step titles (#8270) 2021-08-17 16:41:36 -07:00
Dmitry Gozman 52d63aa376
docs: add sections for describe.serial and reusing the page (#8242) 2021-08-17 14:53:51 -07:00
Pavel Feldman 97ba4f22f3
feat(test-runner): report nested steps (#8266) 2021-08-17 13:57:26 -07:00
Pavel Feldman 91e9483f8e
docs: clarify locators strictness (#8243) 2021-08-16 18:13:42 -07:00
Pavel Feldman 954de62502 docs: fix locators visibility confusion 2021-08-16 17:41:27 -07:00
Pavel Feldman 3f4a791cb7 chore: fix the first test example 2021-08-16 16:58:48 -07:00
Pavel Feldman 99c9564810 chore: dotnet connect + generator (2) 2021-08-16 12:56:29 -07:00
Pavel Feldman 7b861dcee6 chore: dotnet connect + generator 2021-08-16 12:49:25 -07:00
Ross Wollman 101662765c
api(cdp): newCDPSession accepts frames, too (#8157)
Without this, Playwright's CDP feature leaves unreachable
targets (namely OOPIFs).

This change allows for more advanced experimentation in user-land
without relying on out-of-band CDP connections and clients.

Now you can, for example, call `DOM.getDocument` on the
page OR main frame, observe there is an iframe node with
no `contentDocument` (i.e. OOPIF), make note of the referenced
`frameId`, and then iterate of page.frames() calling `Target.getInfo`
on each to link the Playwright Frame with the CDP `frameId` and
then recurse.

Relates #8113
2021-08-16 12:49:10 -07:00
Kaan Gökdemir 2bf01c63ba
docs(js): fix syntax errors at intro page examples (#8215) 2021-08-16 11:05:07 +02:00
Andrey Lushnikov 8231aa3919
docs: make release notes links relative (#8191) 2021-08-13 15:39:05 -07:00
Pavel Feldman b15762aab6
docs: release notes for 1.14 (#8190)
Co-authored-by: Andrey Lushnikov <aslushnikov@gmail.com>
2021-08-13 15:02:24 -07:00
Max Schmitt f4337ffc1d
docs(python): update Pytest docs with supported CLI args (#8078) 2021-08-13 19:24:09 +02:00
Andrey Lushnikov 8dbec497a8
docs: fix random typos (#8179) 2021-08-13 08:59:38 -07:00
Pavel Feldman d2d71c4cdb
fix(reporter): group fixture initialization under before hooks (#8072) 2021-08-12 07:58:00 -07:00
Anže Vodovnik b88c4ee49c
fix(docs): missing reference type (#8031)
This was causing the .NET API to have invalid XML comments.
2021-08-12 01:54:51 -07:00
Yury Semikhatsky 1f168bd9c7
docs: fix java auth example (#8155)
Fixes #8153
2021-08-12 01:49:56 -07:00
Pavel Feldman 1d4e2fe98c
feat(nth): make nth and visible selectors public (#8142) 2021-08-11 11:06:09 -07:00
Dmitry Gozman a5e0965087
feat(test runner): implement test.describe.serial (#8132) 2021-08-10 21:26:45 -07:00
Yury Semikhatsky 78f24ec693
docs(java): add missing download example (#8128) 2021-08-10 21:23:57 -07:00
Andrey Lushnikov 4975f4179e
feat: make React and Vue selectors experimental (#8106) 2021-08-10 17:21:16 -07:00
Andrey Lushnikov 792986c92d
feat: support props matching in react and vue selectors (#8104) 2021-08-10 17:10:14 -07:00
Dmitry Gozman 2744cd6c9a
feat(test runner): remove createContext fixture (#8109)
We can now use `browser.newContext()` or `browser.newPage()` instead.
2021-08-10 09:26:36 -07:00
Dmitry Gozman 87548f94c1
feat(test runner): support test fixtures in beforeAll/afterAll (#8082)
Each hook gets its own test scope. This is not too useful for
object fixtures like `page` (although one can use a page in
`beforeAll` to save storage state), but much more useful for option
fixtures like `viewport`.
2021-08-09 13:26:33 -07:00
Andrey Lushnikov f455b6edc0
feat: introduce vue selector engine (#8070)
This patch adds support for the `vue` selector engine that allows
selecting DOM elements based on the component name.

> **NOTE**: `vue` engine supports Vue2 and Vue2.

References #7189
2021-08-09 01:34:52 -07:00
Pavel Feldman 290f601dae
feat(expect): introduce explicit default async expect timeout (#8071) 2021-08-07 22:08:56 -07:00
Andrey Lushnikov f3ba2b54ff
feat: introduce react selectors (#8069)
This patch adds support for the `react` selector engine that allows
selecting DOM elements based on the component name.

> **NOTE**: in case of multi-root components (React.Fragment), `react`
engine will select all root DOM elements.

> **NOTE**: `react` engine supports react v15+.

References #7189
2021-08-07 16:51:39 -07:00
Pavel Feldman 3424f59e67
chore(expect): polish matcher names, remote arguable ones (#8060) 2021-08-06 16:58:42 -07:00
Pavel Feldman a8d49fc1f4 docs: follow up, remove broken link 2021-08-06 15:48:47 -07:00
Pavel Feldman 79e8592146
docs: refresh getting started docs (#8054) 2021-08-06 14:02:41 -07:00
Max Schmitt 6549bc4d8d
docs: nuke mobile.md docs page (#8029) 2021-08-06 11:23:29 -07:00
Pavel Feldman b6d2c86d66
docs: add android requirements to the api docs page (#8014) 2021-08-05 21:12:34 -07:00
Anže Vodovnik 99654899df
docs(dotnet): update core concepts with correct code examples (#8002) 2021-08-05 11:17:34 -07:00
Max Schmitt 385d489b35
feat(test-runner): re-enable web server (#7906)
Co-authored-by: Joel Einbinder <joel.einbinder@gmail.com>
2021-08-03 23:24:14 +02:00
Joel Einbinder 4fabe5e6e4
feat(drag): sourcePosition and targetPosition (#7803) 2021-08-03 13:12:34 -04:00
Fabian Mendez 731f9453c5
feat(inputValue): implement inputValue for select elements (#7951) 2021-08-03 08:22:40 -07:00
Pavel Feldman 3b34e57ee4
feat(test-runner): introduce test.step (#7956) 2021-08-02 22:11:37 -07:00
Pavel Feldman 5803035c1b
feat(test-runner): introduce steps (#7952) 2021-08-02 17:17:20 -07:00
Max Schmitt 29f6dd3090
docs(python): make Locators Python compatible (#7950) 2021-08-02 21:46:44 +02:00
Max Schmitt 5e0a60fca1
docs(test-runner): make reporter env snippets cross-os compatible (#7947) 2021-08-02 16:21:30 +02:00
방성범 (Bang Seongbeom) deddf50c95
docs(test-runner): rename backendUrl to backendURL (#7940) 2021-08-02 11:19:02 +02:00
방성범 (Bang Seongbeom) e7ac7eb50c
docs(test-runner): remove npx in npm scripts (#7931) 2021-08-02 11:04:13 +02:00
Pavel Feldman 4163cec93b
feat(test-runner): introduce actionTimeout and navigationTimeout (#7919) 2021-07-29 21:03:50 -07:00
Dmitry Gozman 40901e8b9a
feat(test runner): test.skip(title, testFunction) syntax (#7922) 2021-07-29 14:33:37 -07:00
Pavel Feldman 2c095294c5
feat(locators): introduce allTextContents, allInnerTexts (#7920) 2021-07-29 14:09:35 -07:00
Dmitry Gozman dd0b089d13
feat(test runner): createContext fixture for multi-context scenarios (#7779) 2021-07-29 14:03:58 -07:00
Dmitry Gozman 3f0485486d
feat(test runner): show errors from interrupted tests when available (#7874)
This shows the exact operation that is timing out (like click) when
user hits Ctrl+C.
2021-07-28 15:43:37 -07:00
Pavel Feldman 446d3f1018
chore: update locator docs, make it not force-visible (#7888) 2021-07-28 13:30:30 -07:00
Max Schmitt 7da9545ef8
docs: fixed not existing cross-lang references (#7883) 2021-07-28 16:36:52 +02:00
Anže Vodovnik e4273368fb
docs(dotnet): installation (#7877) 2021-07-28 14:56:24 +02:00
Anže Vodovnik be75291b1e
docs(dotnet): POM snippets (#7878) 2021-07-28 14:55:15 +02:00
Yury Semikhatsky bd1549075d
docs: add missing Frame.fill.strict (#7880) 2021-07-28 05:18:04 -07:00
Yury Semikhatsky cf09f8d5a8
docs: dedupe timeout option (#7876) 2021-07-28 01:13:00 -07:00
Pavel Feldman b8dc0b9156
feat(expect): implement toMatchText (#7871) 2021-07-27 20:26:12 -07:00
Pavel Feldman cc43f9339f
feat(locators): implement last,nth (#7870) 2021-07-27 15:58:18 -07:00
Pavel Feldman b9aad5eb86
chore: move locators to strict selectors (#7866) 2021-07-27 15:27:36 -07:00
Max Schmitt 3c9d5cdc66
docs: hide language specific docs pages (#7860) 2021-07-27 17:22:08 +02:00
Pavel Feldman 0a6ae11da1
feat(strict): introduce strict mode (#7851) 2021-07-26 22:00:23 -07:00
Yury Semikhatsky 6b774922f9
docs: remove hermetic installation guide for non-js (#7845) 2021-07-26 08:53:49 -07:00
Pavel Feldman 827fb80465
feat(locator): implement element locators (#7808) 2021-07-22 21:37:20 -07:00
Dmitry Gozman bfbba5a979
docs(test runner): api reference for reporter api (#7811) 2021-07-22 19:56:36 -07:00
Dmitry Gozman fd9c72015f
docs(test runner): API reference for builtin fixtures (#7805) 2021-07-22 14:47:12 -07:00
Max Schmitt cc4af54402
docs(test-runner): fix option fixture typing issue (#7801) 2021-07-22 21:19:21 +02:00
Dmitry Gozman 8f1074c76e
docs(test-runner): initial API docs for test runner (#7732) 2021-07-22 11:01:18 -07:00
Max Schmitt acdc531efc
chore: migrate connect/overCDP to options instead of params (#7606) 2021-07-22 16:55:23 +02:00
Kumar Aditya 5701292a53
docs(python): added docs for pyinstaller (#7784)
Co-authored-by: Max Schmitt <max@schmitt.mx>
2021-07-22 15:47:29 +02:00
Anže Vodovnik ff8bd0fef2
docs(dotnet): fix example, clarify test runners & frameworks position (#7739) 2021-07-22 10:30:49 +02:00
Joel Einbinder 483b7d6a0d
feat(test-runner): mark launch as experimental (#7757) 2021-07-21 09:51:27 -05:00
Andrey Lushnikov af5eb9c2bd
docs: updated release notes for v1.13.0 (#7758) 2021-07-20 16:44:44 -07:00
Andrey Lushnikov 2fc281d449
docs: update release notes for v1.13 release (#7747) 2021-07-20 09:29:52 -07:00
Vildan Softic b56e2b713a
docs(dotnet): fix code snippet typos (#7736) 2021-07-20 11:08:30 +02:00
Pavel Feldman 1ab41babb1
docs: fix the downloadsPath docs (#7726)
Closes #7707
2021-07-19 14:56:28 -07:00
Joel Einbinder 56ada374df
feat(dragAndDrop): page.dragAndDrop (#6910) 2021-07-19 12:42:55 -05:00
Joel Einbinder a62aac3ff8
docs(dot-net): don't overpromise on test runners (#7720) 2021-07-19 12:06:00 -05:00
Max Schmitt a8661330de
docs(browser): make Chromium tracing vs. PW tracing more clear (#7713)
Co-authored-by: Andrey Lushnikov <aslushnikov@gmail.com>
2021-07-19 12:43:57 +02:00
Max Schmitt 4617bc4baf
docs(test-runner): add example with Docker to generate snapshots (#7712) 2021-07-19 12:25:27 +02:00
klhex e5c7941b49
docs(test-runner): fix link to test runner CLI docs (#7695) 2021-07-18 12:07:45 +02:00
Nav-2d ac8ad1050e
docs(intro-js): make js and ts example consistent (#7651) 2021-07-15 10:25:36 -07:00
Dmitry Gozman bb34d7a953
fix(test-runner): sanitize snapshot name before constructing a path (#7620)
This avoids problems with `toMatchSnapshot('../../dir/file.png')`
where we append this path to `snapshotDir` and end up in some random
place.

Also added a note to documentation.
2021-07-14 16:31:19 -07:00
Max Schmitt 6cc2fe178e
feat(test-runner): migrate to launch config/server (#7603) 2021-07-15 01:19:45 +02:00
Max Schmitt a26fe65db3
fix(test-runner): start webServer before globalSetup/teardown (#7604) 2021-07-14 19:01:46 +02:00
Dmitry Gozman d1170b30fc
Revert "api: remove timeout option from isVisible and isHidden methods (#7414)" (#7600)
This reverts commit 9f71c96740.
2021-07-14 10:46:00 +02:00
Dmitry Gozman 1d04114df0
docs: merge library and installation docs for nodejs (#7567) 2021-07-12 17:56:08 -07:00
Dmitry Gozman 2734066956
docs(test-runner): document configuration options (#7572) 2021-07-12 17:18:02 -07:00
Dmitry Gozman f6d71f24f6
docs(test-runner): section for multiple reporters (#7573) 2021-07-12 16:51:43 -07:00
Yury Semikhatsky 25a43aef3c
fix(docs): security details validTo/From type (#7559) 2021-07-12 09:35:37 -07:00
Anže Vodovnik 389943ac79
docs(dotnet): add logging and runsettings information (#7468) 2021-07-12 17:51:34 +02:00
Mark Skelton 22bc9c0285
docs(test-advanced.md): Overriding fixtures (#7528) 2021-07-11 14:18:37 -07:00
Dmitry Gozman 578b4b361a
docs: update installation guide for @playwright/test (#7491)
This forks installation guide for library vs test.
Also updated various mentions of installation.
Also updated the test annotations guide.
2021-07-09 16:13:33 -07:00
Dmitry Gozman 9897fc5b60
fix(docs): update web server snippets to make it rollable (#7541) 2021-07-09 12:09:58 -07:00
christianbaumann 70b054d240
docs(auth): fixed typo in Java code snippet for session-storage (#7532)
Co-authored-by: Christian Baumann <christian.baumann@shipsta.com>
2021-07-09 11:51:32 +02:00
Yury Semikhatsky 07d44587d9
docs: promote cli command to install chrome stable (#7471) 2021-07-07 22:40:42 -07:00
Max Schmitt 98bcf26656
feat(test-runner): add webServer (#7368) 2021-07-07 20:19:42 +02:00
Yury Semikhatsky a481de0871
docs: add a note on download file name (#7473) 2021-07-07 10:37:24 -07:00
Max Schmitt 371aa3dab2
feat: add browser.newContext({ baseUrl }) (#7409) 2021-07-06 21:16:37 +02:00
Max Schmitt b846ddda04
feat(download): introduce Download.cancel (#7462) 2021-07-06 09:38:50 +02:00
Mark Skelton d9e704a3b1
docs: add expect-playwright to the showcase (#7446) 2021-07-02 19:18:24 +02:00
Dmitry Gozman 9f71c96740
api: remove timeout option from isVisible and isHidden methods (#7414)
It is unused and confusing.
2021-07-01 13:30:16 -07:00
Max Schmitt 027fc4c0b4
chore: hide request interception for 1.13 (#7425) 2021-07-01 18:33:47 +02:00
Anish Karandikar 2166b98efc
docs(installation): Minor grammar edit (#7383) 2021-06-29 13:00:20 -07:00
Dmitry Gozman 1660334357
feat(install): docs and help (#7365)
Drive-by: remove test-intro and references to it.
2021-06-28 18:50:24 -07:00
Dmitry Gozman 014c224db6
docs(snapshots): add more details (#7366) 2021-06-28 14:17:28 -07:00
Max Schmitt 8414bafd86
docs(python): add example for testing Chromium extensions (#7338) 2021-06-28 21:26:04 +02:00
Pavel Feldman 2fa436675f docs(cdp): more python cdp fixes (2) 2021-06-26 08:31:36 -07:00
Pavel Feldman ff2e5f9120 docs(cdp): more python cdp fixes 2021-06-26 08:30:06 -07:00
Pavel Feldman 550b48f958
docs: fix the python cdp snippet (#7324) 2021-06-25 11:53:55 -07:00
Max Schmitt 4c6deaa449
test: added tests for WebSocket over Socks proxy (#7235) 2021-06-24 18:50:16 +02:00
Pavel Feldman e6bf0a07fe
feat(force): add fill, selectOption, selectText ({force}) (#7286) 2021-06-24 08:18:09 -07:00
Pavel Feldman 5732307280
feat(inputValue): implement *.inputValue() (#7285) 2021-06-23 22:19:20 -07:00
Max Schmitt b3cc683e6b
chore hide Download._cancel (#7282) 2021-06-23 23:20:36 +02:00
Max Schmitt 0d36cec600
chore: remove Playwright GitHub Action mentions (#7281) 2021-06-23 23:15:00 +02:00
David Murdoch 708fde8f0a
docs(python): fixed broken snippet in assertions.md
Co-authored-by: Max Schmitt <max@schmitt.mx>
2021-06-23 10:17:50 +02:00
Martin Costello af18b31473
docs(dotnet): fixed broken code snippets which contained Java (#7260) 2021-06-22 14:56:28 +02:00
Max Schmitt f4bf400f05
docs(python): enhance intro (#7234) 2021-06-21 19:57:56 +02:00
Max Schmitt 498b2d7ca0
docs(test-runner): added JSDoc hints to code snippets (#7226) 2021-06-21 19:56:30 +02:00
Azriz Jasni af06093869
docs(test-runner): fix missing reporter key config in snippet (#7242) 2021-06-21 13:52:25 +02:00
Pavel Feldman ea4eebeb2d
feat(test-runner): document tagging, implement grep-invert (#7227) 2021-06-18 17:56:59 -07:00
Yury Semikhatsky c0cd2d4579
feat: response interception (#7122) 2021-06-18 11:04:48 -07:00
Pavel Feldman 6f9d2ba53d docs: make docs test-first (2) 2021-06-18 10:56:47 -07:00
Pavel Feldman deec8a4adb
docs: make docs test-first (#7214) 2021-06-18 10:09:38 -07:00
Pavel Feldman 1b2f0714f7
docs: document passing data from global setup (#7213) 2021-06-17 17:21:22 -07:00
Dmitry Gozman 78261d2373
docs: clarify that attribute selectors are not CSS (#7210) 2021-06-17 15:08:05 -07:00
Ross Wollman 219e5138be
feat(response): expose connection details in API (#7150) 2021-06-17 13:04:55 -07:00
Chris Bolin 2e251d9d5d
clean up language in installation.md (#7184) 2021-06-16 18:39:15 -07:00
Pavel Feldman 82a50b0e1d
fix(test-runner): property handle artifacts in context of preserveOutput (#7181) 2021-06-16 16:05:30 -07:00
Andrey Lushnikov a3e4185b2f
chore: nuke 'webkit-technology-preview' experiment (#7164)
It proved to be unmaintainable due to the following reasons:
- determining upstream branch for the technology preview was a manual
and tedious process
- once determined, actual Safari Technology Preview occasionally
diverted from the branch
2021-06-15 23:58:30 -07:00
Joel Einbinder 4c2a3fb443
fix(test-runner): accept relative paths for outputDir (#7149)
fixes #7124
2021-06-15 13:39:07 -07:00
Yury Semikhatsky 2b980da86b
docs: fix tracing java examples (#7145) 2021-06-15 11:14:09 -07:00
Max Schmitt 48c3691dca
docs(test-runner): add note about launchOptions and contextOptions (#7133) 2021-06-15 10:11:15 +02:00
Dmitry Gozman 742cce3a1d
feat(test runner): configurable reportSlowTests (#7120)
Also splits tests by projects and reports them with nice relative paths.
2021-06-14 22:45:58 -07:00
Pavel Feldman 970bb6a70d
feat(test-runner): allow setting pixel match threshold for project (#7123) 2021-06-14 21:52:10 -07:00
Max Schmitt dbf779b734
docs(test-runner): move slowMo to launchOptions (#7098) 2021-06-14 17:12:53 +02:00
Andrew Hampton 1448f60547
docs: fix typo in Trace Viewer documentation (#7105) 2021-06-14 07:57:37 -07:00
Max Schmitt 1be687e478
docs(dotnet): fixed broken screenshot example (#7090) 2021-06-14 15:39:58 +02:00
Lisa d7c0ddaeb0
docs(python): add missing closing parenthesis (#7089) 2021-06-14 10:43:08 +02:00
Peng-Yu Chen 5f6d4a7b73
feat(download): adding a new Download._cancel method (#6236) 2021-06-12 22:23:22 +02:00
Max Schmitt 2b8ea73048
docs(test-runner): fixed wrong function calls (#7080) 2021-06-11 16:20:13 -07:00
Andrey Lushnikov f52290d4ea
Revert "feat: add defaultTimeout browser context configuration option (#6944)" (#7057)
This reverts commit 617dfdef9e.

It turns out this might conflict with our bright testrunner future.
2021-06-10 18:38:56 -07:00
Amit Abershitz 617dfdef9e
feat: add defaultTimeout browser context configuration option (#6944)
Fixes #6940

Co-authored-by: Amit Abershitz <aabershitz@proofpoint.com>
Co-authored-by: Andrey Lushnikov <aslushnikov@gmail.com>
2021-06-10 18:10:20 -07:00
Pavel Feldman 1479610abd
docs: start adding an API cheat sheet (#7045) 2021-06-10 13:43:42 -07:00
Max Schmitt 13b6d0153d
docs: change wording from C# to .NET (#7021) 2021-06-10 18:16:10 +02:00
Max Schmitt 54d5978026
docs: added extensions page (#7010) 2021-06-10 16:48:16 +02:00
Pavel Feldman 144ef2a72d
docs: add reuse auth in test runner example (#7006) 2021-06-09 19:26:09 -07:00
Pavel Feldman e0150338ac
docs: fix the global setup example (#7005) 2021-06-09 17:39:49 -07:00
Yury Semikhatsky e625e17dc3
docs(api): add env option to Playwright.create in Java (#7002) 2021-06-09 15:05:51 -07:00
Pavel Feldman 5093e4e804
docs: add playwright test clarification (#6993) 2021-06-09 12:34:58 -07:00
Nav-2d a7b3bc1b38
docs(test-advanced): fix wrong extension (#6996) 2021-06-09 11:59:55 -07:00
Max Schmitt 048a380462
docs(input): fixed wrong example time value (#6988) 2021-06-09 10:16:54 -07:00
Pavel Feldman 521153844a
docs: fix the nunit example (#6978) 2021-06-08 19:14:18 -07:00
Andrey Lushnikov 52e75cf13e
docs: split release notes on the website per-language (#6977) 2021-06-08 16:43:34 -07:00
Andrey Lushnikov aa2546592d
docs: update release notes docs (#6974) 2021-06-08 16:17:53 -07:00
Max Schmitt 557a564c5f
docs(python): update Pytest docs (#6965) 2021-06-08 21:20:45 +02:00
Darío Kondratiuk cc2a7ef369
doc(csharp): improve example readability on intro page (#6957) 2021-06-08 12:03:49 -07:00
Pavel Feldman 021f51cc1f
feat(trace): add a trace option into the test runner (#6961)
Co-authored-by: Andrey Lushnikov <aslushnikov@gmail.com>
2021-06-08 11:22:07 -07:00
Andrey Lushnikov 53d68bdb38
feat: firefox is stable by default (#6953)
This patch:
- rolls Firefox to v1269 which is now a firefox-stable build.
- introduces a new channel, `firefox-beta`, for our internal needs.

Fixes #6817
2021-06-08 09:34:17 -07:00
Max Schmitt 334096ed20
docs(pom): fixed JS example which contained TS (#6917) 2021-06-07 22:41:56 +02:00
Yury Semikhatsky 52878bb19d
docs: use proper option name for --workers (#6942) 2021-06-07 12:24:00 -07:00
Pavel Feldman 99ec32ae61
chore: more doc nits (#6937) 2021-06-07 11:54:50 -07:00
Max Schmitt 42a9e4a0d3
docs(mobile): make experimental Android support more present (#6932) 2021-06-07 17:04:18 +02:00
Dmitry Gozman 8c13f679b7
fix(test runner): remove folio/jest namespaces in expect matchers (#6930) 2021-06-07 08:02:01 -07:00
Pavel Feldman 4b5ad33cf8
doc: fix first .net script (#6922) 2021-06-05 14:33:36 -07:00
Dmitry Gozman 82041b2f74
test: roll to folio@0.4.0-alpha28 (#6918) 2021-06-04 20:54:58 -07:00
Pavel Feldman f441755698
docs(dotnet): add test runner docs (#6919) 2021-06-04 20:52:35 -07:00
Olivier Leplus b5ac393284
docs(showcase): fixed typo in showcase.md (#6915) 2021-06-04 23:23:42 +02:00
Pavel Feldman 9ad507d9c0
doc(test): pass through test docs (#6914) 2021-06-04 13:33:56 -07:00
Max Schmitt 9142d8c2dd
docs: fix that test-runner is not included (#6912) 2021-06-04 21:15:09 +02:00
Dmitry Gozman 21b00d0bcc
test: roll to folio@0.4.0-alpha27 (#6897) 2021-06-03 22:06:59 -07:00
Yury Semikhatsky abc66c6e70
docs(api): add missing callback parameter to waitForRequestFinished (#6893) 2021-06-03 17:17:35 -07:00
Pavel Feldman e41979a551
chore: import @playwright/test (#6880) 2021-06-03 14:46:58 -07:00
Pavel Feldman d16afef75a
doc(tracing): add a trace viewer doc (#6864) 2021-06-03 08:08:05 -07:00
Kumar Aditya 13b6444bda
docs(python): add docs for installing with conda (#6845)
Co-authored-by: Max Schmitt <max@schmitt.mx>
2021-06-03 11:37:43 +02:00
Pavel Feldman b2143a951b
chore: make tracing zero config (#6859) 2021-06-02 22:00:34 -07:00
Dmitry Gozman 8a68fa1e83
docs(test runner): advanced section (#6862) 2021-06-02 20:16:10 -07:00
Pavel Feldman c5e1c8b90c
docs: use explicit tab suffixes (#6855) 2021-06-02 15:31:51 -07:00
Pavel Feldman d28f45b6ee
api(tracing): export -> stop({path}) (#6802) 2021-06-02 10:04:25 -07:00
Max Schmitt 79b244a2f4
chore: use bash instead of sh in code blocks (#6847) 2021-06-02 18:23:06 +02:00
Ross Wollman ffe89c4e3d
docs(installation): use RFC5735 IPs for examples (#6729)
Updates examples to use IPs from [TEST-NET-* blocks][rfc5735] designated for
example documentation instead of likely live (albeit innocuous) router IPs.

[rfc5735]: https://datatracker.ietf.org/doc/html/rfc5735
2021-06-02 00:15:21 -07:00
Ross Wollman c8c849e164
docs(page): add TypeScript $eval type-hint notes (#6693) 2021-06-01 22:50:31 +02:00
Dmitry Gozman 5fd15d8a5e
docs(test runner): put more example in various sections (#6812) 2021-05-31 22:01:21 -07:00
Dmitry Gozman 98fc8b1739
docs(test runner): update reporters and snapshots docs (#6811) 2021-05-31 20:17:15 -07:00
Max Schmitt c8c77e4df0
docs: use sha256 for exposeFunction everywhere (#6805) 2021-05-31 15:47:14 -07:00
Max Schmitt 9c42192207
docs(python): add expect wrapper aliases for roll (#6809) 2021-05-31 19:00:18 +02:00
Max Schmitt 47d4d473d0
docs: fixed wrong waitForRequestFinished description (#6808) 2021-05-31 18:54:20 +02:00
Dmitry Gozman d6fe9f0b84
docs(test runner): more basic docs (#6803) 2021-05-30 19:46:16 -07:00
Dmitry Gozman 709a4cbe89
docs(test runner): configuration docs (#6801) 2021-05-30 15:14:44 -07:00
Dmitry Gozman f7e720568d
docs: update test runner docs (#6795) 2021-05-29 08:58:17 -07:00
Dmitry Gozman a7afcf24c6
docs: js/ts snippets for tests (#6791) 2021-05-28 17:02:23 -07:00
Pavel Feldman 0f760627fa
docs: add test runner docs (#6784) 2021-05-27 20:30:03 -07:00
Pavel Feldman 93a0efa832
docs(runner): start adding runner docs (3) (#6777) 2021-05-27 18:50:44 -07:00
Pavel Feldman 2c9e6e81a4
docs(runner): start adding runner docs (2) (#6776) 2021-05-27 10:15:37 -07:00
Pavel Feldman 4578d57901
docs(runner): start adding runner docs (#6773) 2021-05-27 09:16:50 -07:00
Pavel Feldman 7b4af6b201 docs: text nits (3) 2021-05-26 17:36:44 -07:00
Pavel Feldman 250c51fd9f docs: text nits (2) 2021-05-26 16:27:42 -07:00
Pavel Feldman 9233a61bda doc: text nit 2021-05-26 16:22:38 -07:00
Pavel Feldman fb3c6e50d4
api(dotnet): remove whenall (#6768) 2021-05-26 15:50:42 -07:00
Pavel Feldman bb0e196b15
api(dotnet): specialize waitForEvent (#6761) 2021-05-26 15:11:31 -07:00
Pavel Feldman 792f3d41e9
api(dotnet): use jsonelement (#6749) 2021-05-26 07:28:26 -07:00
Pavel Feldman f7f08c9c02
api(dotnet): normalize enums, remove browser channel enum (#6738) 2021-05-25 14:33:27 -07:00
gboer 15bf6a0a1b
docs(class-page.md): Add additional clarification on requestFailed event (#6724) 2021-05-25 12:58:48 -07:00
Max Schmitt f629cbe053
docs: provide examples for PowerShell when settings env vars (#6718) 2021-05-25 07:10:22 +02:00
Pavel Feldman 2321abb2d9
api(dotnet): fix json api (#6723) 2021-05-24 13:40:02 -07:00
Max Schmitt 88defbd5a6
docs(network): fixed proxy typo with username (#6716) 2021-05-24 18:35:58 +02:00
Pavel Feldman 3097b9a4f4
api(dotnet): use json element for a11y (#6710) 2021-05-22 20:29:32 -07:00
Pavel Feldman 17553e253d
api(dotnet): hide reducedMotion from csharp until C# 1.11 release (#6705) 2021-05-22 07:58:02 -07:00
Pavel Feldman f9357531f5
doc(dotnet): add a self-contained example (#6702) 2021-05-22 07:55:53 -07:00
Max Schmitt ba29e99ace
feat: added reduced motion media query emulation (#6646) 2021-05-22 01:56:09 +02:00
Alexey Lagunov 72c6f4f69e
Corrected JavaScript lambda in python sections (#6692) 2021-05-21 09:15:21 -07:00
Dmitry Gozman 8490eb3c89
docs: small tweaks (#6681) 2021-05-20 09:19:58 -07:00
Pavel Feldman 6281b95acc
docs(dotnet): follow up to Anze's changes (#6672) 2021-05-20 08:20:21 -07:00
Yury Semikhatsky 6b8b75d145
docs: add JUnit examples (#6668) 2021-05-19 19:55:13 -07:00
Anže Vodovnik c80e9fa58a
docs(dotnet): guides (#6639) 2021-05-19 19:53:12 -07:00
Anže Vodovnik 0aa9e06370
docs(dotnet): First part/pass for guides (#6583) 2021-05-19 19:49:48 -07:00
Pavel Feldman fad77e2f78
docs(dotnet): udpate existing examples (#6669) 2021-05-19 17:19:25 -07:00
Pavel Feldman ba637e6e41
chore: bring back dblclick alias (#6667) 2021-05-19 16:29:35 -07:00
Pavel Feldman e679d99421
chore: remove input files and selected option overrides (#6665) 2021-05-19 16:13:17 -07:00
Pavel Feldman 1f22673c29
api(dotnet): introduce RunAndWaitForAsync (#6660) 2021-05-19 15:49:44 -07:00
Max Schmitt 202511d60a
docs: chromiumSandbox is by default false (#6662) 2021-05-20 00:16:55 +02:00
Yury Semikhatsky e19aea736a
docs: do not recommend context for parallel execution (#6659) 2021-05-19 14:14:17 -07:00
Joel Einbinder 754ee13c93
feat(electron): accept BrowserContextOptions in electron.launch (#6621) 2021-05-19 06:56:29 -07:00
Pavel Feldman 972f0ec2b5
api(dotnet): migrate to options (#6651) 2021-05-18 23:33:52 -07:00
Pavel Feldman 36c0765c98
api(dotnet): remove serializer options (#6641) 2021-05-18 10:55:03 -07:00
Pavel Feldman 7eca573eb4
api(dotnet): remove some overrides (#6622) 2021-05-17 20:10:32 -07:00
Pavel Feldman d2a23a4abe
fix(md): bring generic launch args into class-browsertype (#6607) 2021-05-16 10:25:51 -07:00
Pavel Feldman fd1e62b8c5
docs(dotnet): examples for dialogs, fixes (#6599) 2021-05-15 14:02:07 -07:00
Darío Kondratiuk 52658cf507
chore(dotnet): revert opener async (#6600) 2021-05-15 13:43:45 -07:00
Pavel Feldman b5884b95b7
docs(dotnet): examples for events, handles (#6598) 2021-05-15 11:57:20 -07:00
Pavel Feldman 9aa610063c
docs(dotnet): examples for verification, video, fixes (#6597)
Will follow up...
2021-05-15 11:37:21 -07:00
Pavel Feldman bbc3ebd512
docs(dotnet): examples for input, intro, languages, multi-pages (#6596) 2021-05-15 10:56:10 -07:00
Pavel Feldman c01c5dbb55
docs(dotnet): examples for navigation.md, network.md, selectors.md (#6593) 2021-05-14 23:22:30 -07:00
Pavel Feldman bc18529191
docs(ff): temporarily remove ff-stable reference (#6585) 2021-05-14 12:03:38 -07:00
Darío Kondratiuk 2b887bf835
chore(dotnet): remove StatusCode property (#6582) 2021-05-14 07:50:49 -07:00
Anže Vodovnik 885285bea7
docs(dotnet): Video and Worker examples (#6581) 2021-05-14 07:50:35 -07:00
Anže Vodovnik c9d2f6bfe0
docs(dotnet): selectors example (#6580) 2021-05-14 07:50:15 -07:00
Darío Kondratiuk 8845484ac7
chore(dotnet): page.opener sync (#6579) 2021-05-14 07:49:37 -07:00
Anže Vodovnik ec0b4e9061
docs(dotnet): route examples (#6578) 2021-05-14 07:49:14 -07:00
Pavel Feldman ab36fdeba7
api(download): hide new api until c# is public (#6567) 2021-05-13 15:58:46 -07:00
Sébastien Règne e87fbfcc1d
feat(download): add Page in Download (#6501) 2021-05-13 14:18:21 -07:00
Pavel Feldman 81a57ea2ac
docs(dotnet): generate 1.11 api off tot (#6564) 2021-05-13 12:24:20 -07:00
Pavel Feldman 6a39b86640
chore: GoToAsync -> GotoAsync (#6563) 2021-05-13 11:57:02 -07:00
Pavel Feldman bdb4aefc8f docs(tracing): remove the relative link 2021-05-13 11:24:53 -07:00
Darío Kondratiuk 7adf907fba
docs(dotnet): rename getPayloadAsJson to PostDataJsonAsync (#6533) 2021-05-13 11:14:35 -07:00
Vignesh Shanmugam 4b3e5e5c17
feat(network): expose network events via browser context (#6370)
- fix #6340
- Exposes all the network related events (request, response, requestfailed, requestfinished) through the browser context to allow for managing network activity even if the is any navigations through popups or to new tabs which could result in creation of multiple page objects.
2021-05-13 10:29:14 -07:00
Anže Vodovnik 30dd02409b
docs(dotnet): BrowserContext and BrowserType (#6503) 2021-05-13 10:25:16 -07:00
Anže Vodovnik d6b98effc3
docs(dotnet): examples for dialog, download and filechooser (#6526) 2021-05-13 10:24:15 -07:00
Anže Vodovnik ddfbffa111
docs(dotnet): Page examples (#6556) 2021-05-13 10:19:47 -07:00
Anže Vodovnik ea59fd8f83
docs(dotnet): Playwright examples (#6558) 2021-05-13 10:19:14 -07:00
Anže Vodovnik 47645ec815
docs(dotnet): Frame examples (#6555) 2021-05-13 10:18:56 -07:00
Anže Vodovnik 62265905de
docs(dotnet): Request Examples (#6560) 2021-05-13 10:17:11 -07:00
Anže Vodovnik fce904fa4c
docs(dotnet): Keyboard examples (#6539) 2021-05-13 11:15:27 +02:00
Pavel Feldman 1a39843df5
docs: follow up on adding trace dir, unify launch options (#6545) 2021-05-12 16:16:36 -07:00
Pavel Feldman 21cb726b7d
chore(tracing): expose tracing api (#6523) 2021-05-12 12:21:54 -07:00
Anže Vodovnik bcccafea13
docs(dotnet): ElementHandle and JSHandle examples (#6527) 2021-05-12 09:04:51 -07:00
Yury Semikhatsky 08ed560254
chore(docs): update section id to keep alphabetic order (#6515) 2021-05-12 09:03:36 -07:00
Darío Kondratiuk 6023c6746a
docs(dotnet): add devices property (#6530) 2021-05-12 08:09:47 -07:00
Darío Kondratiuk 0d3d2d3384
chore(dotet): fix goto casing (#6529) 2021-05-12 08:09:04 -07:00
Max Schmitt 60a7b0618f
docs(cli): add example on how to install-deps for a single browser (#6534) 2021-05-12 15:59:31 +02:00
Anže Vodovnik 2945f05cfa
docs(dotnet): accessibility docs (#6489) 2021-05-12 10:30:22 +02:00
Max Schmitt 8af8b6340d
docs: add ref to waitForSelector from querySelector (#6514) 2021-05-12 08:07:49 +02:00
Yury Semikhatsky a22ae1313d
docs(java): add multithreading section (#6512) 2021-05-11 14:33:00 -07:00
Sébastien Règne 33823a9143
docs(download): improve documentation (#6486) 2021-05-11 13:27:50 -07:00
Max Schmitt e0aaef5eab
docs: get rid of dollar sign prefix in code snippets (#6494) 2021-05-11 20:47:48 +02:00
Andrey Lushnikov 9a6d09feba
docs: update release notes (#6492) 2021-05-10 15:51:37 -07:00
Anže Vodovnik 3f6461189b
docs(dotnet): Browser examples (#6490) 2021-05-10 11:24:54 -07:00
Darío Kondratiuk 9e36f5cc26
docs(consoleMessage): add missing console message comments (#6320)
Co-authored-by: Max Schmitt <max@schmitt.mx>
2021-05-05 13:18:07 -07:00
Anže Vodovnik 90de864216
docs(dotnet): introduce separate csharp viewport option (#6198) 2021-05-05 13:13:18 -07:00
Dmitry Gozman 14ebcfdf0b
docs: update fill/selectOption docs to mention label retargeting (#6406) 2021-05-04 13:08:38 -07:00
Andrey Lushnikov 653d483ba8
docs: add firefox-stable channel documentation (#6328)
Fixes #5993
2021-05-03 16:52:33 -07:00
Yury Semikhatsky fe94dc5cf3
docs: expose tracing API in java (#6387) 2021-05-03 15:23:03 -07:00
Pavel Feldman 1a859ebe68
chore(electron): fix node/browser race conditions, expose browser window asynchronously (#6381) 2021-05-02 22:45:06 -07:00
Thomas Wang af92565bc7
Update class-page example code (#6379) 2021-04-30 21:39:10 -07:00
Max Schmitt a59a494e64
chore: drop support for Node.js 10 (#6371) 2021-04-30 07:49:10 -07:00
Max Schmitt 7405655c26
docs(cli): add install-deps command and reference to it (#6374) 2021-04-30 07:44:30 -07:00
Darío Kondratiuk 9da718d6d5
docs: change the position argument location in check functions (#6191) 2021-04-29 21:23:03 -07:00
Darío Kondratiuk dec973611c
docs(page): add missing docs on emulateMedia (#6322) 2021-04-29 21:08:30 -07:00
Max Schmitt 1c40c94ed7
chore: only throw the proxy on launch required on win/CR (#6350) 2021-04-30 00:02:48 +02:00
Max Schmitt 1b771ed360
docs(python): add Error base class (#6315) 2021-04-28 10:41:46 +02:00
Joel Einbinder abb61456d1
docs(keyboard): clarify how page.type works for non-US characters (#6273) 2021-04-26 20:54:40 -07:00
Kumar Aditya 2f290cc9be
fix: fix docs for BrowserType headers (#6314) 2021-04-26 08:58:01 -07:00
Dmitry Gozman ce0331038b
docs: add route example with some logic (#6324) 2021-04-26 08:46:17 -07:00
Yury Semikhatsky d31107f342
fix(docs): make headers and option, not param (#6307) 2021-04-23 15:27:14 -07:00
Yury Semikhatsky fd31ea8b0d
feat: support extra http headers in browserType.connect() (#6301) 2021-04-23 14:52:27 -07:00
Dmitry Gozman ff147b0007
docs: update waitForRequest/Response snippets (#6294) 2021-04-23 08:53:25 -07:00
Max Schmitt 97b485bd74
docs(python): add BrowserType.connectOverCDP (#6270) 2021-04-22 19:13:19 +02:00
Max Schmitt 7053ac9097
chore(types): add channel to launchServer (#6256) 2021-04-21 21:23:08 +02:00
Dmitry Gozman 6bdc67ac6a
feat(actions): trial option that only performs the checks (#6246)
Available for check, click, dblclick, hover, tap, uncheck.
2021-04-21 12:22:19 -07:00
Dmitry Gozman ad731c1535
feat(debug): PWDEBUG=console vs PWDEBUG=inspector (#6213)
This supports `PWDEBUG=console` that:
- runs headed;
- disables timeouts;
- adds `playwright` console helper.

When using `PWDEBUG=anything-but-console`, we open inspector.
Docs keep suggesting `PWDEBUG=1`.
2021-04-20 15:58:34 -07:00
Darío Kondratiuk 7dccfd4227
chore(dotnet): generate IDownload.createReadStream method (#6192) 2021-04-19 13:28:57 -07:00
Dmitry Gozman 243ede5dfb
feat(waitForEvent): allow async predicate (#6201)
We await the predicate now. For synchronous predicates,
nothing should change becase the await will finish before
the next protocol message arrives (thanks to `makeWaitForNextTask`).
2021-04-19 10:32:51 -07:00
Max Schmitt fd1f3fa322
docs(python): add BrowserType.connect (#6230) 2021-04-19 17:43:30 +02:00
Michael Palotas bd0614b0c8
added Selenium Box (#6228) 2021-04-19 08:40:45 -07:00
Dmitry Gozman e81a3c5901
api: add option position to check/uncheck (#6153)
Since check/uncheck does click under the hood, sometimes it might
need to click at a different position. One example would be a long
label that contains links inside, and clicking in the center happens
to hit the link instead of the label itself.
2021-04-12 12:41:25 -07:00
Darío Kondratiuk c4c9809f85
docs: move waitUntil doc before timeout (#6138) 2021-04-12 09:18:18 -07:00
Darío Kondratiuk cd2490424e
chore(dotnet): waitForCloseAsync (#6184) 2021-04-12 09:11:29 -07:00
Darío Kondratiuk 610d1fd456
docs: fix typo on waitForConsoleMessage (#6183) 2021-04-12 09:10:05 -07:00
Dmitry Gozman b62a436041
feat(selectors): support max distance in layout selectors (#6172)
Supports `div:near(button, 120)` with configurable distance in pixels.
2021-04-10 15:20:26 -07:00
Anže Vodovnik e26d98d6de
docs(csharp): add viewport back (#6161) 2021-04-09 11:08:33 -07:00
Yury Semikhatsky 16c8fe74ed
docs: fix typo in language filter (#6154) 2021-04-08 17:40:34 -07:00
Dmitry Gozman db09275d89
docs: reject -> throw, fix small typos (#6152) 2021-04-08 16:42:45 -07:00
Joel Einbinder 63d0d466e3
feat(cdp): replace wsEndpoint with protocol neutral endpointURL (#6141) 2021-04-08 14:55:28 -07:00
Yury Semikhatsky cdbf52f68d
docs: add basic intro page for C# (#6110) 2021-04-06 22:23:55 -07:00
Yury Semikhatsky 83c7a3ba26
docs: pass wsEndpoint as param in java (#6112) 2021-04-06 17:33:49 -07:00
Yury Semikhatsky 4bd7467942
docs: add missing connectOverCDP.wsEndpoint param in java (#6109) 2021-04-06 17:08:40 -07:00
Yury Semikhatsky f61ec3fd07
docs(docker): update docker documentation to inlcude java (#6102) 2021-04-06 15:58:07 -07:00
Yury Semikhatsky 9abed11782
docs: expose connectOverCDP in java (#6107) 2021-04-06 15:57:51 -07:00
Darío Kondratiuk ee396421ea
chore(dotnet): alias for dblclick in C# (#5899) 2021-04-06 11:49:46 +02:00
Max Schmitt 6a767d1a9c
docs(docker): use focal by default (#5746) 2021-04-05 16:09:35 -07:00
Max Schmitt af48a8a1f1
devops: use ubuntu focal on bots and docs (#5951)
- drive-by: updated NPM Action
- replaced ubuntu-latest by ubuntu-20 so its pinned

Extracted from #5746
2021-04-05 12:39:15 -07:00
Pavel Feldman ee1bcd760b docs: fix the Electron example 2021-04-04 14:08:40 -07:00
Pavel Feldman a7630c91d5
api: remove Chromium* classes (#6040) 2021-04-01 18:47:14 -07:00
Max Schmitt 37b07adaab
docs: replace headful with headed (#6017) 2021-04-01 11:13:50 -07:00
Dmitry Gozman 9d9599c6a6
api(video): implement video.saveAs and video.delete (#6005)
These methods are safe to call while the page is still open, or when it is
already closed. Works in remotely connected browser as well.

Also makes video.path() to throw for remotely connected browser.

Under the hood migrated Download and Video to use the common Artifact object.
2021-03-31 10:38:05 -07:00
Max Schmitt 26f9e29623
docs(route): add note about unroute (#6019) 2021-03-31 09:23:17 -07:00
Pavel Feldman 85ab1dc7a4
feat(waitForURL): add a new waitForURL api (#6010) 2021-03-30 21:51:22 -07:00
Alex Plischke 72a2dff538
Add Sauce Labs showcase (#5990) 2021-03-30 15:09:37 -07:00
Pavel Feldman f1c0d09765
feat(size): emulate window.screen size (#5967) 2021-03-29 14:10:58 -07:00
Max Schmitt dfe07818e6
docs: fixed various typos (#5958) 2021-03-26 10:47:16 -07:00
Darío Kondratiuk 475a6fe391
chore(dotnet): use csharp types in Frame and Page (#5961) 2021-03-26 10:45:50 -07:00
Dmitry Gozman 12e00629e4
docs: update channels doc to mention manual installation (#5964) 2021-03-26 10:20:21 -07:00
Max Schmitt 601c09f7f1
docs(page): remove note that screenshot takes 1/6+s (#5945) 2021-03-24 20:02:14 -07:00
Andrey Lushnikov 4fea83c6d8
docs: commit new release notes (#5944) 2021-03-24 14:51:28 -07:00
Darío Kondratiuk 24ee49b958
chore(dotnet): improve goto name in csharp (#5917) 2021-03-24 15:31:30 +01:00
Pavel Feldman cc265fe1eb
docs(websocket): add web socket examples (#5927) 2021-03-23 17:17:59 -07:00
Pavel Feldman 543582b4ca
chore: expose channel name literals for types (#5922) 2021-03-23 13:21:03 -07:00
Pavel Feldman f70eaf4ff3
docs(android): android doc nits (#5924) 2021-03-23 13:20:41 -07:00
Yury Semikhatsky 8f1d03f846
docs(options): clarify recordHarPath and recordVideoDir behavior (#5923) 2021-03-23 13:13:15 -07:00
Pavel Feldman cac5aeb6da docs(browser): wording nits 2021-03-22 13:00:19 -07:00
Pavel Feldman be9fa743ca docs(intro): remove stray wait from sync snippet 2021-03-21 09:52:26 -07:00
Yury Semikhatsky 237251924d
docs: add event listener guide (#5881) 2021-03-19 12:44:03 -07:00
Michael cbebf64f07
docs: fix circleci invalid yaml (#5880) 2021-03-18 18:35:48 -07:00
Pavel Feldman 5c753b763f
docs: add the browsers section (#5876) 2021-03-18 15:35:55 -07:00
Pavel Feldman 516f13e7ee Revert "chore(docs): reference the available constants for csharp (#5785)"
This bubbled up in Python comment.
2021-03-18 13:49:35 -07:00
Anže Vodovnik dfb1c99ad1
chore(docs): reference the available constants for csharp (#5785) 2021-03-18 16:34:13 +01:00
Anže Vodovnik c55000812b
docs(dotnet): adds option parameters for csharp on element handle (#5823) 2021-03-17 18:28:40 +01:00
Pavel Feldman 95affe9387
chore: do not delete unused browsers when PLAYWRIGHT_SKIP_BROWSER_GC is specified (#5827) 2021-03-15 16:00:18 -07:00
Pavel Feldman 1dd6bd3316
infra(channel): wire release channel to all tests (#5820) 2021-03-15 08:07:57 -07:00
Pavel Feldman a96d6a7dbb
feat: allow to pick stable channel (#5817) 2021-03-13 14:02:39 -08:00
Yury Semikhatsky 6a8c8d9c87
docs: fix Dialog class reference (#5788) 2021-03-11 08:42:31 -08:00
Anže Vodovnik 720dea4069
docs(dotnet): adding missing methods from dotnet port (#5763) 2021-03-11 17:14:10 +01:00
Max Schmitt 7706e5a24a
docs(python): removed wrong quotes for enum (#5784) 2021-03-10 14:19:48 -08:00
Yury Semikhatsky aae8cc839a
docs: improve Download methods documentation (#5760) 2021-03-08 19:52:07 -08:00
Yury Semikhatsky 659d3c3b6f
docs: use custom link element in waitForNavigation example (#5755) 2021-03-08 12:21:34 -08:00
Anže Vodovnik 47104746ec
docs(dotnet): marking methods async (#5751) 2021-03-08 09:33:23 -08:00
Anže Vodovnik 0ca56a8b17
docs(dotnet): mark waitForClose as async (#5730) 2021-03-08 10:09:18 +01:00
Yury Semikhatsky b5aeba90a6
docs: update java version to alpha in the intro (#5744) 2021-03-05 21:15:00 -08:00
Yury Semikhatsky ea9485ec9a
docs: document PlaywrightException in java (#5743) 2021-03-05 15:32:33 -08:00
Yury Semikhatsky 70beef83d0
docs: rename with* to set* for java (#5737) 2021-03-05 13:50:34 -08:00
Yury Semikhatsky 0306fcb11b
docs: add java examples for CLI (#5727) 2021-03-05 10:13:02 -08:00
Pavel Feldman 8ffcbb3808
docs: add a pom.xml example for java intro (#5720) 2021-03-04 15:51:26 -08:00
Anže Vodovnik 5c46a61dba
docs(dotnet): csharp example for worker (#5718) 2021-03-04 19:05:50 +01:00
Anže Vodovnik 2e4f645488
docs(dotnet): csharp mouse example (#5717) 2021-03-04 19:03:51 +01:00
Pavel Feldman a9238ce2e1
feat(debug): introduce npx playwright debug (#5679) 2021-03-03 22:25:14 -08:00
Yury Semikhatsky ff91858bd3
docs: instpector launch params for java (#5711) 2021-03-03 15:17:22 -08:00
Yury Semikhatsky 217a593e1d
docs: remove current accessbility api from java (#5708) 2021-03-03 14:56:28 -08:00
Yury Semikhatsky f02429106d
docs: add Page.onceDialog for java (#5706) 2021-03-03 13:13:59 -08:00
Dmitry Gozman d87522f2e6
fix(text selector): revert quoted match to match by text nodes only (#5690) 2021-03-03 10:51:10 -08:00
Anže Vodovnik 986286a396
chore(dotnet): add examples to accessibility docs (#5702) 2021-03-03 19:39:32 +01:00
Max Schmitt 2a6bb50425
docs(python): fix outdated waitForResponse example (#5685) 2021-03-03 09:20:06 -08:00
Yury Semikhatsky 30e88c36fa
docs: enable BowserType.connect in java (#5686) 2021-03-02 16:25:22 -08:00
Yury Semikhatsky 2973eceaef
docs: string constant quoting (#5681) 2021-03-02 11:44:14 -08:00
Pavel Feldman 19bd32f6c7
docs: add video and proxy docs (#5668) 2021-03-01 20:14:19 -08:00
Yury Semikhatsky f925a033e2
fix(docs): broken link to method (#5669) 2021-03-01 17:37:30 -08:00
Yury Semikhatsky 9042ca2149
docs: rename Page.console to consoleMessage in java (#5640) 2021-03-01 15:20:42 -08:00
Pavel Feldman cd2e976c98
docs: unfork installation docs (#5661) 2021-03-01 15:10:47 -08:00
Yury Semikhatsky cad763491e
docs: spread parameters of page.setViewportSize in java (#5664) 2021-03-01 13:35:17 -08:00
Andrey Lushnikov ee69de7726
docs: docs typos (#5658) 2021-03-01 11:53:27 -08:00
Anže Vodovnik 86c7d77967
chore(dotnet): handle setters and ordering bug (#5654) 2021-03-01 18:49:14 +01:00
Yury Semikhatsky 6c9e806672
docs: add java snippets to the examples in guides (#5638) 2021-03-01 09:18:44 -08:00
Anže Vodovnik 28f3fe8e48
chore(dotnet): generate dotnet API from Markdown (#5089)
Introduces the generator for the .NET API surface to be used by the .NET language port to ensure greater consistency with other language ports.
2021-02-26 18:04:03 +01:00
Dmitry Gozman 96e099aca3
docs: use "argument: <type>" notation for events (#5626) 2021-02-25 22:22:47 -08:00
Yury Semikhatsky cb0a890a09
docs: java snippets for api classes (#5629) 2021-02-25 22:03:39 -08:00
Max Schmitt 612bb022a5
docs(intro): fixed wrong Python option (#5625) 2021-02-25 21:01:10 -08:00
Andrey Lushnikov b285936721
docs: more clarity in the attribute selectors (#5621)
Fixes #5615
2021-02-25 10:42:52 -08:00
Dmitry Gozman 0102e080f6
fix(text selector): make quoted selector match by text nodes (#5603)
This change turns quoted match to be case-sensitive (as before),
but not strictly full-string for the whole element's text.

This is a fix for a case where element contains text nodes and child elements:
```html
<div>text1<span>child node</span>text2</div>
```
We now match this div by `text="text1"` and `text="text2"`.
2021-02-24 16:32:38 -08:00
Yury Semikhatsky f85deeba01
docs: no [File] links (#5601) 2021-02-24 14:29:14 -08:00
Pavel Feldman aa94dfbcb6
chore: remove invalid link from release notes (#5577) 2021-02-24 09:30:41 -08:00
Andrey Lushnikov 8f79b8c175
docs: update release-notes.md (#5571) 2021-02-23 18:46:47 -08:00
Yury Semikhatsky ec9a53495a
docs: describe playwright.create in java (#5566) 2021-02-23 16:43:37 -08:00
Yury Semikhatsky 4f9b7d5ad6
docs: add intro docs for java (#5563) 2021-02-23 13:23:44 -08:00
Yury Semikhatsky 0ad2aceb2d
docs: filter out devices section in java (#5562) 2021-02-23 12:51:38 -08:00
Yury Semikhatsky 1ee46a8cc0
docs: fix docusaurus build (#5554) 2021-02-22 16:37:16 -08:00
Naohisa Murakami cadcd535e0
docs(why-playwright): fix link to downloads doc (#5505)
The document for file downloads is in `downloads.md` not in `network.md` (this change was applied in https://github.com/microsoft/playwright/pull/5042).
2021-02-22 15:30:51 -08:00
Arjun Attam 75ee7279cf
docs(api): fix api reference links for textContent (#5498) 2021-02-22 15:29:38 -08:00
Yury Semikhatsky c3ee1cf9c7
chore(docs): use shared template for waitFroNavigation.url (#5520) 2021-02-22 10:23:02 -08:00
Pavel Feldman 65bf44d52b
docs(inspector): add initial inspector docs (#5541) 2021-02-21 18:36:39 -08:00
Dmitry Gozman 058ce60511
docs: combine text sections in selectors doc (#5528) 2021-02-19 16:28:35 -08:00
Yury Semikhatsky 6841da1487
docs: always use number for polling option in java (#5519) 2021-02-19 12:19:34 -08:00
Anže Vodovnik 48f7a37259
docs(csharp): trimming to avoid broken refs (#5330) 2021-02-19 09:37:03 -08:00
Anže Vodovnik 9b73edfa19
chore(docs): fix invalid markdown reference (#5479) 2021-02-18 11:12:08 -08:00
Yury Semikhatsky 291b6d00f8
docs: use frameByUrl to find frame by URL (#5451) 2021-02-12 15:52:31 -08:00
Yury Semikhatsky 529e39872f
docs: selector engine script type (#5450) 2021-02-12 14:30:16 -08:00
Yury Semikhatsky 7e7d3db96d
docs: update init script type for java and C# (#5449) 2021-02-12 14:16:38 -08:00
Yury Semikhatsky 55614c7cc8
docs: replace bool with boolean (#5431) 2021-02-12 09:19:41 -08:00
Yury Semikhatsky ccfb3c3a1e
docs: add callback description to waitForNavigation (#5433) 2021-02-12 09:15:18 -08:00
Yury Semikhatsky 7551c01a84
docs: remove devices property from c# and java (#5423) 2021-02-11 12:26:10 -08:00
Dmitry Gozman 99f8e1cf63
docs: document Android and friends (#5415)
These are experimental, currently available through `_android`.
2021-02-11 10:31:57 -08:00
Yury Semikhatsky 60e9216ebb
docs: change page error type to string (#5412) 2021-02-10 16:12:04 -08:00
Joel Einbinder dca70abbd3
feat(chromium): connect to a browser over cdp (#5207) 2021-02-10 14:00:02 -08:00
Yury Semikhatsky 7933cfc7df
docs: inline Location methods into ConsoleMessage in java (#5402) 2021-02-10 12:54:44 -08:00
Yury Semikhatsky 90dbe35df0
docs: exclude recordHar field from java (#5401) 2021-02-10 11:41:55 -08:00
Dmitry Gozman c12374ea07
feat(docs): improve link validation (#5394) 2021-02-10 07:13:14 -08:00
Dmitry Gozman 78ab2955f3
fix(isVisible): do not wait for the selector to be resolved (#5393) 2021-02-10 07:12:43 -08:00
Dmitry Gozman 4d4efccb3e
docs: add release notes doc (#5391) 2021-02-09 21:44:16 -08:00
Yury Semikhatsky 716bd4211d
docs: spread RecordHar options in java (#5390) 2021-02-09 17:33:28 -08:00
Yury Semikhatsky 152701a273
docs: rename viewport option to viewportSize in java, C# (#5383) 2021-02-09 16:50:32 -08:00
Yury Semikhatsky 3695dab1d5
docs: split RecordVideo object into dir and size options in java (#5389) 2021-02-09 16:44:50 -08:00
Yury Semikhatsky adeb2348cf
docs: change WebSocket.frame* event type to WebSocketFrame in java (#5384) 2021-02-09 12:11:48 -08:00
Dmitry Gozman b50c363bba
docs(selectors): add quick guide section (#5346) 2021-02-08 19:51:11 -08:00
Yury Semikhatsky ef9995e694
docs: make pdf options strings in java and C# (#5369) 2021-02-08 18:07:27 -08:00
Yury Semikhatsky 4bfdaa384b
docs: fix playwright.dev generation error (#5360) 2021-02-08 12:27:17 -08:00
Yury Semikhatsky f35acc258b
docs: improve enum naming (#5359) 2021-02-08 11:58:25 -08:00
Arjun Attam 48a295dcf7
docs(api): stock browsers for media codecs (#5352)
* docs(api): stock browsers for media codecs

* Update docs/src/api/class-browsertype.md

Co-authored-by: Max Schmitt <max@schmitt.mx>

* Update docs/src/api/class-browsertype.md

Co-authored-by: Max Schmitt <max@schmitt.mx>

Co-authored-by: Max Schmitt <max@schmitt.mx>
2021-02-08 18:50:11 +05:30
Dmitry Gozman f094f65ef3
docs: add section for custom setup codegen (#5339) 2021-02-06 14:57:01 -08:00
Yury Semikhatsky a1b3164864
docs: fix nested union handling (#5341) 2021-02-05 16:32:13 -08:00
Yury Semikhatsky d3cc1d7648
docs: add name for SameSiteEnum (#5340) 2021-02-05 16:13:48 -08:00
Yury Semikhatsky 4b74f5693c
docs: add enum aliases (#5335) 2021-02-05 15:28:48 -08:00
Yury Semikhatsky 494f0f63cc
docs: update route callback type for java (#5324) 2021-02-05 09:39:03 -08:00
Yury Semikhatsky 28e5975772
docs: define java specific waitFor* methods (#5315) 2021-02-04 21:15:14 -08:00
Anže Vodovnik ff06399afd
docs(csharp): events convention based naming fix for csharp (#5238)
* docs(gen): Updating events names to camelCase.
* docs(gen): updating generator to match new assumption for event names
* docs(gen): renaming references to events
2021-02-04 19:34:09 +01:00
Pavel Feldman fe2c529fda
docs: complete sentences with full stop (#5298) 2021-02-03 18:25:06 -08:00
Pavel Feldman 9841f6dbcb
chore: remove the 1.8.0a1 mentions (#5297) 2021-02-03 18:10:55 -08:00
Pavel Feldman 847bea2f83
chore: remove force_expr parameter from python api (#5295) 2021-02-03 16:39:08 -08:00
Pavel Feldman 34adc28ed3
feat(pause): make page.pause public (#5288) 2021-02-03 16:01:51 -08:00
Yury Semikhatsky c0480e5905
docs: skip Respone.json and Request.postDataJSON in Java (#5292) 2021-02-03 15:02:22 -08:00
Yury Semikhatsky 1c65b592d0
docs: use separate options for string and buffer body (#5291) 2021-02-03 14:56:17 -08:00
Yury Semikhatsky 080a9529b3
docs: rename Route.continue_ to Route.resume in java and C# (#5290) 2021-02-03 13:40:58 -08:00
Yury Semikhatsky 6c44a781c7
docs: make Request.failure return string by default (#5289) 2021-02-03 13:33:46 -08:00
Yury Semikhatsky a8425d33dd
docs: change Accessibility.snapshot type to string in java and c# (#5287) 2021-02-03 12:23:02 -08:00
Yury Semikhatsky eee2d02290
docs: change Accessibility.snapshot type to string in java and c# (#5286) 2021-02-03 12:19:25 -08:00
Dmitry Gozman 53ed35ef96
feat(dialogs): auto-dismiss dialogs when there are no listeners (#5269)
This makes dialogs disappear and prevents stalling.

Pros:
- No need to worry about dialogs for most users.
- Those that wait for a specific dialog still get to control it.

Cons:
- Those who use Playwright to show interactive browser will have
  to add an empty 'dialog' handler to prevent auto-dismiss.
  We do this in cli.
2021-02-03 10:34:45 -08:00
Yury Semikhatsky 4cd0d3e5da
docs: change StorageState type to string in java and C# (#5268) 2021-02-02 17:48:32 -08:00
Dmitry Gozman d96c547389
docs: note that user data dir is a parent of profile path (#5262)
Copied from https://chromium.googlesource.com/chromium/src/+/master/docs/user_data_dir.md#current-location
to help users that copy "Profile Path" to be used as user data dir.
2021-02-02 13:28:41 -08:00
Yury Semikhatsky e0f41bf1fd
docs: change default return type of Response.finished to string (#5261) 2021-02-02 12:18:05 -08:00
Yury Semikhatsky c51a1f96e5
docs: update type of env in the remaining places (#5254) 2021-02-02 10:57:22 -08:00
Yury Semikhatsky cee394d6e0
docs: split ignoreDefaultArgs into 2 options for java (#5251) 2021-02-02 10:46:36 -08:00
Yury Semikhatsky 5564b203d9
docs: mark ChromiumBrowserContext as js and python specific (#5255) 2021-02-02 10:21:27 -08:00
Yury Semikhatsky 198e403c14
docs: add missing java.md (#5245) 2021-02-01 12:05:01 -08:00
Pavel Feldman e0e38706e4 docs: fix Python snippet casing (2) 2021-02-01 11:47:03 -08:00
Pavel Feldman 174b6aa2da
docs: fix Python snippet casing (#5244) 2021-02-01 11:44:39 -08:00
Pavel Feldman 1db5ef24a8
docs: document electron api (#5229) 2021-02-01 11:43:26 -08:00
Yury Semikhatsky e71ef7949b
docs: add java traits to some methods (#5222) (#5243) 2021-02-01 11:13:13 -08:00
Pavel Feldman 82bb92f103 Revert "docs: add java traits to some methods (#5222)"
Breaks playwright.dev
2021-01-30 22:15:56 -08:00
Yury Semikhatsky 9c4668685d
docs: add java traits to some methods (#5222) 2021-01-29 19:15:25 -08:00
Yury Semikhatsky a1d875ed97
docs: make inline refs us parameter name instead of its alias (#5219) 2021-01-29 16:02:17 -08:00
Anže Vodovnik dbcdf9dcd7
chore(docs): aliases for dotnet/chsarp docs. (#5162)
Co-authored-by: Yury Semikhatsky <yurys@chromium.org>
2021-01-29 11:08:22 -08:00
Yury Semikhatsky 21041bc331
docs: support argument overrides (#5200) 2021-01-28 17:51:41 -08:00
Pavel Feldman 8581e3e950
fix(docs): a couple of broken links (#5211) 2021-01-28 15:15:29 -08:00
Pavel Feldman ff6b2b1dd4
chore: make emulate media params be options (#5172) 2021-01-27 14:19:37 -08:00
Pavel Feldman 35baf335d8 Revert "docs: update langs fields to include java (#5161)"
iThis broke Python docs.
2021-01-27 11:31:34 -08:00
Yury Semikhatsky d0ab0bd8f2
docs: update langs fields to include java (#5161) 2021-01-27 11:11:05 -08:00
Yury Semikhatsky 22fb7448c3
docs: share proxy documentation, exclude cdp session from java (#5150) 2021-01-25 16:53:47 -08:00
Dmitry Gozman 894abbfe28
feat(selectors): has-text pseudo-class (#5120)
This pseudo-class matches approximately when
`element.textContent.includes(textToSearchFor)`.
2021-01-25 14:19:07 -08:00
Dmitry Gozman d78d337e29
feat(fill): make fill work when targeting elements inside the label (#5143) 2021-01-25 13:40:19 -08:00
Yury Semikhatsky a4eb121399
fix: add parameter to close/crash/disconnected etc events (#5098) 2021-01-22 09:58:31 -08:00
Pavel Feldman dcf041a266
docs: update ci docs to better help Python users (#5095) 2021-01-21 16:41:42 -08:00
Dmitry Gozman 7a4b94e66c
feat(selectors): nth-match selector (#5081)
Introduces :nth-match(ul > li, 3) css extension, with one-based index.
2021-01-21 16:39:49 -08:00
Pavel Feldman 8f06761ba1
docs: link to the new docs from source (#5092) 2021-01-21 14:35:20 -08:00
Arjun Attam 043ed975c1
docs: update limitations to reflect java bindings (#5086) 2021-01-21 18:42:21 +05:30
Pavel Feldman 45c33ae02f
docs: fix some 1.8 docs nits (#5078) 2021-01-20 16:06:26 -08:00
Pavel Feldman f10f170946
docs: add file chooser example, remove links to js samples (#5054) 2021-01-20 08:12:39 -08:00
Yury Semikhatsky 615954b285
fix(dom): make selectOption wait for options (#5036) 2021-01-19 11:27:05 -08:00
Dmitry Gozman 19acf998da
docs: minor updates to selectors.md (#5055) 2021-01-19 10:48:18 -08:00
Dmitry Gozman 0586c2554f feat(text selector): normalize whitespace for quoted match (#5049)
This changes quoted text selector like `text="Foo Bar"` to perform
normalized whitespace match.

Most of the time users want to match some string visible on the page,
and that always means normalized whitespace.

We keep the case sensitivity and full-string vs substring difference
between quoted and unquoted matches.
2021-01-19 09:30:34 -08:00
Pavel Feldman 9e3bd78649
docs: update selectors doc to be more like a guide (#5048) 2021-01-18 20:59:16 -08:00
Pavel Feldman 01fb3a6045
docs: extract handles, screenshots, videos docs (#5045) 2021-01-17 21:09:40 -08:00
Dmitry Gozman 17e953c2d8
chore: make generate_types not depend on the source (#5040)
The only dependency is a list of devices that we
can turn into a js file.
2021-01-17 12:09:20 -08:00
Pavel Feldman 1fc02e8823
docs: add dialogs and downloads docs (#5042) 2021-01-16 14:37:13 -08:00
Dmitry Gozman 2db02c9a05
docs(python): update installation docs (#5039) 2021-01-16 06:42:40 -08:00
Pavel Feldman e67d563798
docs: don't use lang suffix in the intro url (#5035) 2021-01-15 17:59:19 -08:00
Pavel Feldman 41e394bc22
docs: allow overriding return types (#5031) 2021-01-15 16:01:41 -08:00
Pavel Feldman 6e94c11034
docs: prepare docs for tabbed snippets (#5026) 2021-01-15 12:30:10 -08:00
Pavel Feldman 56ba0b3cd9
docs: brush up some python docs (#5027) 2021-01-15 09:12:47 -08:00
Pavel Feldman 7701176b0a
docs: allow lang-specific sh snippets (#5024) 2021-01-14 18:19:02 -08:00
Dmitry Gozman e85f278869
docs: more python docs and snippets (#5021) 2021-01-14 15:01:39 -08:00
Pavel Feldman 5dcb7bb290
docs: declare expect_navigation as returning Response (#5020) 2021-01-14 14:40:19 -08:00
Pavel Feldman 1648d23551
docs: add python snippets for api classes (follow up) (#5018) 2021-01-14 11:09:44 -08:00
Pavel Feldman 8354a91d0e
docs: add python snippets for api classes (#5011) 2021-01-14 07:48:56 -08:00
Pavel Feldman 5408e26e02
docs: add python snippets for class Page (#5010) 2021-01-13 21:03:35 -08:00
Yury Semikhatsky df53cb2f83
docs: fix inline code quoting (#4992) 2021-01-13 08:56:57 -08:00
Pavel Feldman cac119f3bf
docs: python api review (#4986) 2021-01-12 12:14:27 -08:00
Dmitry Gozman d62b661cfa
docs: rename proximity selectors to position selectors (#4975) 2021-01-11 18:25:41 -08:00
Pavel Feldman cb6e4a6657
chore: update snippets in python docs (#4976) 2021-01-11 17:04:24 -08:00
Pavel Feldman 7a8214cd95
chore: prepare non-api docs for non-js variants (#4969) 2021-01-11 09:34:49 -08:00
Pavel Feldman 4dbbb47583
docs: document Python's expect_event methods (#4963) 2021-01-10 21:00:52 -08:00
Pavel Feldman e67d89747a
chore: update docs to cover python specifics (#4960) 2021-01-10 18:18:35 -08:00
Dmitry Gozman 5a2cfdbd47
api: add isChecked method (#4953)
This adds `{Page,Frame}.isChecked(selector)` and `ElementHandle.isChecked()` methods.

Useful to do assertions in tests:
```js
await page.click('text="Add TODO"');
expect(await page.isChecked('.item-done')).toBe(false);
```
2021-01-08 17:36:17 -08:00
Pavel Feldman 3b617b3709
docs: validate member links (#4955) 2021-01-08 16:36:52 -08:00
Pavel Feldman b7e0b1b393
docs: annotate evaluate(pageFunction) js-specific (#4954) 2021-01-08 16:17:54 -08:00
Pavel Feldman 114d586f07
chore: add python aliases (#4949) 2021-01-08 15:00:14 -08:00
Dmitry Gozman 3f904056ee
api: add isVisible, isHidden, isEnabled, isDisabled and isEditable (#4915)
These methods are useful for verification in tests, e.g.
```js
expect(await page.isEnabled(':text("Remove All")')).toBe(false);
await page.click(':text("Add Item")');
expect(await page.isVisible('.item:text("new item")')).toBe(true);
expect(await page.isEnabled(':text("Remove All")')).toBe(true);
```
2021-01-08 12:27:54 -08:00
Dmitry Gozman 498f9a52c6
docs: update authentication guide to use storageState() api (#4948) 2021-01-08 12:24:10 -08:00
Dmitry Gozman d08cbc33a7
docs: brush up selector docs (#4939)
docs: brush up selector docs

- Remove duplication
- Move extensions block to ChromiumBrowser
- Remove accidental ":xpath" extension from css selectors
- Document :has and :is extensions
2021-01-08 10:59:24 -08:00
Pavel Feldman 97de9209a6
docs: move links into playwright.dev (#4947) 2021-01-08 09:12:54 -08:00
Max Schmitt 77bfcd2c74
chore: add some Python language snippets (#4933) 2021-01-08 08:39:33 -08:00
Ali Naqvi 07cb5f71e3
docs: Added Crystal port to showcase (#4945) 2021-01-08 06:04:39 -08:00
Dmitry Gozman 2072c61461
docs: add Java to the list of language ports (#4940) 2021-01-08 06:02:54 -08:00
Pavel Feldman 15c0a29526
docs: split nodejs and python links (#4942) 2021-01-07 23:37:53 -08:00
Pavel Feldman 54c06a1b45
chore: mark methods as js-only, add python-specific methods (#4938) 2021-01-07 16:12:25 -08:00
Pavel Feldman e56832b646
chore: language-specific members api (#4936) 2021-01-07 15:00:04 -08:00
Dmitry Gozman 8d649949c0
docs: move Go port to showcase (#4934)
playwright-go is an unofficial port, so we put it to a new section in showcase.
2021-01-07 14:54:09 -08:00
Dmitry Gozman eb9ea20511
feat(selectors): proximity selectors (#4923) 2021-01-07 14:12:59 -08:00
Pavel Feldman bdf12e32e4
docs: split api-body into classes (#4931) 2021-01-07 11:46:05 -08:00
Pavel Feldman 4cd989c653
docs: introduce deprecation annotation and any type (#4930) 2021-01-07 11:11:40 -08:00
Pavel Feldman 913f85249f
docs: make all links relative (#4926) 2021-01-06 20:02:51 -08:00
Pavel Feldman 2311c282d6
docs: pref docs to be language-specific (#4916) 2021-01-06 11:59:29 -08:00
Pavel Feldman b6cd385a67
docs: mark some paths as such (#4896) 2021-01-05 17:05:43 -08:00
Dmitry Gozman b00559bd53
docs: add save/load storage to cli docs (#4899) 2021-01-05 13:40:42 -08:00
Dmitry Gozman 35ecf69dd2
chore: fix lint (#4898) 2021-01-05 13:24:22 -08:00
Yury Semikhatsky 0f8d7ec0a6
docs: improve waitForElementState documentation (#4883) 2021-01-05 10:56:02 -08:00
Pavel Feldman 4996eacd5b
docs: split numbers into integers and floats (#4887) 2021-01-05 09:42:49 -08:00
Pavel Feldman 80f8a0fdf5
doc: further align docs w/ playwright.dev (3) (#4884) 2021-01-04 17:59:23 -08:00
Pavel Feldman 31ffeb32e3
doc: further align docs w/ playwright.dev (2) (#4871) 2021-01-04 13:50:29 -08:00
Pavel Feldman ae935a43d9
doc: further align docs w/ playwright.dev (#4866) 2021-01-03 08:47:29 -08:00
Pavel Feldman e0e836cb6e
doc: split classes into files (#4864) 2021-01-01 15:17:27 -08:00
Pavel Feldman ba291372e7
docs: generate all docs off docs-src (#4858) 2020-12-30 18:04:51 -08:00
Pavel Feldman a5bd415edc
doc: generate class toc as a part of the api generation (#4852) 2020-12-29 17:35:01 -08:00
Pavel Feldman 722db85e1c
doc: generator code health (2) (#4843) 2020-12-28 23:42:51 -08:00
Dmitry Gozman 7f8717f139
feat(cli): add docs (#4837)
feat(cli): add docs
2020-12-28 17:38:44 -08:00
Dmitry Gozman 94077e0e74
chore: remove JS types checker, rely on typescript (#4831)
chore: remove JS types checker, rely on typescript

We keep checking that all methods are documented, and no extra methods
are documented, but rely on typescript for everything else.
2020-12-28 10:54:47 -08:00
Pavel Feldman a446792c18
docs: generate api.md off documentation model (#4832) 2020-12-28 07:03:09 -08:00
Pavel Feldman 2cb5770183
docs: move playwright module into api-body.md (#4827) 2020-12-26 15:33:29 -08:00
Pavel Feldman 15cdfd1cc1
chore: generate types, api.json off md rather than html (#4825) 2020-12-26 14:31:41 -08:00
Pavel Feldman 277d255fc3
chore: brush up md processing (#4819) 2020-12-23 19:35:43 -08:00
Dmitry Gozman f709e2300c
feat(cli): bring selector generator into playwright (#4795)
Also remove unused `SelectorEngine.create` function and add tests.
2020-12-23 12:44:47 -08:00
Pavel Feldman 2e220df7ac
docs: explicitly annotate methods and parameters (#4771) 2020-12-18 15:31:34 -08:00
Pavel Feldman d498b45005
docs: remove mentions of nodejs, promises and resolves (#4768) 2020-12-18 12:28:09 -08:00
Dmitry Gozman 355a58e616
feat(storage): accept path in save/load storage apis (#4714)
Also make Firefox accept `expires: -1` cookies.
2020-12-14 16:03:52 -08:00
Yury Semikhatsky 0b8f34e726
docs: rename aggregate parameter objects to params (#4715) 2020-12-14 15:27:02 -08:00
Andrey Lushnikov c5bb08c5f2
docs: remove outdated troubleshooting (#4706)
Most of the troubleshooting.md doc is not relevant any more:
- dependencies are maintained and helped with by launch doctor
- sandbox is disabled in Chromium by default

References #4683
2020-12-14 08:16:36 -08:00
Andrey Lushnikov 8d574a76bf
docs: update docker readme
References #4683
2020-12-14 08:11:05 -08:00
Pavel Feldman f20518f252
fix(har): do not complain about a lot of listeners (#4675) 2020-12-11 23:15:36 -08:00
Dmitry Gozman c8e9b0542b
feat(selectors): disable proximity selectors (#4659)
These are not ready for prime time yet.
2020-12-10 10:04:10 -08:00
Dmitry Gozman b67e022111
feat(selectors): update new text selector (#4654)
We now default to `text` that does substring case-insensitive match
with normalized whitespace. `text-is` matches the whole string.
`matches-text` is renamed to `text-matches`.
2020-12-09 16:05:51 -08:00
Dmitry Gozman ab44d682ca
feat(selectors): remove index for now, add documentation (#4640) 2020-12-09 13:08:37 -08:00
Yury Semikhatsky 6c4d3b86f6
chore(docker): put browser deps instructions first (#4637) 2020-12-08 10:36:37 -08:00
Max Schmitt 71b7b488f4
chore: use Node.js 14 (new LTS) in Docker image (#4262)
Discussion / background: https://github.com/microsoft/playwright/pull/3642#issuecomment-686640755

Closes #4254
2020-12-06 18:24:27 -08:00
Pavel Feldman a3a31bc837
doc: add the mobile.md doc (#4612) 2020-12-05 21:19:22 -08:00
Pavel Feldman 1717cbd3d5
doc: describe return value as a part of method (#4608) 2020-12-05 15:29:16 -08:00
Pavel Feldman 96a1f79e96
docs: reformat api-body to allow multiline params documentation (#4604) 2020-12-04 18:05:35 -08:00
Pavel Feldman 150d778ca7
docs: disambiguate events (#4597) 2020-12-04 11:09:20 -08:00
Pavel Feldman 761b78efc0
docs: generate links based on the method names (#4593) 2020-12-04 09:03:33 -08:00
Westbrook Johnson 7213794a65
Correct typo in "emulateMedia" call example. (#4592) 2020-12-03 22:28:50 -08:00
Pavel Feldman 2452d07ff7
docs: generate method signatures in docs (#4590) 2020-12-03 22:28:11 -08:00
Pavel Feldman 0eb6f85617
docs: pretty-print api.md (#4588) 2020-12-03 18:05:36 -08:00
Pavel Feldman 5d47a9744c
docs: reformat template parameters (#4587) 2020-12-03 16:02:34 -08:00
Max Schmitt d2b7e0d1df
fix(types): add typed cb for Page.waitForResponse (#4575) 2020-12-03 09:20:53 -08:00
Pavel Feldman 95c502d274
docs: use templates to reuse documentation properties (#4578) 2020-12-03 09:11:48 -08:00
Pavel Feldman 1fa7e86ea9
docs: generate api.md (#4576) 2020-12-02 13:50:10 -08:00
Dmitry Gozman 8cc8b777d0
docs: fix auth example (#4528)
We should wait for selector instead of asserting it.
2020-11-25 11:32:46 -08:00
Dmitry Gozman 240d51f1d3
docs: improve boundingBox documentation (#4500)
Also add a test to verify it.
2020-11-19 13:55:14 -08:00
Darío Kondratiuk c1a5cd51b1
fix(docs): remove extra code in timing docs (#4466) 2020-11-17 09:58:38 -08:00
Yury Semikhatsky dfe3552b59
feat(route): support URL overrides in continue (#4438) 2020-11-16 09:59:00 -08:00
Pavel Feldman d20e56e197
feat(state): allow getting / setting context state (#4412) 2020-11-13 14:24:53 -08:00
Joel Einbinder d8837a8040
fix(docs): add tap to actionability (#4413) 2020-11-12 02:33:04 -08:00
Dmitry Gozman c384313058
feat(fill): allow filling based on the label selector (#4342)
This enables filling the input based on the connected label:

```html
<label for=target>Name</label><input id=target>
```

```js
await page.fill('text=Name', 'Alice');
```
2020-11-05 05:22:49 -08:00
Dmitry Gozman 1c39689dd6
api(videos): introduce a single recordVideo option bag (#4309)
api(videos): introduce a single recordVideo option bag

Currently contains `dir` and `size`, previously known as
`videosPath` and `videoSize`.
2020-11-02 19:42:05 -08:00
Pavel Feldman ac8ab1e1b5
feat(websocket): add WebSocket.waitForEvent and isClosed (#4301) 2020-11-02 14:09:58 -08:00
Dmitry Gozman 9c80cbdf9e
fix(docs): small docs changes for new apis (#4305) 2020-11-02 12:48:05 -08:00
Pavel Feldman 333916a83d
infra: bump to next version on trunk at a branch point (#4288) 2020-10-29 17:46:07 -07:00
Pavel Feldman 914f6372ec
feat(proxy): enable per-context http proxy (#4280) 2020-10-29 16:12:30 -07:00
Arjun Attam 05fd572766
docs(api): remove * from permissions (#4260) 2020-10-27 11:22:15 -07:00
Pavel Feldman be8428475d
feat(websocket): implement Web Sockets for Chromium & WebKit (#4234) 2020-10-26 22:20:43 -07:00
Pavel Feldman 7fc4b797eb
feat(har): allow saving har for context (#4214) 2020-10-26 14:32:07 -07:00
Max Schmitt 8f3c0d5420
fix(docker): add pwuser to Docker focal image (#4201) 2020-10-23 08:14:15 -07:00
Pavel Feldman 8a42cdad30
feat(timing): introduce resource timing (#4204) 2020-10-21 23:25:57 -07:00
Darío Kondratiuk bed304b191
doc: update playwright-sharp link (#4202) 2020-10-21 17:12:20 -07:00
Joel Einbinder 92dda698f8
feat: tap (#4097) 2020-10-19 10:07:33 -07:00
Pavel Feldman ef3d3ca58e
doc(overrides): remove "one of" that was misleading (#4168) 2020-10-18 23:03:07 -07:00
Yury Semikhatsky 25cb649ea1
docs: fix Video.path() type (#4141) 2020-10-14 10:44:21 -07:00
Pavel Feldman 5a7685665a
api(video): restore the missing video path accessor (#4132) 2020-10-13 22:15:51 -07:00
Dana Woodman d6240a345d
docs(showcase): remove codex from users 2020-10-13 11:33:16 -07:00
Dmitry Gozman 331bb81820
docs: add note about videos saving on context closure (#4126) 2020-10-13 09:33:31 -07:00
Andrey Lushnikov 80773fa96b
fix: disable chromium sandbox by default (#4090)
Certain environments, e.g. Azure Pipelines, override default user
inside container with a custom one, whereas fail to pass proper
seccomp profile for the docker image.

As a result, chromium sandboxing fails.

To ease life of devops deploying tests in various CI's, this patch
disables Chromium sandbox by default.

References #4084
2020-10-09 11:28:22 -07:00
Max Schmitt e6a1a1c129
fix(docker): add again pwuser (#3899)
In version 1.4 we introduced a breaking change for the Docker behaviour since we removed the pwuser completely. In this PR I add this user again and create a symlink so that root uses the browser of the pwuser. This has also the benefit, that the users who wants to use the seccomp profile that they don't have to create this user.

Reference: https://playwright.slack.com/archives/CSUHZPVLM/p1600240776120400

Tested on root and on pwuser. Works.

References #4084
2020-10-08 11:53:07 -07:00
Yury Semikhatsky 09906949c2
docs(page): clarify page.close({runBeforeUnload: true}) behavior (#4086) 2020-10-07 13:27:23 -07:00
Arjun Attam aafe5dac0d
docs: add videos to verification doc (#4071)
* docs: add videos to verification doc

* review changes
2020-10-07 09:04:53 -07:00
Dmitry Gozman 5e42029fce
api: allow exposeBinding to pass handles (#4030)
This adds an option `{ handle: true }` to pass a single handle instead of arbitrary json values.
2020-10-01 22:47:31 -07:00
Tom Jenkinson c2171218fa
test: add a test for request interception with redirects (#3994) 2020-10-01 19:55:39 -07:00
Dmitry Gozman 4a77363af7
api: update videos api, hide tracing (#4015) 2020-10-01 11:06:19 -07:00
Shawn Jaques 49779d5657
Update showcase.md (#3969)
Added Root Cause OSS under tools.
2020-09-24 08:47:10 -07:00
Max Schmitt 967f3b7505
devops(docker): push focal images to CR (#3950)
This will end up in the following Docker tags:
- focal <- new
- bionic < old as before
- latest <- old as before, keep bionic for now until EOL is reached
- v1.4 <- old as before, is bionic
- v1.4-focal <- new, is focal

Depends on https://github.com/aslushnikov/devops.aslushnikov.com/pull/3 to ensure it works.
Relates to https://github.com/microsoft/playwright/issues/3791.
2020-09-23 15:10:43 -07:00
Max Schmitt becdccdf03
devops(docker): added Dockerfile for Ubuntu 20 focal (#3891)
Each Ubuntu and Debian release has a code name. Ubuntu 18(bionic), Ubuntu 20(focal). This adds the Dockerfile for Ubuntu20.
Next steps and follow up changes:
- add it to the devops site, so we are sure all tests are passing, locally they did
- deploy it to the MCR, naming needs to be clarified, probably just as "focal".

This naming schema allows us in the future to add Debian support too. But we should wait until Headless WK is fixed.

Relates #3791
Relates #2758
Closes #3338
2020-09-21 08:47:44 -07:00
Dmitry Gozman df777344a3
api(video): simplify video api (#3924)
- This leaves just `recordVideos` and `videoSize` options on the context.
- Videos are saved to `artifactsPath`. We also save their ids to trace.
- `context.close()` waits for the processed videos.
2020-09-18 17:36:43 -07:00
Dmitry Gozman 0ade6af689
api(trace): introduce artifacts options (#3914)
api(trace): introduce artifacts options

This introduces launch({ artifactsPath }) and newContext({ relativeArtifactsPath, recordTrace }) options.
- artifactsPath option controls the directory where all artifacts go. If not passed, artifacts are not collected.
- relativeArtifactsPath can be used to put context-specific artifacts into a subfolder. If not passed, shared artifactsPath is used.
- recordTrace controls trace recording.

We also expose trace types under playwright/types/trace.d.ts.

In the follow up:
- videos will be put into artifactsPath;
- downloads will be put into artifactsPath, or keep using existing downloadsPath when artifactsPath is not specified.
2020-09-18 11:54:00 -07:00
Mikko Korpela 73db4a450e
docs(api): fix typo
Fix typo in fullPage description.
2020-09-16 14:07:27 -07:00
Max Schmitt dfbd1ceacc
docs(languages): added Go reference (#3867) 2020-09-14 07:54:58 -07:00
Max Schmitt beceeaf6a1
feat(browserContext): add BrowserContext.browser() (#3849) 2020-09-14 07:50:47 -07:00
Yury Semikhatsky 40323aa94d
fix(screencast): use viewport as default size (#3844) 2020-09-11 15:14:31 -07:00
Nathan Hoffmann 75e847a6fa
docs(pom.md): fix typo in example function name (#3855)
The patch renames the `goto` function in page object model documentation to `navigate`.

Fixes #3854
2020-09-11 12:28:28 -07:00
Yury Semikhatsky 3495842e7f
docs(screencast): add a snippet for _videostarted (#3842) 2020-09-10 16:32:47 -07:00
Andrey Lushnikov 45542a5334
docs: fix table-of-contents generation (#3840) 2020-09-10 15:14:00 -07:00
Kerkko Pelttari ce30807533
Add RobotFramework Browser library to showcase.md (#3827) 2020-09-10 09:50:31 -07:00
Arjun Attam 4240e1df1d
docs: add page on language bindings (#3819) 2020-09-09 17:33:10 -07:00
Arjun Attam 777689a96a
docs(intro): add cli to getting started (#3821)
* docs(intro): add cli to getting started

* fix doclint
2020-09-09 17:32:49 -07:00
Arjun Attam ee98bd0a29
docs(selectors): update structure and add best practices (#3817)
* docs(selectors): update structure and add best practices

* dgozman comments
2020-09-09 17:14:33 -07:00
Max Schmitt ff0d697151
docs(docker): add note how to use chromium sandbox (#3779) 2020-09-09 11:43:15 -07:00
Yury Semikhatsky 66985fc5f6
feat(screencast): add expreimental public API on context (#3766) 2020-09-04 22:37:38 -07:00
Arjun Attam 25fe115719
docs: update why-playwright.md (#3761)
* docs: update why-playwright.md

* review fixes
2020-09-04 13:34:28 -07:00
Arjun Attam 921c8d8d8c
docs: add help section (#3741) 2020-09-03 16:57:22 -07:00
Max Schmitt 5f6441e6df
chore(docker): use root user in Docker image (#3739)
As discussed offline other big images like Node.js or Nginx use root as the default user and the users in the end can base-off from our image to add their security features.

Not sure if follow up docs changes are required for that.

Fix #3703
Fix #3681
2020-09-02 14:42:01 -07:00
Andrey Lushnikov b7f6a98deb
devops: use a helper script to tag and push docker images (#3737)
It turns out that the new `docker push --all-tags` is not yet available
in the latest docker distribution on Ubuntu 20.04.

This provides a helper script to tag and publish the docker image.
2020-09-02 14:28:01 -07:00
Andrey Lushnikov d71d2f5765
devops: install ssh in the docker image (#3716)
References #3681
2020-09-01 16:43:20 -07:00
Andrey Lushnikov ef5c87ccea
devops: switch docker publishing to a bash script (#3704)
It turns out Github Actions have docker pre-installed.

This patch unifies the codepaths that we use to build docker image
locally and to publish it from CI.

As a result, there's no extra `--prepare-context` argument in
`//docs/docker/build.sh` that was used solely on CI.

References #2926
2020-09-01 11:33:19 -07:00
Amit Zur 8f37d78fd3
Add Applitools SDK to the showcase (#3694)
* Add Applitools

* Add Applitools
2020-08-31 09:52:21 -07:00
Arjun Attam fb6d1ad591
docs(docker): add link to mcr status ui (#3679) 2020-08-28 14:30:51 -07:00
Arjun Attam 2edd6f2824
docs: introduce why-playwright.md (#3666) 2020-08-28 09:38:12 -07:00
Arjun Attam 7444de4b73
docs: update navigation and loading page (#3655)
* docs: update navigation and loading doc

* dgozman comments

* doclint
2020-08-27 17:47:23 -07:00
Andrey Lushnikov 3ea3cf0373
devops: add yarn and git in the docker container (#3651)
This will help consuming docker image as an env for test execution.

Fixes #3529
2020-08-26 20:16:24 -07:00
Andrey Lushnikov c96ea4b6de
chore: remove docker image size computation scripts (#3650)
The scripts are broken atm. They're re-implemented in the
devops website: https://devops.aslushnikov.com for now.
2020-08-26 16:00:34 -07:00
Blake Williams 5f86253ad4
docs: add more detail to waitForNavigation API method (#3635) 2020-08-25 21:05:27 -07:00
Max Schmitt 0af3d8e285
docs(showcases): added example for Heroku (#3414)
Co-authored-by: Arjun Attam <arjunattam@gmail.com>
2020-08-25 10:59:13 -07:00
Max Schmitt aeab0fa330
docs(docker): add note about how to list all tags (#3596)
* docs(docker): add note about how to list all tags

* Update README.md

Co-authored-by: Arjun Attam <arjunattam@gmail.com>
2020-08-25 10:46:21 -07:00
Max Schmitt 72b3147d7c
docs(example): simplified overwriting of requests (#3621) 2020-08-25 10:37:45 -07:00
ragog 2b3a1ae9c6
docs: add theheadless.dev to showcase (#3597) 2020-08-24 08:08:54 -07:00
Dmitry Gozman cd220daa83
chore: move src files to server (#3593) 2020-08-24 06:51:51 -07:00
Dmitry Gozman 18292325b6
api: add waitForElementState('disabled') (#3537)
Allows waiting for the element to be disabled.
2020-08-19 17:20:10 -07:00
Arjun Attam a78d83e833
docs: clarify response and requestfinished events (#3532)
* docs: clarify response and requestfinished events

* fix typo
2020-08-19 13:36:56 -07:00
Dmitry Gozman 0e9793c452
api: ElementHandle.waitForElementState (#3501)
This method waits for visible, hidden, stable or enabled state,
similar to the actionability checks performed before actions.

This gives a bit more control to the user. Some examples:
- Allows to wait for something to be stable before taking a screenshot.
- Allows to wait for the element to be hidden/detached after a specific action.
2020-08-17 16:22:34 -07:00
Dmitry Gozman 85c93e91a7
api: introduce ElementHandle.waitForSelector (#3452)
This is similar to Frame.waitForSelector, but relative to the handle.
2020-08-14 14:47:24 -07:00
Dmitry Gozman dec8fb7890
fix(hover): do not require the element to be enabled before hovering (#3445) 2020-08-14 13:18:32 -07:00
Pavel Feldman 2f5a0a6c07
test: slowly removing testOptions (#3464) 2020-08-14 07:22:54 -07:00
Natan d9727c62df
Typo fix (#3430) 2020-08-13 10:44:17 -07:00
Arjun Attam 06ddacd7be
docs: introduce doc on authentication (#3404) 2020-08-12 16:02:23 -07:00
Dmitry Gozman a574fa6edb
api: add Frame.page() getter (#3392) 2020-08-12 14:45:36 -07:00
Dmitry Shcherbakov 22d1be32fb
docs: add showcase how to use allure-report and jest-circus with playwright (#3408) 2020-08-12 14:34:58 -07:00
Arjun Attam be7db4d2c6
docs(ci): add sample config for jenkins (#3398) 2020-08-12 14:01:55 -07:00
Ross Wollman 079b6e0a66
docs: add getting help section (#3410)
The Playwright Community is awesome and responsive! <3 Let's make the
community as a resource more prominent in the docs. (Currently they just
appear in a footer, but this change calls it out explicitly.)
2020-08-12 10:31:35 -07:00
Arjun Attam 9375cc62b8
docs: introduce docs for page object models (#3391) 2020-08-11 15:46:36 -07:00
Dmitry Gozman 6c68435e7e
docs: make api docs around pointer actions more explicit (#3374)
- Describe performed steps in detail.
- Describe timeout conditions.
2020-08-10 15:08:52 -07:00
Dan Bjorge 6f3f608d5b
docs(showcase.md): add Accessibilty Insights to community showcase (#3368) 2020-08-10 10:22:45 -07:00
Dmitry Gozman c6acc32889
docs(api): explicit nulls, use Serializable and EvaluationArgument more (#3358) 2020-08-07 20:55:22 -07:00
Yevhen 6a19bf5b54
docs(showcase): add expected-condtion-playwright library (#3356)
* docs(api/input): fix typo

* docs(api): remove extra square bracket

* docs(showcase): add expected-condtion-playwright library
2020-08-07 16:29:59 -07:00
Yevhen 3665bb0a9a
docs(api): remove extra closing square bracket, add an opening square bracket. (#3342) 2020-08-07 08:29:31 -07:00
Thad Guidry 9d543f9446
docs: fix typo in Core Concepts doc page (#3343) 2020-08-07 08:27:47 -07:00
Arjun Attam 4ec3290da3
docs(api): replace select-all note with example (#3328) 2020-08-06 21:23:30 -07:00
Dmitry Gozman cdfe73fee3
api(console): make ConsoleMessageLocation properties required (#3290)
Everywhere in our api, possibly missing properties are nullable.
However, to make things easier for everyone, we just default to an
empty url instead, so that users do not have to null-check it.
2020-08-05 22:25:56 -07:00
Pavel Feldman b03b4a5566
chore: doc type nits (#3283) 2020-08-05 09:54:31 -07:00
Arjun Attam 1673e62779
docs: update table of contents for docs sidebar (#3291) 2020-08-04 15:48:32 -07:00
Dmitry Gozman 028dd08155
docs: update documentation for evaluation argument (#3287) 2020-08-04 14:45:34 -07:00
Yury Semikhatsky de55fa6482
fix(webkit): ensure WebKit can play h264 video (#3272) 2020-08-03 16:06:57 -07:00
Dmitry Gozman ba9030e6be
docs: update api.md with more references to actionability (#3255) 2020-07-31 12:16:21 -07:00
Dmitry Gozman 928a1769ef
docs: update docs (#3253)
- Make docs/README.md more prominent, include capabilities
- Link to examples from specific topics
2020-07-31 11:58:12 -07:00
Ross Wollman ce0ddd270b
feat(download): create directories for saveAs (#3249)
This is to match the behavior for screenshots path added in #3247.
2020-07-30 23:21:03 -07:00
Pavel Feldman 93056ed8ef
chore(rpc): more protocol nits (#3246) 2020-07-30 17:51:41 -07:00
Dmitry Gozman 2f95b6e34e
feat(selectors): auto-detect xpath starting with ".." (#3239) 2020-07-30 16:21:48 -07:00
Pavel Feldman 1728a3df93
chore: minor protocol fixes (#3226) 2020-07-30 11:14:41 -07:00
Dmitry Gozman 9132d23b2b
fix(screenshot): wait for stable position before taking element screenshot (#3216)
Same goes for scrollIntoViewIfNeeded.
2020-07-29 16:36:02 -07:00
Max Schmitt 21b1be7351
docs(selectors): fixed selector register example (#3169) 2020-07-29 10:37:57 -07:00
Dmitry Gozman 97c10002e7
api: introduce Browser.version() (#3177) 2020-07-27 13:41:35 -07:00
Tierney Cyren 51ce47f30f
docs: use "Node.js" instead of "Node" (#3176)
* docs: use "Node.js" instead of "Node"

* docs: fix broken anchor
2020-07-27 10:27:41 -07:00
Pavel Feldman e7cca86757
fix(postData): allow overriding binary post data (#3120) 2020-07-24 12:16:45 -07:00
Pavel Feldman 80c0711d98
feat(firefox): roll firefox to r1137 (#3095) 2020-07-22 15:59:37 -07:00
Ross Wollman d8a17fb0ab
api(download): Add saveAs helper (#2872) 2020-07-22 14:55:27 -07:00
Dmitry Gozman ced0bc2d1b
api: make clear the use of null in page.emulateMedia (#3078)
We can pass null to disable emulating particular feature.
This change updates the docs and rpc protocol accordingly.
2020-07-21 18:56:41 -07:00
Andrey Lushnikov c0d9ccfebf
docs: update documentation on Chromium sandbox (#3077)
This patch:
- updates docker seccomp profile to use a slightly modified default docker
profile
- removes SUID sandbox documentation since it doesn't seem to work

References #2745
2020-07-21 17:43:41 -07:00
Andrey Lushnikov 47e30f047b
feat: introduce chromiumSandbox launch option (#3067)
The option is intended to be used instead of the `--no-sandbox`
argument that is accepted exclusively by Chromium and crashes
WebKit.

References #2745
2020-07-21 13:49:09 -07:00
Pavel Feldman 99658c2d32
feat(bringToFront): enable on all browsers (#3052) 2020-07-21 09:36:54 -07:00
Darío Kondratiuk 79d5991a27
doc: Improve unroute documentation (#3026) 2020-07-18 10:54:09 -07:00
Pavel Feldman 6199ba28a9
devops: remove travis, appveyor, circle for now (#3029) 2020-07-18 10:52:47 -07:00
Andrey Lushnikov 7d2078ef6f
devops: bake browsers into Docker image (#2990)
This patch bakes browsers into docker image.

Important observations:
- We now re-build docker image everytime we roll browsers.
- Docker image size almost doubles: from `225MB` to `496MB`.

References #2926
2020-07-17 16:51:39 -07:00
Tapajyoti Bose 16e3776a9c
fix(JSCoverageEntry): added scriptId and isBlockCoverage (#2955) 2020-07-16 20:32:49 -07:00
Andrey Lushnikov 824f6491d3
devops(docker): fix docker for chromium (#2966)
Docker image size doesn't change.
2020-07-15 17:20:48 -07:00
Andrey Lushnikov d750ba38cd
fix(docker): add missing dependencies to docker image (#2963) 2020-07-15 17:15:03 -07:00
Andrey Lushnikov 6c75cbe5f5 docs: fix link to github workflow in releasing doc 2020-07-13 17:24:25 -07:00
Andrey Lushnikov a06ba1c770
devops: add utility to count compressed docker image size (#2920)
This adds a new script to calculate docker image size with
all parent layers.

Note: take this metrics with a grain of salt, since in reality
docker compresses and reuses layers.

Some historic stats obtained with this script:
- **`208MB`** (-33MB) chore(docker): skip "recommended" dependencies (#2917) (1cebf8757c)
- **`241MB`** (-29MB) chore(docker): trim some of the gstreamer dependencies (#2897) (bce4b1aea9)
- **`272MB`** (-1MB) devops: do cache busting for APT (#2656) (bb34418095)
- **`273MB`** (+49MB) fix(webkit): update Docker file to include gstreamer (#2636) (5c6c65915c)
- **`224MB`** (+0MB) chore: fix emojis for CR and FF in Dockerfile (#2522) (24316ad261)
- **`224MB`** (-1MB) fix: Dockerfile for Firefox (#1937) (b516ac4fb2)
- **`225MB`** (+49MB) devops(docker): Install ffmpeg dependency, adding codecs necessary for video playback in Firefox (#1627) (222d01caaa)
-  **`176MB`** (+32MB) chore(docs): optionally install XVFB in docker(ec3ee66043)
-  **`144MB`** (+144MB)  feat: add a playwright-ready docker image (#1161)(1781ae7006)
2020-07-13 17:16:19 -07:00
Arjun Attam b2d820a185
docs(emulation): separate section for dark mode (#2915) 2020-07-13 15:47:13 -07:00
Yury Semikhatsky 1cebf8757c
chore(docker): skip "recommended" dependencies (#2917) 2020-07-10 16:01:30 -07:00
Yury Semikhatsky bce4b1aea9
chore(docker): trim some of the gstreamer dependencies (#2897) 2020-07-10 15:56:52 -07:00
Arjun Attam 6a1bd3ae6e
docs: add debugging docs page (#2865) 2020-07-08 08:59:58 -07:00
Yevhen de7969f0f5
docs(api/input): fix typo (#2837) 2020-07-07 10:46:13 -07:00
Arjun Attam e154e0837b
docs(ci): fix gitlab setup 2020-06-29 16:04:58 -07:00
Arjun Attam c8076121e2
docs: add new doc for multi-page scenarios (#2737)
* docs: multi-page scenarios

* docs: multi-page scenarios

* docs: multi-page scenarios
2020-06-29 15:46:33 -07:00
Arjun Attam 69127ad8d3
docs(docker): update to use official image (#2760) 2020-06-29 15:23:01 -07:00
Arjun Attam aad6301aca
docs(ci): update intro, caching section, add gitlab (#2735) 2020-06-26 17:49:18 -07:00
Arjun Attam 0cb5e95bdf
docs(frames): improve snippet to get frame (#2734) 2020-06-26 17:49:03 -07:00
Dmitry Gozman 807dc1f324
fix(crash): improve documentation for crash, reject waitForEvent (#2694) 2020-06-25 09:53:56 -07:00
Dmitry Gozman 39ce35e154
fix(errors): strict error handling around element operations (#2567)
- Gave all possible dom errors distinct names, and throw them on the node side.
- Separated errors into FatalDOMError and RetargetableDOMError.
  Fatal errors are unrecoverable. Retargetable errors
  could be resolved by requerying the selector.
- This exposed a number of unhandled 'notconnected' cases.
- Added helper functions to handle errors and ensure TypeScript catches
  unhandled ones.
2020-06-24 15:12:17 -07:00
Dmitry Gozman 355305d31d
feat(screenshot): accept timeout, migrate to Progress, wait for visible (#2679)
Element screenshot now waits for the element to become visible and
throws on detach.

Both screenshot methods accept a timeout and capture logs using Progress.
Also, carefully handling exceptions and restoring the viewport.
2020-06-24 10:16:54 -07:00
Arjun Attam 4af8c6831e
docs: improve snippets for console logs (#2684) 2020-06-23 19:34:18 -07:00
Dmitry Gozman d0a6e1a64e
fix(dom): make selectText and scrollIntoViewIfNeeded wait for visible (#2628)
All other methods wait for the element to be visible, so we should make
them behave similarly.
2020-06-23 13:02:31 -07:00
Ivan Krutov a8eaee3173
docs: add Moon to showcase.md (#2677) 2020-06-23 10:54:37 -07:00
Arjun Attam 6cec2dfb7c
docs: add assertions doc (#2585)
* docs: add assertions doc

* docs: assertions and verification split
2020-06-22 16:53:56 -07:00
Andrey Lushnikov bb34418095
devops: do cache busting for APT (#2656)
To avoid caching old package lists, every `apt-get install`
should be prefixed with `apt-get update`.

More info on the matter:
- https://docs.docker.com/develop/develop-images/dockerfile_best-practices/#apt-get
- https://github.com/moby/moby/issues/3313
2020-06-22 15:54:19 -07:00
Yury Semikhatsky 5c6c65915c
fix(webkit): update Docker file to include gstreamer (#2636) 2020-06-18 18:12:00 -07:00
Max Schmitt 20b23cd21e
docs: fixed various typos (#2633) 2020-06-18 15:04:21 -07:00
Andrey Lushnikov f61e85291b
docs: update docs for per-browser download hosts (#2630) 2020-06-18 12:35:37 -07:00
Othman Lanizi 090d450651
docs(core-concepts.md): fix typos (#2608)
Realized that the evaluateHandle method wasn't spelled properly in these two instances.
2020-06-17 14:16:56 -07:00
Arjun Attam 1bc04a088b
docs: using DEBUG=pw:api (#2578) 2020-06-15 18:34:58 -07:00
Dmitry Gozman fd9b1031fa
docs: add actionability doc (#2577) 2020-06-15 13:40:55 -07:00
Arjun Attam 2659910be8
docs: make environment vars snippets cross-platform (#2564) 2020-06-13 13:11:39 -07:00
Arjun Attam 6530c18acd
docs: improvements to ci provider configs (#2565) 2020-06-13 13:11:24 -07:00
Darío Kondratiuk e3f34f6ae2
fix(selectOption): allow passing null to unselect all (#2405) 2020-06-10 09:37:29 -07:00
Max Schmitt 24316ad261
chore: fix emojis for CR and FF in Dockerfile (#2522) 2020-06-10 08:02:56 -07:00
Pavel Feldman 9aa9d6bc1d
feat(downloads): accept downloads in persistent, allow specifying the downloadsPath (#2503) 2020-06-08 21:45:35 -07:00
Pavel Feldman fb058ffe0d
feat(proxy): allow specifying proxy (#2485) 2020-06-05 13:50:15 -07:00
Pavel Feldman c001facffc
feat(firefox): allow passing user prefs at launch time (#2417) 2020-05-31 09:28:57 -07:00
GkqqNkKC 59a0451b62
docs: fix spell mistake on api.md (#2408) 2020-05-29 08:51:45 -07:00
Dmitry Gozman 057ae14adc
feat: make browserServer.kill() wait for the process to exit (#2375)
This ensures we cleaned everything up.
2020-05-27 19:59:03 -07:00
Max Schmitt 9dfe9348ac
feat: Request.postDataJSON (#2368) 2020-05-27 18:43:49 -07:00
Daniel Rosenwasser 4e86d39881
docs: recommend a dev install of Playwright in the docs. (#2355) 2020-05-26 10:24:48 -07:00
Dmitry Gozman aae3f1e75d
feat(default context): support selected options for default context (#2177) 2020-05-21 15:13:16 -07:00
Pavel Feldman 2ede4bce12
chore: further unify launching and connection (#2320) 2020-05-21 09:43:10 -07:00
Andrey Lushnikov e658a3e48a
docs(click.md): update click.md documentation (#2303)
Updates according to 545c43d28d
2020-05-20 00:04:44 -07:00
Andrey Lushnikov f24696be62
feat: add page convenience methods for textContent and getAttribute (#2235)
This patch adds:
- `page.innerText()` / `frame.innerText()`
- `page.innerHTML()` / `frame.innerHTML()`
- `page.textContent()` / `frame.textContent()`
- `page.getAttribute()` / `frame.getAttribute()`

Fixes #2143
2020-05-18 17:58:23 -07:00
Pavel Feldman 2bd427ad1d
feat(exposeBinding): a more powerful exposeFunction with source attribution (#2263) 2020-05-18 14:28:06 -07:00
David Gilbertson 9e2733d520
docs(test-runners.md): add WebStorm comment (#2279) 2020-05-17 20:43:00 -07:00
David Gilbertson 125312f78b
docs(core-concepts.md): fix typo (#2273) 2020-05-17 08:58:33 -07:00
Dmitry Gozman 696b40a508
docs: update click.md 2020-05-14 10:44:20 -07:00
Dmitry Gozman e96e471e40
docs: draft for the various click scenarios doc (#2218) 2020-05-13 15:15:14 -07:00
Pavel Feldman f63ea3ffd2
feat(downloads): expose suggested filename (#2062) 2020-05-12 19:23:08 -07:00
Arjun Attam 84f966c301
docs: fix typo 2020-05-12 18:32:47 -07:00
Dmitry Gozman 6361e07ae4
fix(docs): clarify repeating calls to setHTTPCredentials (#2212) 2020-05-12 18:29:55 -07:00
Andrey Lushnikov 5d49c5d612
docs: refer to "working with selectors" from all 'selector' arguments (#2213)
The "working with selectors" section elaborates on rules that we use
to parse selectors.

Fixes #2197
2020-05-12 16:15:14 -07:00
Andrey Lushnikov b4acc56d63
docs(api.md): elaborate on visibility options in waitForSelector (#2208)
Fixes #2202
2020-05-12 15:46:19 -07:00
Arjun Attam 054ee639b4
docs(ci): elaborate ci caching docs (#2192) 2020-05-11 22:52:21 -07:00
Łukasz Fiszer 0c51a2e89d
docs: add mockiavelli library to Showcase (#2181) 2020-05-11 13:11:59 -07:00
Arjun Attam 2510edc394
docs(ci): update docs for caching and troubleshooting (#2176) 2020-05-11 09:54:03 -07:00
Pavel Feldman d487a315b9
doc: fix the route docs (#2174) 2020-05-11 08:22:48 -07:00
Vasilii Artemchuk 4c4fa8d38c
docs: some syntax fixes (#2116) 2020-05-07 12:33:35 -07:00
Pavel Feldman f86ddacb85
docs: mention click(force) and dispatchEvent(click) in the click docs (#2136) 2020-05-07 12:29:59 -07:00
Pavel Feldman 41de5bc388 Revert "chore: mark v0.18.0 (#2122)"
(should go only into branch)
This reverts commit 19e8c327ba.
2020-05-05 16:55:55 -07:00
Pavel Feldman 19e8c327ba
chore: mark v0.18.0 (#2122) 2020-05-05 16:52:54 -07:00
Andrey Lushnikov 193924f405
chore: add script to generate release notes (#2099) 2020-05-04 22:28:09 -07:00
Vasilii Artemchuk 52aa929922
docs(api.md): emulateMedia syntax fixes (#2104) 2020-05-04 17:48:18 -07:00
Vasilii Artemchuk ef9eed8702
docs(api.md): emulateMedia example fix (#2100) 2020-05-04 15:06:33 -07:00
Pavel Feldman bcce48362a
api(waitForSelector): make "state: visible" default, includes rename to state (#2091) 2020-05-04 11:03:44 -07:00
Pavel Feldman bb13a329f0 docs: better intro toc 2020-05-03 14:22:07 -07:00
Pavel Feldman 5bc62a0e25 docs: add anchors for toc topics 2020-05-03 11:23:19 -07:00
Pavel Feldman eed2bac441 docs: added overview links 2020-05-03 11:17:01 -07:00
Max Schmitt 22e7513272
docs(verification): fixed unclosed code tag (#2085)
Caused in 3979d4f492 and ended up in a failing CI
2020-05-03 07:59:41 -07:00
Sergey Bekrin c38f26ea02
docs(installation.md): update cache path on linux (#2084) 2020-05-03 07:58:46 -07:00
Pavel Feldman 3979d4f492 docs: bring snippets higher up in the docs 2020-05-02 17:21:46 -07:00
Andrey Lushnikov 3251465657
chore: add script to fetch closed bugs since git commit (#2066) 2020-04-30 17:57:45 -07:00
Arjun Attam 7051c0bf34
docs(installation): update windows location 2020-04-30 17:41:56 -07:00
Pavel 671e465450 docs(testrunners): brush up testrunners doc 2020-04-30 12:28:10 -07:00
Joel Einbinder 12edf4f03f
doc: test runner examples (#2057) 2020-04-30 11:24:27 -07:00
Andrew Healey 06273ef955
docs(api.md): Fix wording of javaScriptEnabled description (#2050) 2020-04-29 22:21:07 -07:00
Dmitry Gozman 953dd36d38
feat(api): remove 'mutation' polling option (#2048)
It is not compatible with shadow dom.
2020-04-29 21:34:14 -07:00
Pavel Feldman 9f62f29946
feat(install): use shared installation folder by default (#2044) 2020-04-29 18:59:20 -07:00
Dmitry Gozman 3fefa7b7ff
docs: fix docs for $foo methods that assumed css selectors (#2039) 2020-04-29 15:24:59 -07:00
Steve Davis 4652b9e248
docs: Recommend using --ipc=host in docker (#2038) 2020-04-29 14:52:50 -07:00
Dmitry Gozman 3a29631e9f
docs: improve docs around actionability and visibility (#2036) 2020-04-29 14:18:01 -07:00
Dmitry Gozman 031587a9cf
fix(visibility): unify visibilty checks (#1998)
This applies a common definition of visibility to clicks and waitfors:
- non-empty bounding box - implies non-empty content and no display:none;
- no visibility:hidden.
2020-04-27 15:40:46 -07:00
Dmitry Gozman 4b0d977489
fix(docs): clarify the single/double quotes usage in text selector (#2002) 2020-04-27 14:16:13 -07:00
Pavel Feldman 7f8aa703dd
api(waitFor): remove waitFor, use specialized wait functions (#1995) 2020-04-27 12:08:29 -07:00
Dmitry Gozman f9f5fd03b0
feat(selectors): allow to capture intermediate result (#1978)
This introduces the `*name=body` syntax to capture intermediate result.
For example, `*css=section >> "Title"` will capture a section that contains "Title".
2020-04-27 10:14:09 -07:00
Arjun Attam a2664b1580
docs: update ci section in getting started 2020-04-27 09:27:50 -07:00
Arjun Attam 158e592fa8
docs(installation): adds requirements and renames the doc (#1965) 2020-04-24 12:20:04 -07:00
Arjun Attam 8ceba1eea0
docs(ci): update ci docs to emphasize gh action (#1964) 2020-04-24 12:19:54 -07:00
Arjun Attam 28f98ac278
docs(readme): update readme and intro docs (#1963) 2020-04-24 12:19:31 -07:00
Andrey Lushnikov 4b263d6334
docs(releasing): update releasing docs according to new process (#1958) 2020-04-24 08:55:29 -07:00
Marcin Pietruszka 3c71125d7f
Fix typo (#1961) 2020-04-24 08:48:19 -07:00
Andrey Lushnikov 21dc346b16
devops: auto-correct links in our documentation (#1955) 2020-04-23 19:52:06 -07:00
Dmitry Gozman 5ac7f0e4ec
fix(text selector): allow single quoted text (#1952) 2020-04-23 18:48:53 -07:00
Pavel Feldman c1c0237d4e
api(dispatchEvent): page, frame and handle versions added (#1932) 2020-04-23 14:58:37 -07:00
Joel Einbinder 671cfa0a54
fix(types): support objects with typed keys and values (#1752)
There are a few places in the API where we use objects as maps. This patch adds them to docs and the types.

For `env`, we accept booleans and numbers as well because they are often used for their string values.
2020-04-23 14:45:57 -07:00
Pavel Feldman 40bed0f50c
docs: fix typos (#1947) 2020-04-23 13:40:34 -07:00
Arjun Attam 51ed5c5b4d
fix(examples): closes #1916 (#1934) 2020-04-23 08:44:58 -07:00
Max Schmitt b516ac4fb2
fix: Dockerfile for Firefox (#1937) 2020-04-23 08:43:53 -07:00
Andrey Lushnikov f8f3b8862c
docs(verification.md): fix typo 2020-04-22 00:32:46 -07:00
Andrey Lushnikov 89007c8f3d
devops: make README.md to always reflect tip-of-tree (#1911)
As of today, we have tooling in place that makes sure that our
main README.md **roughly** represents the state of the last release:
- browser versions and browser badges are those that we released last
- links to our API point to the last-released API version

This tooling, however, relies on the fact that every release is a sequence
of two consecutive commits:
- one commit that sets `package.json` version to a released version
- the following that "bumps" version to `-post`.

This release process is very unfortunate, because:
- it made releasing from branch impossible
- it required "freezing" commits to the master branch

This patch removes all the tooling and transitions `README.md` to always
represent tip-of-tree state. We will fully rely on
`https://playwright.dev` to show versioned docs.
2020-04-21 22:08:56 -07:00
Andrey Lushnikov 0815ff36be
docs(browsers.md): fix nit 2020-04-21 17:19:10 -07:00
Pavel Feldman fa18c419af
docs(browsers.md): updates and nits 2020-04-21 17:17:29 -07:00
Pavel Feldman 18650589e2
docs(browsers.md): updates and nits 2020-04-21 17:13:14 -07:00
Andrey Lushnikov 89b2fe5f38
feat: introduce PLAYWRIGHT_SKIP_BROWSER_DOWNLOAD env variable (#1892) 2020-04-21 16:47:16 -07:00
Andrey Lushnikov 0935144c21
docs(browsers): add documentation describing managing browsers (#1907) 2020-04-21 16:38:40 -07:00
Arjun Attam 88366f3bb9
docs: adds introduction.md (#1905)
* docs: adds introduction.md

* elaborate on async/await pattern
2020-04-21 15:42:52 -07:00
Yury Semikhatsky e9914ccfea
docs: fix formatting 2020-04-21 11:28:08 -07:00
Pavel Feldman 5b085fdf03
feat(logger): introduce context-level logger (#1896) 2020-04-20 23:24:53 -07:00
Pavel Feldman 80a7fcd2de docs(verification): nits and typos 2020-04-20 17:35:50 -07:00
Yury Semikhatsky c2fe55e630
docs: add verification guide (#1885) 2020-04-20 16:56:46 -07:00
Pavel Feldman 0656771167
api(networkidle): remove networkidle2 (#1883) 2020-04-20 16:52:26 -07:00
Dmitry Gozman 3485ffb4e6
fix(docs): fix snippets, integrate navigations to ToC and core concepts (#1884) 2020-04-20 14:04:49 -07:00
Pavel Feldman 4d8c057d9c docs(selectors&ci): brush up respective sections 2020-04-20 10:38:46 -07:00
Yury Semikhatsky 621df5d68b
docs: fix cross references (#1877) 2020-04-20 10:29:01 -07:00
Yury Semikhatsky ed89c379cb
docs: fix API references 2020-04-20 10:16:56 -07:00
Pavel Feldman 6231d50ba5 docs(core-concepts): follow up on object handles 2020-04-20 09:53:48 -07:00
Andrey Lushnikov 39b37be788
docs(core-concepts.md): add section regarding object & element handles (#1871) 2020-04-20 09:46:36 -07:00
Pavel Feldman 1f43ae692f
feat(logging): introduce logger sink api (#1861) 2020-04-20 07:52:26 -07:00
Pavel Feldman ef7815e95b doc(network): reorder items in network docs 2020-04-19 19:42:40 -07:00
Pavel Feldman f6fec27900 docs(core-concepts): add selectors and auto-wait sections 2020-04-19 19:06:23 -07:00
Pavel Feldman 92a4c70331
docs(input): include clicks and files sections (#1868) 2020-04-19 18:47:36 -07:00
Pavel Feldman a248430af8
reapply api(waitUntil): remove waitUntil options from the actions (#1842) 2020-04-16 20:31:04 -07:00
Andrey Lushnikov 31460b18b8
Revert "api(waitUntil): remove waitUntil options from the actions (#1834)" (#1840)
This reverts commit d0b8710670.

Reason: multiple test failures on all Linux bots
- https://app.circleci.com/pipelines/github/microsoft/playwright/613/workflows/50dc6e2d-23b0-41d2-9765-42983b0ed91d/jobs/610
- https://travis-ci.com/github/microsoft/playwright/builds/160648417
- https://github.com/microsoft/playwright/pull/1839/checks?check_run_id=594015893
2020-04-16 18:46:10 -07:00
Pavel Feldman d0b8710670
api(waitUntil): remove waitUntil options from the actions (#1834) 2020-04-16 16:04:10 -07:00
Pavel 629b77271c docs(loading): nits and fixes 2020-04-16 15:02:41 -07:00
Pavel e67603db27 docs(emulation): review, fix nits 2020-04-16 14:19:21 -07:00
Yury Semikhatsky 42eefa674b
docs: emulation guide (#1831) 2020-04-16 13:54:21 -07:00
Arjun Attam 67cd5698a7
docs: typo fix 2020-04-16 12:48:16 -07:00
Pavel Feldman da24fe12a6
docs: rename to upload-download.md 2020-04-16 12:13:22 -07:00
Arjun Attam ae6b1ba7ce
docs(uploads): fix typo 2020-04-16 11:55:11 -07:00
Pavel Feldman 0d4f73f251
docs(core-concepts): some nits (#1827) 2020-04-16 11:10:11 -07:00
Pavel Feldman 08c8a74e09
docs(network): polish network docs (#1826) 2020-04-16 10:48:38 -07:00
Arjun Attam 858f643e8b
docs(concepts): introduce core concepts doc (#1824) 2020-04-16 10:27:31 -07:00
Pavel Feldman 2280126344
api(setInputFiles): introduce page/frame helpers, document, break compat (#1818) 2020-04-16 10:25:28 -07:00
Andrey Lushnikov 58bb874299
docs(network): introduce network docs (#1822)
* docs(network): introduce network docs

* update title
2020-04-16 09:39:33 -07:00
Dmitry Gozman ba36860d79
feat(api): page.unroute to remove routes (#1813) 2020-04-15 19:55:22 -07:00
Dmitry Gozman 88054e34c9
feat(docs): initial version of the loading explainer (#1800) 2020-04-15 15:21:27 -07:00
Pavel 60eb3cdd3d docs(input): minor edits 3 2020-04-15 11:05:24 -07:00
Pavel 089a9dde96 docs(input): minor edits 2 2020-04-15 11:02:47 -07:00
Pavel 438d2761ff docs(input): minor edits 2020-04-15 11:01:27 -07:00
Pavel Feldman 50680dee57
docs(input): start crafting the input cheat sheet (#1804) 2020-04-15 10:53:47 -07:00
Dmitry Gozman b0d79d5124
feat(shadow): make css pierce shadow by default (#1784)
We leave css:light, text:light, id:light, and similar to opt-out from the shadow dom piercing. The notable exception is xpath that is always light.
2020-04-15 10:16:29 -07:00
Andrey Lushnikov 0ba823dd6f
feat: introduce page.on('crash') event (#1782)
Currently, whenever the page crashes, it emits an `'error'` event.
Error event is a special type of event in node.js; if unhandled,
it crashes the process.

Instead of emitting `'error'` event, this patch switches to emitting
`'crash'` event. Playwright users are free to handle the event
however they like, or just to ignore it.
2020-04-15 00:04:35 -07:00
Pavel Feldman da683b2752
feat(selectAll): allow selecting all in the inputs and in the plain dom (#1783) 2020-04-14 17:09:26 -07:00
Pavel Feldman c2fc4035ba
doc(keyboard): document Shift+ArrowLeft notation (#1771) 2020-04-14 13:11:02 -07:00
Lucas Willems bb0b6cd90a
Update api.md (#1773) 2020-04-14 08:38:59 -07:00
Andrey Lushnikov abf1219fc1
docs(api.md): string values should be quoted (#1766) 2020-04-13 18:58:03 -07:00
Dmitry Gozman 9542f47511
feat(selectors): deep selector which pierces open shadow roots (#1738) 2020-04-13 13:04:27 -07:00
Arjun Attam 183840586f
docs(ci): update link to github action (#1742) 2020-04-10 10:24:22 -07:00
Pavel Feldman 78abf5cb40
feat(api): add getAttribute, innerText, innerHTML, textContent (#1717) 2020-04-09 16:49:23 -07:00
Andrey Lushnikov b385ea8415
chore: bump version to v0.13.0-post (#1721) 2020-04-08 17:30:45 -07:00
Andrey Lushnikov 17e645ad34
chore: mark version v0.13.0 (#1720) 2020-04-08 16:53:44 -07:00
Andrey Lushnikov 6723254266
docs: remove stale file (#1719)
We don't support web bundling at the moment.
2020-04-08 15:39:26 -07:00
Andrey Lushnikov d21e2c9b46
docs(api.md): clarify downloads lifetime (#1698) 2020-04-07 17:13:42 -07:00
Tyler Wilcock 222d01caaa
devops(docker): Install ffmpeg dependency, adding codecs necessary for video playback in Firefox (#1627)
Fixes #1613
2020-04-07 16:09:27 -07:00
Pavel Feldman c6f580faf8
chore: migrate from timeouts to deadlines internally (#1695) 2020-04-07 14:35:34 -07:00
Arjun Attam 362b72cf9d
docs(docker): fix tag in docker run command (#1694) 2020-04-07 11:21:42 -07:00
Andrey Lushnikov 4cf5cf6c0e docs(api.md): fix link to download class 2020-04-07 00:27:08 -07:00
Pavel Feldman 3dc14eddaf
fix(colorScheme): make light scheme default on all browsers (#1668) 2020-04-06 19:49:33 -07:00
Dmitry Gozman a91304a37a
feat(selectors): attribute selectors pierce open shadow roots (#1656)
References #1375.
2020-04-03 20:47:08 -07:00
Dmitry Gozman 270206e2b4
feat(text selector): match button input by value (#1657)
Inputs of type button and submit are rendered with their value as text,
so we match them by text.

Fixes #1427.
2020-04-03 14:18:08 -07:00
Dmitry Gozman a9be3c5191
feat(text selector): pierce shadow roots (#1619) 2020-04-02 18:03:30 -07:00
Pavel Feldman 75571e8eb8
feat(downloads): support downloads on cr and wk (#1632) 2020-04-02 17:56:14 -07:00
| |三 \/ | |\| 2ac69670cd
docs(api.md): remove dead link to FAQ section (#1640)
The FAQ section part, where `https://github.com/Microsoft/playwright/#q-why-doesnt-playwright-vxxx-work-with-chromium-vyyy` points to, doesn't exist anymore. This pull request simply removes the dead link.
2020-04-02 10:16:01 -07:00
Arjun Attam 9d04dcc0ce
docs(examples): working with selectors (#1624) 2020-04-01 16:06:07 -07:00
Arjun Attam 1f0b7bff04
docs(api): update ordering for $eval and $$eval (#1623) 2020-04-01 13:09:24 -07:00
Dmitry Gozman a7b61a09be
fix(text selector): by default, do a substring match (#1618) 2020-03-31 23:04:04 -07:00
Joel Einbinder 6053784188
feat: add missing slowMo to launchPersistentContext (#1597)
`slowMo` was missing in `launchPersistentContext`, and I refactored the types a bit.
2020-03-31 16:34:59 -07:00
Arjun Attam 2402aade78
docs(api): elaborate on fill vs type (#1608) 2020-03-31 13:42:07 -07:00
Andrey Lushnikov eabba567bc
docs(api.md): clarify jshandle.getProperties() method (#1594)
Fixes #1592
2020-03-30 16:16:28 -07:00
Max Schmitt d9c064bbab
docs(showcases): fixed dead link to e2e boilerplates (#1591)
Closes #1589
2020-03-30 11:53:15 -07:00
Stuart Lang a007caef5c
Fixed small typos (#1588) 2020-03-30 09:03:13 -07:00
Dmitry Gozman bce8fc1343
feat(selectors): allow running selectors in main world (#1533) 2020-03-25 20:59:48 -07:00
Dmitry Gozman 6ee7852f0f
chore: update release guide and helper script (#1521) 2020-03-25 13:15:29 -07:00
MeiK c7b3744b3b
docs(api.md): fix typo (#1529) 2020-03-24 20:10:58 -07:00
Andrey Lushnikov dc7d221722
chore: bump version to v0.12.1-post (#1516) 2020-03-24 12:08:02 -07:00
Andrey Lushnikov a7ca2fef09
chore: mark version v0.12.1 (#1515) 2020-03-24 11:28:07 -07:00
Dmitry Gozman 1084008f1a
chore: update release guide 2020-03-24 10:53:36 -07:00
Dmitry Gozman a4dca79969
chore: update release guide 2020-03-24 10:50:23 -07:00
Dmitry Gozman ed6e0d5513
chore: bump version to v0.12.0-post (#1512) 2020-03-24 10:46:35 -07:00
Dmitry Gozman 08b94ee67b
chore: mark version v0.12.0 (#1497) 2020-03-24 10:40:02 -07:00
Arjun Attam 8bf83396a0
docs(showcase): updated showcase (#1481) 2020-03-24 09:09:45 -07:00
Andrey Lushnikov b778789ba8
feat: re-make global browser installation (#1506)
This patch removes the `PLAYWRIGHT_GLOBAL_INSTALL=1` variable
and instead introduces a new var - `PLAYWRIGHT_BROWSERS_PATH`.

You can specify `PLAYWRIGHT_BROWSERS_PATH` to affect where playwright
installs browsers and where it looks for browsers.

Fixes #1102
2020-03-24 00:08:00 -07:00
Max Schmitt 5a93872063
docs: add upload keyword to filechooser (#1496) 2020-03-23 19:47:29 -07:00
Dmitry Gozman bfb24e6f55
chore: update releasing guide (#1503) 2020-03-23 18:11:59 -07:00
Joel Einbinder 5bf9f223db
fix(docs): consider argument to be optional in evaluate (#1500) 2020-03-23 17:22:10 -07:00
Dmitry Gozman 05dc89b978
chore: update release guide (#1495) 2020-03-23 14:55:26 -07:00
Dmitry Gozman de0a2d1081
api(waitForLoadState): move waitUntil to be a first parameter (#1490) 2020-03-23 13:51:11 -07:00
Andrey Lushnikov a74e23a257
feat: support PLAYWRIGHT_GLOBAL_INSTALL=1 env variable (#1470)
You can install playwright with

```
PLAYWRIGHT_GLOBAL_INSTALL=1 npm i playwright
```

to make it use a single shared location for all browser
downloads.

Fixes #1102
2020-03-23 12:49:53 -07:00
Dmitry Gozman 15fddb5177
api(click): rename offset to position (#1488)
To allow for features like position: 'center' or similar.
2020-03-23 12:05:08 -07:00
Arjun Attam a570290740
docs(examples): update main readme to point to examples + add a file uploads example (#1484) 2020-03-23 10:39:43 -07:00
Arjun Attam 9e9584441c
docs(troubleshooting): add dependencies for firefox and webkit (#1461) 2020-03-21 17:58:08 -07:00
Arjun Attam 6df17c69e2
docs(examples): setup get started with examples guide (#1441) 2020-03-21 12:05:37 -07:00
Dmitry Gozman 16c7a5bd5c
api(eval): accept zero or one arguments in all evaluation functions (#1431) 2020-03-20 15:08:17 -07:00
Joel Einbinder 825555cddf
types: better types (#1166)
This generates typescript definitions based on the api.md, instead of autogenerating them from the typescript source code.

Now types
 - only include the public api
 - work with older versions of typescript
 - include descriptions
 - are more consistent
 - are more complete

#6
2020-03-20 01:30:35 -07:00
Yury Semikhatsky f1d97b0466
chore(docs): remove remaining mentions of Chromium targets (#1435) 2020-03-19 20:25:31 -07:00
Yury Semikhatsky 535b484637
api(context): get rid of PageEvent (#1433) 2020-03-19 16:25:12 -07:00
Yury Semikhatsky 3ed9970b33
api(chromium): add ChromiumBrowserContext.serviceWorkers() (#1416) 2020-03-19 16:10:24 -07:00
Andrey Lushnikov f5ecbff16e
devops: remake downloading logic (#1419)
This patch:
- removes `browserType.downloadBrowserIfNeeded()` method. The method
  turned out to be ill-behaving and cannot not be used as we'd like to (see #1085)
- adds a `browserType.setExecutablePath` method to set a browser
  exectuable.

With this patch, we take the following approach towards managing browser downloads:
- `playwright-core` doesn't download any browsers. In `playwright-core`, `playwright.chromium.executablePath()` returns `null` (same for firefox and webkit).
- clients of `playwright-core` (e.g. `playwright` and others) download browsers one way or another.
They can then configure `playwright` with executable paths and re-export the `playwright` object to their clients.
- `playwright`, `playwright-firefox`, `playwright-chromium` and `playwright-webkit` download 
browsers. Once browsers are downloaded, their executable paths are saved to a `.downloaded-browsers.json` file. This file is read in `playwright/index.js` to configure browser executable paths and re-export the API.
- special case is `install-from-github.js` that also cleans up old browsers.
2020-03-19 11:43:35 -07:00
Joel Einbinder b0749e3a6d
fix(docs): fixup and lint optionals and return values in api.md (#1376)
Currently in our API `?` means null, but sometimes it means optional. Linting optional/nulls with this patch is required for #1166 to land nicely.

Previously, return types were not being linted in `api.md`. This is fixed, along with many broken return types.

This patch considers `?` to mean nullable, and has some heuristics to determine optionality. I believe this to be the minimal patch needed to unblock #1166. After it lands, we can consider changing the api docs to hopefully remove some heuristics and strangeness.
2020-03-18 16:23:25 -07:00
Joel Einbinder 741e2d19d6
fix(docs): lint and fix all internal links in api.md
We have had a lot of churn in the api, which has caused a lot of our links to break.
2020-03-18 15:34:53 -07:00
Arjun Attam 045277d5cd
docs(chore): fix link in troubleshooting (#1422) 2020-03-18 09:41:52 -07:00
Pavel Feldman 049b336800
api(devices): extract isMobile/hasTouch from viewport (#1415) 2020-03-17 18:21:02 -07:00
Joel Einbinder 39e5eb7eda
feat(devices): remove name from device objects (#1414) 2020-03-17 16:04:42 -07:00
Pavel Feldman e4225adcc0
feat(permissions): make origin optional (#1406) 2020-03-17 15:32:50 -07:00
Pavel Feldman 64b175ce10
api(waitForLoadState): restore it (#1390) 2020-03-16 14:39:44 -07:00
Dmitry Gozman 6731d37546
api(network): replace redirectChain with redirectedFrom/redirectedTo (#1401) 2020-03-16 13:31:06 -07:00
Pavel Feldman e692dd6e62
api(cdp): rename ChromiumSession to CDPSession (#1380) 2020-03-13 16:16:54 -07:00
Dmitry Gozman 69be12ae12
api(route): pass Route object instead of Request to route handlers (#1385)
References #1348.
2020-03-13 14:30:40 -07:00
Dmitry Gozman 9b86c631c8
api: make BrowserContext.pages() synchronous (#1369)
Returns all pages which have been initialized already.

References #1348.
2020-03-13 11:33:33 -07:00
Pavel Feldman 8aba111f1e
api(cdp): rename createSession to newCDPSession (#1378) 2020-03-13 09:00:03 -07:00
Pavel Feldman b1a3b23c38
api(request): make request.response a promise (#1377) 2020-03-13 08:54:19 -07:00
Pavel Feldman 24d4fb1e5c
api(click): remove tripleclick, respect clickCount (#1373) 2020-03-13 08:09:48 -07:00
Pavel Feldman 8c532bd8da
api(press): remove text option (#1372)
#1348
2020-03-12 22:02:19 -07:00
Pavel Feldman e1d3196460
api(*.selectOption): renamed from *.select (#1371) 2020-03-12 21:30:12 -07:00
Pavel Feldman 064099ab3c
api(keyboard.insertText): renamed from sendCharaters (#1370) 2020-03-12 20:56:52 -07:00
Pavel Feldman 9aa56a6b9e
api(browserType): remove devices, errors (#1368) 2020-03-12 17:58:00 -07:00
Pavel Feldman cfd3ae25fb
api(addCookies): setCookies -> addCookies (#1367)
#1348
2020-03-12 17:32:33 -07:00
Dmitry Gozman 3fa4255bc5
api: make request.postData() return null instead of undefined (#1366) 2020-03-12 16:53:04 -07:00
Denis Sikuler 245c1fad5d
fix(docs): a typo in showcase (#1361) 2020-03-12 11:20:29 -07:00
Dmitry Gozman e382bb329b
api: remove 'commit' phase, actions to wait until 'domcontentloaded' by default (#1358) 2020-03-12 11:20:03 -07:00
Pavel Feldman b43f33f4d3
api(review): misc changes to API. (#1356) 2020-03-11 18:10:48 -07:00
Kevin Wang b3f87e8360
docs(api.md): Fix incorrect link to PageEvent (#1353)
Minor typo :)
2020-03-11 17:51:19 -07:00
Dmitry Gozman c1ef683373
api: remove waitForLoadState() in favor of PageEvent.page(options) (#1323) 2020-03-11 14:46:52 -07:00
Andrey Lushnikov 13c2f6571b
docs(selectors): clarify selector conversions 2020-03-11 11:39:44 -07:00
Dmitry Gozman 23cf3be828
api: make request.frame() non-null (#1319) 2020-03-10 11:39:35 -07:00
Dmitry Gozman ea6978a3d8
api(popups): expose BrowserContext.route() (#1295) 2020-03-09 21:02:54 -07:00
Hugo Dias e2a0d61606
docs(showcase): Add playwright-test to showcase (#1283)
This tool runs mocha, tape and benchmark.js scripts inside browsers with playwright.
2020-03-09 18:39:17 -07:00
Dmitry Gozman eb2ca70955
api(route): allow fulfilling with a file path (#1301) 2020-03-09 16:12:00 -07:00
Andrey Lushnikov d1ef0c8694
fix(wk,ff): properly support getting and setting non-session cookies (#1280) 2020-03-07 08:41:57 -08:00
Yohix bfd32fe6d2
doc: fix typos (#1284) 2020-03-07 08:37:47 -08:00
Pavel Feldman 3c35d7b058
api(waitFor): click(waitFor) -> click(force) (#1275) 2020-03-06 16:24:21 -08:00
Pavel Feldman 3fa000f5f4
api(waitForSelector): bring it back (#1272) 2020-03-06 15:02:42 -08:00
Pavel Feldman 119df5a985
feat(nowait): allow waitUntil:nowait for actions (#1264) 2020-03-06 14:32:15 -08:00
Andrey Lushnikov c494944b46
api(popups): move Page.authenticate to BrowserContext.setHTTPCredentials (#1267)
Drive-by: fixes #720 since it rolls past r1037. 

Co-authored-by: Dmitry Gozman <dgozman@gmail.com>
2020-03-06 13:50:42 -08:00
Pavel Feldman 49c1161e00
api(press): bump .press to the page/frame level (#1262) 2020-03-06 09:38:08 -08:00
Pavel Feldman 2724157c22
feat(waitUntil): allow waiting for navigation from clicks, etc (#1255) 2020-03-06 08:24:32 -08:00
Dmitry Gozman 1d770af804
api: waitForElement accepts waitFor: attached|detached|visible|hidden (#1244)
This includes rename waitForSelector -> waitForElement and removes $wait.
2020-03-05 17:45:41 -08:00
Yury Semikhatsky 9bc6dcea1d
feat(api): introduce BrowserContext.waitForEvent (#1252) 2020-03-05 17:22:57 -08:00
Dmitry Gozman e5f82af47c
api(popups): emit PageEvent immediately, and resolve page() once initialized (#1229)
This way we do not miss any popups, even immediately closed ones.
2020-03-05 15:18:27 -08:00
Yury Semikhatsky aabdac8380
api: remove Page.setCacheEnabled (#1231) 2020-03-05 10:09:04 -08:00
Dmitry Gozman 7f9df9488e
api(popups): move Page.setOfflineMode -> BrowserContext.setOffline (#1223) 2020-03-04 17:58:12 -08:00
Dmitry Gozman 5ee744cd26
api(page.frame): allow looking up frames by name (#1228) 2020-03-04 17:53:39 -08:00
Pavel Feldman 5ff660de15
feat(navigation): waitForNavigation/goto should not wait until response finished (#1225) 2020-03-04 15:59:26 -08:00
Arjun Attam 56e25c214c
docs: create development dir for non-user related docs (#1217) 2020-03-04 13:05:12 -08:00
Yury Semikhatsky 2d4317dc9a
docs: fix browser.contexts() description (#1220) 2020-03-04 12:05:18 -08:00
Andrey Lushnikov f5a530e17f
docs(showcase): Add headlesstesting.com (#1218)
Add showcase entry for HeadlessTesting.com - run Playwright tests on browsers in the cloud
2020-03-04 11:54:45 -08:00
Joel Einbinder 8aa88d5021
fix(doc): check and update optional types in the api (#1206)
This adds a new check to doclint for whether a member is correctly marked as optional. 
part of #6
2020-03-03 17:29:12 -08:00
Dmitry Gozman f4e9b5079d
api: declare not supporting isMobile on Firefox (#1207) 2020-03-03 17:28:31 -08:00
Dmitry Gozman 6c6cdc033b
api(popup): introduce BrowserContext.exposeFunction (#1176) 2020-03-03 16:46:06 -08:00
Dmitry Gozman 1b863c2300
fix(screenshots): simplify implementation, allow fullPage + clip, add tests (#1194) 2020-03-03 16:09:32 -08:00
Arjun Attam 3eec2d07f5
docs(ci): list sample configurations for ci (#1196)
Has some overlaps with the troubleshooting doc, which I plan to clean up in a subsequent PR. This first version of the doc has a feel of "build-your-own" with our sample configurations. Over time we can tweak the level of hand-holding for the best user experience to get started with CI.

Fixes #1103
2020-03-03 12:21:21 -08:00
Joel Einbinder a3ed3018e8
fix(docs): page.coverage type (#1189)
`page.coverage` was marked as an unhelpful any.
2020-03-02 22:09:06 -08:00
Andrey Lushnikov ec3ee66043 chore(docs): optionally install XVFB in docker 2020-03-02 18:54:13 -08:00
Dmitry Gozman 1186998bd8
fix(click): wait for element to be displayed before scrolling into view (#1182)
Otherwise, we may get an error during scrollIntoViewIfNeeded protocol call.
2020-03-02 14:26:38 -08:00
Henri d'Orgeval db9a2431bf
docs(showcase): rename playwright-controller to playwright-fluent (#1183) 2020-03-02 14:04:27 -08:00
Yury Semikhatsky a57978a5f0
api(chromium): remove Target from public API (#1163) 2020-03-02 13:58:22 -08:00
Andrey Lushnikov 08fbc92752
feat: support PLAYWRIGHT_DOWNLOAD_HOST (#1179)
This patch starts respecting `PLAYWRIGHT_DOWNLOAD_HOST` env variable
in `playwright` package and it's vendored flavors (`playwright-firefox`,
`playwright-chromium` and `playwright-webkit`).

Fixes #1045
2020-03-02 13:45:10 -08:00
Henri d'Orgeval e3ec6b28a9
docs(showcase): add playwright-controller (#1171) 2020-03-01 11:34:08 -08:00
Dmitry Gozman ac2f04f10f
api(selectors): pass selector name when registering, allow file path (#1162) 2020-02-28 15:34:07 -08:00
Dmitry Gozman c4f55bf22c
chore: guide for producing release notes (#1165) 2020-02-28 14:40:50 -08:00
Andrey Lushnikov 1781ae7006
feat: add a playwright-ready docker image (#1161) 2020-02-28 14:40:26 -08:00
Arjun Attam ea11a77ac3
docs(showcase): add new tools to showcase (#1164) 2020-02-28 14:11:22 -08:00
Dmitry Gozman 823bf389a7
api: evaluateOnNewDocument -> addInitScript (#1152)
Also adds more options to specify the script.
2020-02-27 17:42:14 -08:00
Arjun Attam de542c077c
docs(api): unify selector references to include xpath (#1150) 2020-02-27 16:22:19 -08:00
Dmitry Gozman 7682865d73
feat(popups): add BrowserContext.evaluateOnNewDocument (#1136) 2020-02-27 16:18:33 -08:00
Yury Semikhatsky 9d6aa967f3
chore(workers): align worker lifecycle evens with other APIs (#1147) 2020-02-27 14:02:48 -08:00
Dmitry Gozman 672f3f9960
feat(popups): introduce BrowserContext.setDefaultHTTPHeaders (#1116) 2020-02-26 12:42:20 -08:00
aesyondu 72fa945689
Update request.respond to request.fulfill (#1123) 2020-02-26 10:58:37 -08:00
Dmitry Gozman d97ea70804
chore: move more injected code to injected to reduce evaluation size (#1093) 2020-02-25 07:06:20 -08:00
Dmitry Gozman ba29470cc1
fix(api): rename relativePoint to offset, remove unused parameters from input (#1092) 2020-02-24 21:12:02 -08:00
Dmitry Gozman 6acc439450
feat(api): move targets from CRBrowser to CRBrowserContext (#1089)
This makes them work for default context.
2020-02-24 14:35:51 -08:00
Aaron Zemetres 69fe6f7236
docs: added community example project (#1084) 2020-02-24 09:00:53 -08:00
Dmitry Gozman 3677818202
fix(api): browser.serviceWorker -> target.serviceWorker (#1076) 2020-02-24 08:31:58 -08:00
Dmitry Gozman 1f8508d1ed
feat(waitFor): update various waitFor options to be a single boolean (#1066) 2020-02-22 09:16:28 -05:00
Dmitry Gozman 40164298a8
api: remove ElementHandle.visibleRatio (#1069) 2020-02-19 16:08:25 -08:00
Dmitry Gozman 33824aa1d7
feat(click): waitForInteractable option, defaults to true (#934) (#1052) 2020-02-19 09:34:57 -08:00
Pavel Feldman 1ee657823e
feat(viewport): update defaults to 1280x720, fix Firefox (#1038) 2020-02-18 09:16:32 -08:00
Józsi 010c27410a
Docs: fix return type of launchPersistent (#1047)
Docs fix: the return type of `browserType.launchPersistent` is [BrowserContext](https://github.com/microsoft/playwright/blob/master/src/server/browserType.ts#L46), not ` BrowserServer`.
2020-02-17 14:35:11 -08:00
Daniel Imms 8071225d1e
Add xterm.js to showcase (#1034) 2020-02-15 10:07:41 -08:00
Joel Einbinder 8cfdeb99bd
chore: mark v0.11.1-post (#1027) 2020-02-14 19:23:50 -08:00
Joel Einbinder 2037e01b06
chore: mark v0.11.1 (#1025) 2020-02-14 19:13:08 -08:00
Arjun Attam bb8d435c5b
chore(docs): add community showcase (#1018) 2020-02-14 16:54:14 -08:00
Dmitry Gozman dbb45d443a
Revert "feat(click): waitForInteractable option, defaults to true (#934)" (#1013)
Reason: new tests are flaky on all bots.
2020-02-14 13:05:23 -08:00
Dmitry Gozman 9413351d3f
feat(click): waitForInteractable option, defaults to true (#934) 2020-02-14 11:55:34 -08:00
Andrey Lushnikov 39c580a9b1
chore: bump version to 0.11.0-post (#1001) 2020-02-13 19:10:03 -08:00
Andrey Lushnikov f9887e073d
chore: mark version 0.11.0 (#1000) 2020-02-13 18:56:54 -08:00
Pavel Feldman cd4e9da807
feat(coverage): export raw v8 coverage (#976)
Fixes #955
2020-02-13 17:39:14 -08:00
Dmitry Gozman 25022e4685
feat(api): introduce default timeouts on BrowserContext (#992) 2020-02-13 14:18:18 -08:00
Pavel Feldman c15534ff01
fix(locale): document locale parameter (#990) 2020-02-13 13:37:59 -08:00
Andrey Lushnikov aa60a7cebd docs(api.md): fix nit 2020-02-12 16:18:05 -08:00
Andrey Lushnikov 7ce49c2835
chore: remove WebSocket implementation (#961)
WebSocket implementation currently is very incomplete, lacking
support in WebKit-Win and Firefox.
2020-02-12 15:29:06 -08:00
Andrey Lushnikov b0c0598510
fix(api): small-case all api event names (#959) 2020-02-12 14:59:54 -08:00
Pavel Feldman 53237009ad
feat($wait): make $wait a shortcut for waitForSelector (#932) 2020-02-11 14:51:09 -08:00
Pavel Feldman aae5fca237
feat(api): make browser.newPage own the created context (#930) 2020-02-11 12:06:58 -08:00
Andrey Lushnikov ad9d6cc31f
feat: introduce browserType.downloadBrowserIfNeeded() (#834)
Fixes #823
2020-02-11 11:33:48 -08:00
Pavel Feldman 72b9cf010e
feat(context): introduce BrowserContext close event (#918) 2020-02-11 10:27:19 -08:00
Pavel Feldman 84f5700294
feat(api): rename browserContext() to context() in the apis, remove url from newPage (#906) 2020-02-10 10:41:45 -08:00
Dmitry Gozman fee83b17c9
fix(api): page.viewport -> page.viewportSize (#878)
We now only allow to resize the page, leaving isMobile and deviceScaleFactor as browser context options.
2020-02-06 19:02:55 -08:00
Joel Einbinder 06a7d7e3e3
docs(api.md): missing arguments for functions in page.route (#880) 2020-02-06 17:14:37 -08:00
aesyondu 75340f34ad
chore: Note that (code) coverage is only available for chromium (#867) 2020-02-06 15:51:03 -08:00
Pavel Feldman a547aa7984
feat(connect): allow multiple webkit connections over web socket (#863) 2020-02-06 12:41:43 -08:00
Andrey Lushnikov a72784a677
fix(test): properly clean input field (#860) 2020-02-05 18:11:33 -08:00
Dmitry Gozman 6318ba6e4a
feat(frame): introduce frame.frameElement (#856)
Fixes #839.
2020-02-05 17:20:23 -08:00
Andrey Lushnikov 4aa155ede1 docs(api.md): fix link 2020-02-05 16:53:02 -08:00
Pavel Feldman 55b6fe241e
feat(launch): introduce client, server & persistent launch modes (3) (#854) 2020-02-05 16:36:36 -08:00
Pavel Feldman a2ab645e63
feat(launch): introduce client, server & persistent launch modes (2) (#840) 2020-02-05 12:41:55 -08:00
Andrey Lushnikov 0f1a42a5d3 docs(readme): fix API link to always point to last released API 2020-02-05 12:05:36 -08:00
Pavel Feldman 2e0f3e3e01
docs: split docs to npm version and latest (#846) 2020-02-05 07:29:06 -08:00
Pavel Feldman 0518625dcc
feat(launch): introduce client, server & persistent launch modes (1) (#838) 2020-02-04 19:41:38 -08:00
Pavel Feldman e3e2da3186
feat(check): introduce page.check/uncheck (#826) 2020-02-04 14:39:10 -08:00
aesyondu 3ef23133a6
docs: fix dead link for element handle (#827) 2020-02-03 20:27:54 -08:00
Pavel Feldman 05d4746eb5
feat(selectors): temporarily remove zs engine (#824) 2020-02-03 16:14:37 -08:00
Pavel Feldman 8028fb052a
feat(route): migrate from request interception w/ events to page.route (#809) 2020-02-03 14:23:24 -08:00
Pavel Feldman 387b895929
browser(webkit): build more wk features (#807) 2020-02-02 14:21:50 -08:00
Darío Kondratiuk 0007439072
doc(api.md): Fix setPermissions link (#806) 2020-02-02 14:18:28 -08:00
Andrey Lushnikov fce3842011
chore: bump version to 0.10.0-post (#796) 2020-01-31 18:46:34 -08:00
Andrey Lushnikov 6a97216fff
chore: mark version 0.10.0 (#795) 2020-01-31 18:40:44 -08:00
Yury Semikhatsky 25f2a32af3
feat: add Page.opener() to the API (#790)
Fixes #783
2020-01-31 18:38:45 -08:00
Pavel Feldman ef1d2fb995
Revert "fix: move offline/cache/interception switches to BrowserContext (#748)" (#793)
This reverts commit 6faf74bc95.
2020-01-31 16:23:15 -08:00
Pavel Feldman 9a00e1d1f6
docs: update webkit.md features 2020-01-31 08:39:09 -08:00
Pavel Feldman 24c5df65c2
docs: add webkit build flags table (#777)
Fixes #565
2020-01-30 18:33:56 -08:00
Joel Einbinder e131fe0cee
fix(chromium): install libgbm (#773)
The new Chromium (#771) requires [`libgbm1`](https://packages.debian.org/sid/libgbm1) to be installed. Install it manually on the bots, and add it to troubleshooting.md.
2020-01-30 15:54:53 -08:00
Arjun Attam adc91c986c
chore(docs): fix broken link for downloaded browsers (#772) 2020-01-30 14:54:24 -08:00
Dmitry Gozman c9544b9b46
docs: add documentation for selector engines (#752) 2020-01-30 09:08:22 -08:00
Dmitry Gozman 0e6b44d337
feat(selectors): selectors.register accepts function (#753) 2020-01-29 15:13:43 -08:00
Yury Semikhatsky 6faf74bc95
fix: move offline/cache/interception switches to BrowserContext (#748) 2020-01-29 12:51:14 -08:00
Andrey Lushnikov ce7c8d74b5
feat: introduce BrowserType.name() (#732)
This helps a lot to produce nice logging:

```js
const { chromium, webkit } = require('playwright');

(async () => {
  for (const launcher of [chromium, webkit]) {
    console.log(`Testing on ${launcher.name()}`);
    const browser = await launcher.launch();
    // ...
    await browser.close();
  }
})();
```
2020-01-28 18:09:07 -08:00
Pavel Feldman 09e97afd22
feat(wk,ff): amend method & postData upon continue (#703)
Fixes #668
2020-01-28 14:29:46 -08:00
Darío Kondratiuk c35c65b393
docs(api.md) Rename page to context in newContext (#723)
A few more
2020-01-28 14:21:11 -08:00
Jamie 75f7ff3e05 docs(api.md) Fix USKeyboardLayout link (#719) 2020-01-28 14:04:14 -08:00
Darío Kondratiuk 9d34f28a40 docs(api.md) Rename page to context in newContext (#718)
The user agent is for the context not the page
2020-01-28 13:46:23 -08:00
Dmitry Gozman 2bef4aea03
feat(api): introduce selectors.register method (#701) 2020-01-28 11:20:34 -08:00
Vignesh Shanmugam 90d84e8879 docs(api): fix cdp session creation example (#709) 2020-01-28 07:54:41 -08:00
Pavel Feldman e2764306b3
doc: require webSocket:true for endpoint availability (#706) 2020-01-27 22:41:59 -08:00
Pavel Feldman 79ea30cfbc
docs: sort classes by use (#700) 2020-01-27 20:49:42 -08:00
Andrey Lushnikov bd726ee499 chore: bump version to v0.9.24-post 2020-01-27 17:26:23 -08:00
Andrey Lushnikov 3e40b4e9d3 chore: mark version 0.9.24 2020-01-27 17:23:53 -08:00
Andrey Lushnikov ee9c2b0c41 chore: bump version to v0.9.23-post 2020-01-27 14:08:14 -08:00
Andrey Lushnikov 03e2754dce chore: mark version 0.9.23 2020-01-27 13:47:02 -08:00
Andrey Lushnikov d7beaa7068
chore: bump version to 0.9.22-post (#684) 2020-01-27 13:31:43 -08:00
Andrey Lushnikov 0a7005e6e9
chore: mark version v0.9.22 (#682) 2020-01-27 13:28:23 -08:00
Pavel Feldman 5a5016fa7d docs: inline superclass toc into classes for convenience (#663) 2020-01-27 10:05:04 -08:00
Andrey Lushnikov c850430642 docs(api.md): remove browser downloads section (#675)
It quickly gets out of hand; let's remove it for now.
2020-01-27 09:48:50 -08:00
Andrey Lushnikov 9e0cf726ce docs(api.md): add missing docs (#664)
Follow-up to #641 that adds API entries.
2020-01-27 08:27:45 -08:00
Darío Kondratiuk 99414b0410 doc(page): Improve Page description (#665) 2020-01-27 08:26:45 -08:00
Pavel Feldman 4b849734af
docs: api.md typos
Fixes #661
2020-01-26 22:13:14 -08:00
Yury Semikhatsky b64604c1ea
chore: replace pptr with pw (#643) 2020-01-24 16:15:41 -08:00
Dmitry Gozman c453851217
api: introduce BrowserType with a single interface, update top-level api (#636) 2020-01-24 14:49:47 -08:00
Joel Einbinder ff877014cd
doc(troubleshooting): add note about lack of node 8 support (#623) 2020-01-24 09:04:54 -08:00
Dmitry Gozman 056fbbd53e
fix(api): make pipe connection the default, expose webSocket launch option (#562) 2020-01-23 17:45:31 -08:00
Joel Einbinder 3b2993ffe9 fix(docs): add back troubleshooting.md (#605)
This is mostly copied from Puppeteer's troubleshooting.md, with everything under a Chromium header and a few tweaks to make things make sense for Playwright.

We can add other browsers to this document once we figure out how to troubleshoot them.

Fixes #583
2020-01-23 15:54:09 -08:00
Joel Einbinder 4cf2180506 fix(docs): add docs for the websocket event (#612) 2020-01-23 15:26:38 -08:00
Dmitry Gozman ac2ba3cbd9
fix(api): BrowserServer -> BrowserApp, resuse it between browsers (#599) 2020-01-23 14:40:37 -08:00
Dmitry Gozman a5019ea69a
fix(api): remove remoteAddress from api (#601) 2020-01-23 12:13:58 -08:00
Dmitry Gozman fa2f321fdd
fix(api): remove BrowserServer.connect (#574) 2020-01-23 08:51:43 -08:00
Rajendra arora a6042e437a docs: removed semicolon from code doc as it not required (#580) 2020-01-23 08:50:37 -08:00
Joel Einbinder 7e8bce7911 chore: bump version to v0.9.21-post 2020-01-22 20:35:01 -08:00
Joel Einbinder 372a88fa30 chore: mark version v0.9.21 2020-01-22 20:32:32 -08:00
Joel Einbinder ef2286cbb5
chore: mark version v0.9.20 (#578) 2020-01-22 20:29:22 -08:00
Dmitry Gozman 3269358ac8
feat(webkit): covert pipe to websocket when asked (#570) 2020-01-22 17:42:10 -08:00
Andrey Lushnikov eab8f92ac8 docs: create a single top-level TOC for api.md (#561)
This patch:
- creates a single top-level TOC for api.md
- adds a TOC for each class in the api.md
2020-01-22 12:21:45 -08:00