Selenium

Selenium is a portable software testing framework for web applications. Selenium provides a record/playback tool for authoring tests without learning a test scripting language (Selenium IDE). It also provides a test domain-specific language (Selenese) to write tests in a number of popular programming languages, including C#, Groovy, Java, Perl, PHP, Python, Ruby and Scala. The tests can then be run against most modern web browsers. Selenium deploys on Windows, Linux, and OS X platforms. It is open-source software, released under the Apache 2.0 license, and can be downloaded and used without charge.

Share tech news, updates, or what's on your mind.

Sign up to Post

I am using Log4j2 with the JUL plug-in.

For example:
	... 18 more
1500642924477	Marionette	INFO	New connections will no longer be accepted
1500642924501	addons.xpi	DEBUG	Calling bootstrap method shutdown on webcompat@mozilla.org version 1.1

Open in new window

0
Get free NFR key for Veeam Availability Suite 9.5
LVL 1
Get free NFR key for Veeam Availability Suite 9.5

Veeam is happy to provide a free NFR license (1 year, 2 sockets) to all certified IT Pros. The license allows for the non-production use of Veeam Availability Suite v9.5 in your home lab, without any feature limitations. It works for both VMware and Hyper-V environments

We are using ELK(Elastic search, logstash, and Kibana) for our log management. Everytime I will export the setting from kibana UI from Management--->Save Objects--->Export Everything. For demo, one can checkout the url: Kibana Demo

cURL
I want to automate this export process with some scripting on linux. I tried CURL but the header/payload data looks to be dynamic and might have to update frequently. I want to try some web scraping techniques with some web automation tools like Selenium and pythion.

Selenium Webdriver
I tried to record this export action with Selenium IDE and from the IDE I exported the test plan/case into pythonkibana_python.py . As we click on Export Everything button on Kibana, a firefox window opens asking where to save. This action is not handled by selenium, meaning download file is not supported by selenium.

So, I'm looking for some scripting to export the json(Export Everything) file from Kibana UI and it mush be Headless as I would be scheduling this script in linux server. To be headless, I also tried phantomjs, but even this doesn't support file download.

Simply, I just want a script to automate clicking export everything button on kibana and want it be saved in a file. Please share your thoughts or any idea,  i'm trying this for days...
0
Hello,
I have submitted Selenium and Eclipse questions and they were never answered.  
There are many topics that are "Proposed."
My assumption is that EE does not have Experts for these topics.  Is my assumption correct?
0
HI Expert

In my application a button click must open a page ( inside a frame) , manually the chrome browser loads the page withing  1 minute
but same action does not happen with the Selenium Web Driver Script ( button is clicked , but the page inside the frame does not load)

page loading will be  in progress infinitely,

Please suggest the workaround

I am using chrome version : 58.0.3029.110 (64-bit)
chrome driver version         : 2.29

Regards
Sai
0
Hello, I got, or it appeared; an extension/plugin, https://getfirebug.com/wiki/index.php/Selectors_Side_Panel, that tells me, Go! is the attribute of css selector "input"
<input onclick="showAlert()" value="Go!" type="button">

Open in new window


I've been searching for, what I believe I once saw; driver.findElement(By.cssSelector(input[@attribute = "Go!"])) ;
But this does not work.  How does one use css Selector with an attribute?
0
Hello,
I'm looking for the right findElement setting for the login button.  I had it working at one time with id="u_0_q", but then it stopped working.  I'm using Window 10 Edge Webdriver
What could work?  The first three lines are the DOM locator.  The first line looks to be a frame, before the login button.
The login button is that of www.facebook.com login
//<label class="uiButton uiButtonConfirm" id="loginbutton" for="u_0_q">
//<input tabindex="4" id="u_0_q" type="submit" value="Log In" data-testid="royal_login_button"
//></label>
				//driver.findElement(By.xpath("html/b[b]/b]ody/div[1]/div[1]/div/div/div/div/div[2]/form/table/tbody/tr[2]/td[3]/label/input")).click();
		//driver.findElement(By.cssSelector("input[data-testid=royal_login_button]")).click();
		//driver.findElement(By.id("u_0_q")).click();
		//driver.findElement(By.cssSelector("input[value=royal_login_button")).click();//absolute not work
		//driver.findElement(By.id("loginbutton")).click();//works for Edge!
		//driver.findElement(By.id("loginbutton")).click();

