Automate chrome extension that interacts with a page that is currently open - selenium

Is there any way to automate an extension that interacts with an opened website?
For example, helium10 extension can only be used if it is open on amazon.com, since it grabs information about present products. If the extension is open in another window, it isn't possible to use it, since it doesn't interact with the page opened.
Could it be possible to do it, maybe, using selenium or puppeteer? Every answer is highly appreciated.

Related

Unsure of which version of selenium I need to use to test a web application

I have been using the firefox plugin version of Selenium so far to enter information into a form and submit it. The form gets posted to a database and the info shows up on another URL that I check. I need to be able to check the info I submitted in the original form against the info that shows up on the second page the "info submitted" page.
Does the firefox plugin version of selenium support a way of storing the information for the fields I submit to the initial form as variables so I can check those values against the "submitted info" page later?
I am new to selenium in general.
I found following FireFox plugin to check variables you use in test, so it seems it's possible with Selenium IDE.
On the other hand, I would recommend using Selenium WebDriver as it is more up to date and allow you much more than IDE due to everything what programming languages like Java or C# provides.
In your case, you could for example, open first page in fist browser tab, post form, then move to second tab with another page and check values correctness. Easy to implement and quite effective.
You can find numerous tutorials on the internet, or you can check my own tutorial which I started to post recently under my own project - Test Automation 101.

Launching selemium scripts from browser for screen capture

I am looking for creating a functional training package for a web based product (more like a screen capture).
However, the requirement is not just to have screen capture, but to have a test mode for the training where we can prompt the user to click on the screen and check if they have done proper flow.
for e.g. A banker will first go through the screen capture to see "how to open an account" in the core banking application . Later user will be presented with a test where user has to click through all the controls and flow.
I have seen selenium being used for authoring good UI automation test cases, so I wanted to explore the possibility of using selenium for creating these training modules
These training modules needs to be launched from intranet application. Is it possible to launch selenium authored UI automation test cases from the browser? I want to stay away from writing any extensions or plugins.
I haven't used selenium and I might be completely off tangent here, so any other suggestion to achieve this using open source tools are welcome.
Without writing any scripts, you may consider downloading Selenium IDE. It has a recording and replay function that may meet your need.
For a fast tutorial, please follow this link.
https://www.youtube.com/watch?v=gsHyDIyA3dg
Hope it helps.

How to set manually opened browser as Selenium webDriver

I am working on automating a web application.
I have many pages like login page etc. and I have many tabs. Each tab will open different page, for example, if I want to open page3, I have to go through page1 first then page2.
Here my problem is If I want to test some functionality on page3, then I have to go through all pages. It is taking so much time to test single functionality I need to spend so much time.
Is there any way I can set already opened browser as Selenium WebDriver?
Unfortunately, no.
This is the most starred feature request on Selenium as of now (February 2013, current Selenium 2.30.0). It's also one of the oldest.
http://code.google.com/p/selenium/issues/detail?id=18
There has been some work on Firefox for this, but it's undocumented, very experimental and no changes have been seen on it for quite a while. For more information, look at the linked feature request.
Front-end automation is hard, Selenium can only do what a normal user could do. The best you can do is to run the tests in parallel on many remote machines.
No... It is not possible....
In order to reduce the manual execution, we are moving towards automation.
Inbetween you cannot automate.

Un-Share Session or Cookies of webbrowser control in VB.net

I have more than one webbrowser controls on my program, and it seams they all share session cookies.
What i want is that they DONT share the session cookies.
I have different webbrowser controls that opens the same website with different accounts, or open the same web-page that store different data in session.
Anyone has any idea?
Note : this question already posted by #Haroldis,Link old quetion Hope now he found the solution already because I having this problem also.
As mentioned in the answer you linked, this is not possible with the standard .net web browser control.
IF you genuinely need to display the pages in browsers to the user (rather than just send or recieve data, in which case webrequests are your answer) then you have a few options via third party software.
1 would be WaTin, which allows you to launch and control separate browser instances, with the option of not sharing cookies.
Another option would be awesomium, which has a .net wrapper and can run independent instances since v1.7, though i have not tested it a great deal.

Software Automation tool

At my company, we have to fill out a daily timecard, and I want to automate it.
I want to use some sort of tool that will allow me to write something like this:
Launch Firefox
go to www.example.com/timecard
Wait for page load complete
In UserName box: put username
In Password box: put password
Press enter
Wait for page load complete
if login failed
email me#example.com that unable to automatically do timecard, please check password
return;
Get today's date
if today is Saturday or Sunday
close firefox
return;
find the timecard column that matches today's date
find the row with the right charge number
put in 8.0 hours
click "Save" link
close firefox
return;
It would be really nice if the software solution will also execute itself daily at a given time.
Since you are asking about UI automation you might want to check out AutoHotKey.
It's a macro language and you can compile the code into executable binaries (.exe).
However, sending web request could be done better without a browser by sending the necessary HTTP requests. Such an approach is more light-weight, more flexible and probably easier to maintain as well.
Check out the Chickenfoot extension for Firefox. I believe it may help you a long the way.
Chickenfoot is a Firefox extension that puts a programming environment in the browser's sidebar so you can write scripts to manipulate web pages and automate web browsing.
It also provides a basic record feature, and you can then fine-tune the interactiosn with the web page(s).
If all you need to automatize is related to browsers, then you may try out Selenium Remote Control which provides libraries in different languages.
For browser automation, there are a couple more experimental libraries in javascript (you should search for web app testing tools as these are imo your best bet for now)
./alex
For decision making, you might have to write some code.
iMacros for firefox has the ability to record/playback.
I have not used it myself but I have heard good things about Selenium. This is a Web UI testing tool that can be scripted in a number of different languages.
I would try to accomplish this with twill.
If by "some sort of tool" do you mean something like a programming language or environment that will allow you to automate what FireFox does? If so, I recommend learning how to write a FireFox extension. Extensions are written in Javascript. See https://developer.mozilla.org/en/Extensions
--
bmb
You could use selenium or watin on a simple .net console program. Then configure a task on window to call it at a given time of day.
If you are using Linux you could easily do this with a bash script of some kind. Have a look at the CURL library.http://curl.haxx.se/. You could then schedule the script to run with cron.
This is why I love Linux, the above is simple to do. I windows I suppose you could use the windows shell. I think the curl library runs on windows.
Selenium (www.openqa.org) tools will work for you. Install the Selenium IDE and record the macro. The "code" is simple JavaScript/HTML.
Selenium RC provides a very strong solution for automated testing from a variety of languages and tools.