Tag: selenium

在每个’@Test’之后和JUnit中的每个’@After’之前应用’@Rule’

我有一个测试套件,我在@After退出系统并在@AfterClass关闭浏览器。 我正在尝试使用@Rule为每种测试方法使用Selenium进行失败的测试截图。 我手动检查@Rule只在每个@Before之前运行,但是我想在@Test之后和@After之前设置它。 我找不到简单的解决方案。 任何帮助将不胜感激。 public class MorgatgeCalculatorTest { @Before public void before(){ System.out.println(“I am before”); } @BeforeClass public static void beforeclass(){ System.out.println(“I am beforeclass”); } @Test public void test(){ System.out.println(“I am Test”); } @Test public void test2(){ System.out.println(“I am Test2”); } @After public void after(){ System.out.println(“I am after”); } @AfterClass public static void afterclass(){ […]

如何使用Webdriver Selenium获取“style”元素的值

我想检查样式元素的值是否大于特定值(即,是> 666px?),但我无法得到该值。 以下是我要捕获的样式的HTML代码: 我正在使用此代码尝试打印其值,但它不打印: System.out.print(driver.findElement(By.id(“da1c”)).findElement(By.cssSelector(“span”)).getAttribute(“style”)); 我想要这样的东西: if ((driver.findElement(By.id(“da1c”)).findElement(By.cssSelector(“span”)).getAttribute(“style”)).value> 700) { System.out.println(“value exceeding”) }

如何运行selenium-server-standalone?

我正在尝试运行selenium服务器,并获得错误: rond-macpro:selenium eladb$ java -Dwebdriver.chrome.driver=./chromedriver -r selenium-server-standalone-2.44.0.jar Unrecognized option: -r Error: Could not create the Java Virtual Machine. Error: A fatal exception has occurred. Program will exit. 没有-r(无论如何它是什么?) rond-macpro:selenium eladb$ java -Dwebdriver.chrome.driver=./chromedriver selenium-server-standalone-2.44.0.jar Error: Could not find or load main class selenium-server-standalone-2.44.0.jar 我该如何启动服务器? 如何设置要监听的非默认端口? 这两个post: 1 2 – 与语法相矛盾。 我认为。

Firefox浏览器没有打开selenium webbrowser代码

需要以下指导和帮助。 执行以下代码时,我收到错误。 我使用的是最新版本的java,eclipse,firefox和WebDrive jar文件。 package firsttest1; import org.openqa.selenium.WebDriver; import org.openqa.selenium.firefox.FirefoxDriver; public class helloselenium { public static void main(String[] args) { WebDriver driver; driver =new FirefoxDriver(); String url =”http://www.google.com”; driver.get(url); } } 错误…. 线程“main”中的exceptionjava.lang.IllegalStateException:驱动程序可执行文件的路径必须由webdriver.gecko.driver系统属性设置; 有关更多信息,请参阅https://github.com/mozilla/geckodriver 。 最新版本可以从https://github.com/mozilla/geckodriver/releases下载到com.google.common.base.Preconditions.checkState(Preconditions.java:199)org.openqa.selenium.remote.service。驱动程序.findExecutable(DriverService.java:109)org.openqa.selenium.firefox.GeckoDriverService.access $ 100(GeckoDriverService.java:38)org.openqa.selenium.firefox.GeckoDriverService $ Builder.findDefaultExecutable(GeckoDriverService.java:91 )org.openqa.selenium.remote.service.DriverService $ Builder.build(DriverService.java:296)org.openqa.selenium.firefox.FirefoxDriver.createCommandExecutor(FirefoxDriver.java:245)org.openqa.selenium。 firefox.FirefoxDriver。(FirefoxDriver.java:220)org.openqa.selenium.firefox.FirefoxDriver。(FirefoxDriver.java:215)org.openqa.selenium.firefox.FirefoxDriver。(FirefoxDriver.java:211)at org。 openqa.selenium.firefox.FirefoxDriver。(FirefoxDriver.java:124)at firsttest1.helloselenium.main(helloselenium.java:12) 使用的版本:eclipse:neon version java:jdk1.8 fire fox:v48 WebDrive jar文件:v 3.0.0 […]

如何使用Selenium WebDriver在新标签页(chrome)中打开链接?

System.setProperty(“webdriver.chrome.driver”, “D:\\softwares\\chromedriver_win32\\chromedriver.exe”); WebDriver driver = new ChromeDriver(); driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS); driver.manage().window().maximize(); driver.get(“https://mail.google.com/”); String selectLinkOpeninNewTab = Keys.chord(Keys.CONTROL,Keys.RETURN); driver.findElement(By.linkText(“www.facebook.com”)).sendKeys(selectLinkOpeninNewTab); 新选项卡正在打开,但URL链接未打开。

为什么PhantomJSDriver不会使用我设置的function?

我正在为PhantomJsDriver设置一些function。 DesiredCapabilities caps = new DesiredCapabilities(); caps.setJavascriptEnabled(true); caps.setCapability(“cssSelectorsEnabled”, false); caps.setCapability(“applicationCacheEnabled”, true); caps.setCapability(“acceptSslCerts”,true); caps.setCapability(PhantomJSDriverService.PHANTOMJS_EXECUTABLE_PATH_PROPERTY,phantomJsPath); this.driver = new PhantomJSDriver(caps); 然后,我检查驱动程序使用的function: System.out.println(driver.getCapabilities()); 输出: Capabilities [{ platform=XP, acceptSslCerts=false, javascriptEnabled=true, browserName=phantomjs, rotatable=false, driverVersion=1.1.0, locationContextEnabled=false, version=1.9.7, cssSelectorsEnabled=true, databaseEnabled=false, handlesAlerts=false, browserConnectionEnabled=false, proxy={proxyType=direct}, nativeEvents=true, webStorageEnabled=false, driverName=ghostdriver, applicationCacheEnabled=false, takesScreenshot=true}] 表明: cssSelectorsEnabled=true, applicationCacheEnabled=false, acceptSslCerts=false 为什么驱动程序没有我设置的function运行?

java中的静态Webdriver实例同步

GlobalVariables类包含在我的框架中使用的不同变量,其中一个是WebDriver实例: public class GlobalVariables { public static WebDriver driver; //Some other static global variables required across my framework public GlobalVariables(String propertiesFile) { initializeVariables(propertiesFile); } public void initializeVariables(String propertiesFile) { GlobalInitializer obj=new GlobalInitializer(); obj.initialize(String propertiesFile); } } GlobalInitializer包含初始化所有GlobalVariables的方法: public class GlobalInitializer extends GlobalVariables { public void initialize(String propertiesFile) { //Some logic to read properties file and […]

如何将selenium IDE中记录的命令转换为Java?

是否有任何应用程序或简单方法将Selenium IDE记录的所有命令转换为Java (Selenium WebDriver) ? 这将更容易,并将节省大量时间。 任何建议将不胜感激。 谢谢!

如何在没有文本框的Selenium上传文件

我一直在寻找在Selenium 2中上传文件的解决方案。 问题是我尝试上传的网页元素有两种使用方式:拖放或点击按钮。 没有字段输入框。 并不是说我没有尝试使用sendKeys。 我已经尝试了按钮和周围的所有元素。 这个问题的第二部分是我在Windows机器上编写,但自动化发生在Linux机器上。 这意味着AutoIt不起作用。 这是上传框的HTML。 Please choose a folder to upload Drop one or more files here or Select Files 我正在使用Java,并对Selenium之外的其他方法开放(但是,我只选择了maven存储库)。 谢谢!

如何在Selenium webdriver中等待警报?

可能重复: selenium 2.4.0,如何检查是否存在警报 我使用以下代码关闭警报窗口: Alert alert3 = driver.switchTo().alert(); alert3.dismiss(); 主窗口打开几秒后出现警报。 我该如何等待并检查警报是否出现?