Open in new window

0
Hello,
I had and now I still have firebug installed on firefox.  The problem I have, and I do not know how it used to be; but when I ran my Selenium Webdriver code (the firefox browser would be openned) and hit F12 the firebug/firepath would be available.  

Am I wrong on this thought?
Now I have to open a separate firefox browser, and when I fit F12, I do get the firebug and firepath.

My thought is that I added some "add-on" that disabled firebug on a selemium webdriver test browser page.
I can't find a way to list the installed add-ons in firefox.  Do you know how?
0
Hello,
I'm looking for an xpath tool, like the one that firefox has.  I have searched and do not find one.  I find xpath helper and Finder for Chrome.
For IE Edge I find nothing.
Is there an xpath for Chrome and Edge?
xpath Finder seems to work on the fact that you already know the xpath.

Can an xpath from firefox be used in Chrome and Edge?
0
Hello, I
The <input name> DOM line below is similar to one that I have used this Webdriver; driver.findElement(By.className("whsOnd zHQkBf"))
to enter my username.  When I click on the button "Next," the page moves on to the page to enter the password.
This is the line for the password;
<input name="password" tabindex="0" class="whsOnd zHQkBf" dir="ltr" spellcheck="false" aria-label="Enter your password" type="password" jsname="YPqjbf" data-initial-value="" data-initial-dir="ltr" autocomplete="current-password" autocorrect="off" autocapitalize="off">

You'll see that the same class name is used, yet the driver.findElement(By.className("whsOnd zHQkBf")) is not working.
Why?  I don't see any other className or id to use.  What can be used?  The test site is gmail.com
0
I would like a crash course in Selenium as a C# developer and prefer to reach versus watching video.

Any good visual tutorials I can read?

It'd be great if there were C# programming exercises as well.

Thanks
0
2017 Webroot Threat Report
2017 Webroot Threat Report

MSPs: Get the facts you need to protect your clients.
The 2017 Webroot Threat Report provides a uniquely insightful global view into the analysis and discoveries made by the Webroot® Threat Intelligence Platform to provide insights on key trends and risks as seen by our users.

I am new to using Selenium for web UI testing, but see it as a great tool for that. Can it also be used for load testing?

If so, how does that work? How do you handle concurrency?

Thanks.
0
Hi, I am using the below code to match some data from an input csv to 2 drop downs from a website, then download both a csv and pdf... (the csv, I am extracting info from, then overwriting it with the next download since I do not need it -- the pdf, I am keeping, if the day of the month is the 1st or the 15th... but, as you can see here, for testing, I have it set to today, the 14th, instead of 15th)

