Giter Club home page Giter Club logo

electron-playwright-helpers's People

Contributors

jjeff avatar matthijsburgh avatar mtdvlpr avatar semantic-release-bot avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

electron-playwright-helpers's Issues

installing causes an error since 1.3.0

I noticed that after upgrading to 1.3.1, I am getting the following error when installing the package:

# This file contains the result of Yarn building a package (electron-playwright-helpers@npm:1.3.1)
# Script name: postinstall

cd: no such file or directory: example-project

I looked it up and it seems to be due to a recent change, the following line was added:

    "postinstall": "cd example-project && npm install",

But in the distributed npm package, example-project is not included. I think the postinstall script needs to be adjusted, as it will run when installing the distributed npm package as well.

[question] launching playwright in UI mode

I have two issues running my playwright setup and I could use some help.

The first issue is that when I run playwright in UI mode. The playwright UI is launched as well as the latest production build, however, time-travelling the assertions made in the tests and the overall "electron screen" displayed in UI mode, is always blank (see screenshot) - this happens in all three OSes, so I must have configured something wrong. Unfortunatly, I was not able to see what would happen if I ran the UI mode in the example project, as when I try to do npm run e2e on the example project I get an error with "no-specs found".

The second issue is a simple question. I am using electron-vite with react and react-router and my application navigates just fine, however, the assertion below fails even tho the screen clearly navigated to the new page after click the createFirstQuestionBtn (also visible in the screenshot). What would be the right way to assert "URL" navigations in a electron app?

  await expect(createFirstQuestionBtn).toBeVisible()
  await expect(createFirstQuestionBtn).toBeEnabled()

  createFirstQuestionBtn.click()

  await page.waitForURL('**#/questions/create') // THIS FAILS
  
  /**
  * page.waitForURL: Navigation failed because page was closed!
  * =========================== logs =============================
  * waiting for navigation to "**#/questions/create" until "load"
  *   navigated to "file:///home/fb/Documents/github/quizmood-app/dist/linux- 
  *   unpacked/resources/app.asar/out/renderer/index.html#/questions/create"
  * ============================================================
  */

image

Add support for electron-builder

We at @webalys-hq are supporting an electron app + Next Js + Electron builder, I am the responsible of add test to desktop app.

I really like your library and I think we can work together in order to offer support for electron builder. I've tried the helpers library but it does not work with out code, so I think we can leave this issue open to start the conversation about it.

Feature request: allow interacting with menus other than application menu

As stated in the documentation, it is currently only possible to click on menu items that are part of the application menu.

As a user of this library, I would like to also click on menu items in other menus.

The findMenuItem method already detects all menu items. So perhaps it's not too difficult to also create the ability to interact with those items?

Great library!

out directory not found

i'm using findLatestBuild to get app info of theia-electron however an error is thrown because out directory is not found. Any idea ?

Add the ability to set the build directory

The "findLatesBuild" function does currently only account for projects with a build folder named "out". It would be nice to have a parameter to change this directory (e.g. "build")

Wait for IPC message

Hi,

I'm wondering if it's possible to wait for an IPC message sent from renderer to main?
We have a message that's part of our application lifecycle to know when we've loaded our required assets:

https://github.com/vcync/modV/blob/5f667ffa8d7884a587c34f00088936920d0ef74c/src/application/index.js#L86
https://github.com/vcync/modV/blob/f6674e2b5d05a2568b52623275b22a388b53e4ee/src/background/window-prefs.js#L101

So it would be great to start the tests once we've received that message.

Thanks.

Problem with yarn berry workspace

Error: electron-playwright-helpers tried to access electron, but it isn't declared in its dependencies; this makes the require call ambiguous and unsound.

Required package: electron

yarn install failed with above error

Error when used with yarn berry pnp workspace.

It seems like an error that occurs because electron is written in devdependencies, not dependencies.

https://yarnpkg.com/configuration/manifest#devDependencies
Looking at , it seems normal that devDependencies are not installed to the package user.

Typo in main example???

The Readme includes a JavaScript example line:

let electronApp: ElectronApplication

I've never seen that kind of syntax for a variable declaration and when I use it my linter shows an error so I'm assuming that's a typo.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.