Puppeteer, PWA and installation? - puppeteer

How does Puppeteer handle PWA installation? Can I just assume that no installation will take place?
I searched for "puppeteer pwa" but could not find any info.

Puppeteer is really a tool for testing an application. It is a headless browser and therefor would not offer any real way to test or simulate the installation flow.
The service worker should register and the initial life cycle should trigger. However it is headless, which means state is not preserved. So you are more or less doing an InCognito session each test run.

Related

How to make Chrome Extension available to testing, before production

When I need to make an Android App available in development, I use Play Console to do it, because this tool gives us an option to up the App in DEV to testing, before launching it in Production, that allows any user with link make a download of app by PlayStore to test it.
Is it possible, or exists any tool of Google that allow the same steps above, to deploy a Chrome Extension to testing, before launching it in Production, that can be accessed by any user with link to download and install it on Chrome browser?
P.S. I don't see the option in Chrome Web Store to up an extension to testing like in play console with apps.

How to force chrome to launch in the background?

When I run GUI tests (Selenium, Java. Launched from IntelliJ idea on Ubuntu 16.04).
Each new test opens a new chrome browser (and close it when the test finishes) in the foreground, stilling the focus from what ever I am doing.
I can't run headless or change the tests to only launch a single browser and do clean up from test to test.
Any way to tell chrome to launch in the background? any relevant flag? If not maybe some way to tell Ubuntu to move Chrome to the background?
Solutions are welcomed, thanks!

Is the console in Chrome Dev Tools secure?

I was investigating why my DirectTV Now service wasn't working in the Chrome Dev Tools to nerd around when I couldn't log in.
I saw that when I try to log in, it logs my password and username.
So I began wondering - is there any way an unsavory Chrome extension or other loaded Javascript files could access things that have been logged to the console?
I've often dumped sensitive items into the log in development, but never in production.
Hoped someone better informed than I am could help me understand if this is secure or not.
If its in the console, its originating from a console.log() call. Since console.log() is dumping out to the console log window the contents of some variable or state somewhere in the page, then a plugin can also read the same variables in the running page.

Restart Chrome native messaging host

I've written a Chrome extension and companion native messaging host. I don't have any issues with it failing to start or crashing, but I would like to be able to restart it for updates of the extension. I can't find anything in the documentation or elsewhere regarding this. Is it even possible, or does the browser need to be restarted? Due to the nature of the extension, I'd like to avoid restarting the browser if possible.
Documentation can be found here, but it's not exactly robust.
https://developer.chrome.com/extensions/nativeMessaging
Upon further investigation I have found that restarting the native host application manually is not required. Chrome does this itself on update of the extension. However, that breaks the ability to send messages to the native host application from content scripts that have already been loaded, which was causing the issue I was seeing. Pages can be reloaded to fix messaging.

Selenium Capabilities

I'm drowning in the Selenium documentation. What I've got so far is the ability to record a script in FireFox, export it to the new WebDriver format (JUnit4), open and tweak the test in Eclipse, then run it as a JUnit test in Eclipse.
What I'm wanting next:
to run the same test on multiple browsers
to have a suite of tests run on a remote server at a set interval
receive notification if a test fails
Is this possible using the path I've started down above? It's hard to tell, but I'm not sure that WebDriver is compatible with the RC server. Or, should I just take my suite of JUnit tests and integrate them with something like Cruise Control?
Thank you...
to run the same test on multiple browsers
See: How to run Google Chrome with Selenium RC?
to have a suite of tests run on a remote server at a set interval
This is hard, especially when you are running on headless (terminal only) machine. See this article. But not impossible, read further.
receive notification if a test fails
The typical configuration is to use CI server like Bamboo, take advantage of cargo-maven-plugin to deploy your application and run Selenium tests during integration-test phase. Easier said than done. Since CI server is typically headless, you will need freaks of nature like xvfb, taking a lot of screenshots since you have no idea what is happening during the build when it fails, and so on... But it is possible, we managed to setup such a process in our company and are very happy for it.
Bromine helps you to run on several browsers. Regarding "Scheduling" as already said, maven would help. Try to gather infos about Hudson. It helps a lot in scheduling. It supports selenium too. It helps to send notification also.