My problem is that it will run Ok, for the first 10 lines or so (the csv list is between 1200-2500 lines, so i'm not even close..)
but then, it will throw the below error:

[Errno 10061] No connection could be made because the target machine actively refused it

Can anyone help me resolve this? I am new to python, scraping AND selenium so would appreciate any help -- or suggestions regarding making the code more efficient in general. Thank you!

# -*- coding: utf-8 -*-

from selenium import webdriver
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.common.by import By
import unittest, time, os, shutil, csv
from fuzzywuzzy import process
import datetime

class Here(unittest.TestCase):
    def setUp(self):
        path_to_chromedriver = 'chromedriver.exe'  # change path as needed
        self.driver = webdriver.Chrome(executable_path=path_to_chromedriver)
        self.base_url = "https://mybaseurl/"
        

Open in new window

0
Was able to launch and close browser 1 only.
            
Error:


java.lang.NullPointerException
      at java.util.Hashtable.put(Unknown Source)
      at java.util.Properties.setProperty(Unknown Source)
      at java.lang.System.setProperty(Unknown Source)
      at newpackage.Launchbrowsers.Browser(Launchbrowsers.java:32)
      at newpackage.Launchbrowsers.main(Launchbrowsers.java:13)

Thanks in advance for any help.
0
In this Selenium test, can you explain what this call to By.XPath is doing exactly?

string referenceLink = browser.FindElement(By.XPath("/html/body/div[@class='container body-content']/div[@class='page-wrap']/div[@class='container']/div[@class='box-container jumbotron border']/div[@class='row'][1]/div[@class='col-sm-12 col-md-6 col-lg-3'][1]/a[@class='thumbnail text-center']")).GetAttribute("href").Remove(0, 8);
0
Mouse hover not working in internet explorer and chrome browser in selenium java. I am using below code.

// to handle dynamic index of pencil we used it
                        int i = index + 1;
                        String xpathPencil = "//*[@id='listGroup0']/a[" + i + "]/span[1]/button/i";
                        WebElement pencil = driver.findElement(By.xpath(xpathPencil));
                        action.moveToElement(StatusFilterListBox1.get(index)).perform();
                        // System.out.println("pencil coming");
                        driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);
                        driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);
                        action.click(pencil).perform();
                        waitForSpinnerToDisappear();
0
What kinds of things do I need to know in order to get started with automated tests with Selenium? I have experience with unit testing, but no front-end testing yet.

I am interested in smoke testing, best practices, what kinds of guidelines to use when making a test plan with Selenium.

I am interested in hearing how other people use it...

Thanks.
0
Code:
public static void main(String[] args) throws IOException,BiffException{

      
System.setProperty("webdriver.ie.driver","C:\\Users\\wer\\Desktop\\IEDriverServer.exe");
       WebDriver driver;
      
            driver =new InternetExplorerDriver();

                  File f1 = new File("C:\\Users\\wer\\Desktop\\Demo\\sai.xls");


      


      Workbook wbk;

      wbk = Workbook.getWorkbook(f1);

      Sheet sheet = wbk.getSheet(0);
      String username;

      username = sheet.getCell(0, 0).getContents();

      
Error:
Exception in thread "main" java.io.FileNotFoundException: C:\Users\wer\Desktop\Demo\sai.xls (The system cannot find the file specified)
      at java.io.FileInputStream.open0(Native Method)
      at java.io.FileInputStream.open(Unknown Source)
      at java.io.FileInputStream.<init>(Unknown Source)
      at jxl.Workbook.getWorkbook(Workbook.java:213)
      at jxl.Workbook.getWorkbook(Workbook.java:198)
      at test.main(test.java:98)
0
public class test {

      
public static void main(String[] args) throws AWTException, IOException, InterruptedException {
      
      
       WebDriver driver;
       System.setProperty("webdriver.ie.driver","**");
            driver=new InternetExplorerDriver();
      
      


      driver.get("**");
      driver.manage().timeouts().implicitlyWait(30, TimeUnit.SECONDS);

       WebDriverWait waiting = new WebDriverWait(driver, 10);
            waiting.until(ExpectedConditions.presenceOfElementLocated(By.id("**")));
      driver.manage().window().maximize();
      
      driver.findElement(By.id("**")).click();
      
      driver.manage().timeouts().implicitlyWait(30, TimeUnit.SECONDS);


      

      

      
      try {
             Robot robot = new Robot();
             robot.keyPress(KeyEvent.VK_F6);
      
             robot.keyRelease(KeyEvent.VK_F6);
            
             robot.keyPress(KeyEvent.VK_ENTER);
             robot.keyRelease(KeyEvent.VK_ENTER);
            
                 } catch (AWTException e) {
                    e.printStackTrace();
                  }
      

}

}

The requirement is:
open a webpage
Click on the excel icon to download the file.
then a popup appears.
upon clicking on F6 and enter the file gets saved.
the problem here is as soon the code is run, the robot class does not wait for the icon to be clicked. the steps are not occurring in sequence.
0
Hello,
I have a couple of "unresolved" issues.  I tried fixing my problems using the options within Eclipse, but nothing works.
I know that I have in import/install the org.opeqa.selenium API, yet can't find the API at org.openqa, and I know that my Selenium API needs to be installed as well.  I thought I did have it via Selinity - Selenium plugin, but I guess not.
These are my issues;
import org.openqa...cannot be resolved
FirefoxDriver cannot be resolved to a type
Method undined for WebDriver

This is the code;
import org.junit.Test;

import org.openqa.selenium.WebDriver;
import org.openqa.selenium.firefox.FirefoxDriver;

public class MyFirstWebdriverTest<WebDriver> {
      @Test
      public void checkSeleniumHQinFirefox(){
        WebDriver driver = new FirefoxDriver();
        driver.get("http://seleniumhq.org");
        driver.quit();
      }
}
0
Ransomware: The New Cyber Threat & How to Stop It
LVL 4
Ransomware: The New Cyber Threat & How to Stop It

This infographic explains ransomware, type of malware that blocks access to your files or your systems and holds them hostage until a ransom is paid. It also examines the different types of ransomware and explains what you can do to thwart this sinister online threat.  

Hello,
I'm working with Eclipse Neon 2 and noticed that under the Help menu there are links to Java EE 5,6, and 7.
Why doesn't Java EE 8 documentation show up?  
How could I install Java EE 8 documentation?

I see that Experts Exchange still does not have Eclipse as a topic to support.  
I hope my questions gets answered.
0
Hello,
I'm looking for a website that gives a much deeper explanation about the Selenium api.

I found this site, yet it is not enough to fully understand; for what and how to use the api;
https://seleniumhq.github.io/selenium/docs/api/java/index.html?overview-summary.html

Could you suggest a better site?
0
Hello, in the code below, what is the ".using...." and ".build()" below.  I have not used this "dot" syntax.
Is it associated with the newly created "service" like service.usingDriverExecutable  and service.build ?

   {@literal @BeforeClass}
   public static void createAndStartService() {
     service = new ChromeDriverService.Builder()
         .usingDriverExecutable(new File("path/to/my/chromedriver.exe"))
         .usingAnyFreePort()
         .build();
     service.start();
   }
0
untitled.png
How to handle these kind of popups using selenium  web driver.
Due to some security reasons I cant access any external tools like Auto IT  to achieve this.
is there a way to do it using selenium web driver
0
Can we open outlook web application using selenium webdriver?

import java.util.concurrent.TimeUnit;

import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.ie.InternetExplorerDriver;



public class test {
	
	
public static void main(String[] args) {
	
	 WebDriver driver;
	 
	System.setProperty("webdriver.ie.driver","**.exe");
	driver=new InternetExplorerDriver();
	driver.manage().timeouts().implicitlyWait(50, TimeUnit.SECONDS);

	driver.get("***");

Open in new window


As per the requirement I need to open google.com and then open outlook web application. Using the above code google can be opened.
Could you please help me with the code to open outlook application.
0
Hi,

I try to write a little java code for Selenium. I use current (Neo) Eclipse version.
Everything work fine so far. But in the Java sample codes for Selenium I always find te keywords:

Thread.sleep(100);
or just
sleep(100);

But I cannot use them. Seems I do not have an refernece to them in my code. Do I miss an Import?

Ingo
0

Selenium

Selenium is a portable software testing framework for web applications. Selenium provides a record/playback tool for authoring tests without learning a test scripting language (Selenium IDE). It also provides a test domain-specific language (Selenese) to write tests in a number of popular programming languages, including C#, Groovy, Java, Perl, PHP, Python, Ruby and Scala. The tests can then be run against most modern web browsers. Selenium deploys on Windows, Linux, and OS X platforms. It is open-source software, released under the Apache 2.0 license, and can be downloaded and used without charge.

Top Experts In
Selenium
<
Monthly
>