当前位置: 首页 > 知识库问答 >
问题:

PhantomJS提交按钮未单击-在Selenium中工作

孔皓
2023-03-14

我有困难与提交按钮,它不是点击phantomJS相同的代码时运行在Selenium作品。有人有什么建议(Java)吗?

公务舱航班

{WebDriver driver;File File File=新文件(“C:/Program Files/phantomjs-2.1.1-windows/bin/phantomjs.exe”);@Test public void homePageFlightDetails()引发异常{//Setup GhostDriver System.setProperty(“phantomjs.binary.path”,File.getAbsolutePath());

       //***************************************************
       // FIREFOX UI DEBUG - Set debug to True for UI debug
       boolean debug=false;
       if (debug)
          {
          driver= new  FirefoxDriver();
          driver.manage().window().maximize();
          }
       else
       {
          driver=new PhantomJSDriver();
        //Set logging to Severe            Logger.getLogger(PhantomJSDriverService.class.getName()).setLevel(Level.SEVERE);
       }

       //***************************************************
        //Submit Home page and get the title
        driver.get("http://www.aa.com");
        String pageTitle = driver.getTitle();
        System.out.println("The Current page title is  "+pageTitle); 

       //Find the origin airport field
       WebElement originAirport=driver.findElement(By.id("reservationFlightSearchForm.originAirport" ));
       //Clear any existing text and enter the origin airport
       originAirport.clear();
       originAirport.sendKeys("PHX");

       //Find the destination airport field
       WebElement destAirport=driver.findElement(By.id("reservationFlightSearchForm.destinationAirport" ));

       destAirport.clear();
       destAirport.sendKeys("LAS");

       //Find the depart date field
       WebElement depDate = driver.findElement(By.id("aa-leavingOn"));
       depDate.clear();
       depDate.sendKeys("08/20/2016");

       //Find the return date field
       WebElement retDate = driver.findElement(By.id("aa-returningFrom"));
       retDate.clear();
       retDate.sendKeys("08/24/2016");

       //Find the Search up button
       // WebElement searchButton = driver.findElement(By.id("flightSearchForm.button.reSubmit"));
       // driver.findElement(By.id("flightSearchForm.button.reSubmit")).click();
      // WebElement searchButton = driver.findElement(By.xpath("//*[@value='Search'][@type='submit']"));

       //phantomjs debug  - Verify the button has been found
       boolean buttonText = driver.findElement(By.xpath("//*[@value='Search'][@type='submit']")).isDisplayed();
       System.out.println("buttonText Boolean is = "+buttonText);

       //Click the Search button         
       //driver.findElement(By.xpath("//*[@value='Search'][@type='submit']")).sendKeys(Keys.RETURN);

              //***********  This works in Selenium *********** 
       driver.findElement(By.xpath("//*[@value='Search'][@type='submit']")).click();
       // Wait for the Choose Flights page to appear
       int count = 1;
       do
          if (driver.getTitle().contains("Choose flights"))
          {
                 break;
          }
          else
          {
             System.out.println("do loop iteration "+count+ " the title = "+ driver.getTitle());
             Thread.sleep(1000);
                    count++;
          }
       while (count < 30);            
       System.out.println("After search the current page title is  = "+ driver.getTitle());
       Assert.assertTrue(driver.getTitle().contains("Choose flights"));
       driver.quit();
   }

共有1个答案

巴洲
2023-03-14

当通过Jmeter(使用WebDriver采样器)使用phantomjs时,我遇到了类似的问题。

我可以看到页面上存在一个模式,它覆盖了我需要交互的字段。我可以添加断言来验证字段和按钮是否存在并捕获它们的值,但不能单击按钮。

我能想到的唯一的解决方法是调用函数(按钮点击函数),尽管不是我的偏好。

 类似资料:
  • 按钮单击在selenium webdriver中不工作。 尝试使用类名和xpath。 提交订单

  • 在打开Selenium并填写表单后,我在让Selenium IDE点击我的一个web表单上的Submit按钮时遇到了问题。我使用clickAndWait命令并通过其ID来识别按钮: 有趣的是,如果我编写一个脚本,只需打开表单并单击提交按钮而不填写它,我就没有任何问题。我的问题是在我要求硒填写表格后特别出现的。此外,如果我尝试手动单击提交按钮,则在手动输入之前运行用于填写表单的Selenium脚本将

  • 我正在尝试在Selenium中测试图像按钮点击。 图像是事件,当我点击sgt消息出现我 超文本标记语言代码:

  • 我有一个点击单选按钮的代码,一开始我用的是Chrome。使用下面的代码: 我发现了一个错误: 做研究的时候,我把代码改成: 当我单击单选按钮时,标签会在单击时获得一个附加属性。 其他编辑: 这组按钮如下所示:

  • 问题内容: 我是python selenium的新手,我尝试单击具有以下html结构的按钮: 我希望能够同时单击上方的和按钮(显然是单独单击)。 我尝试了几件事,例如: 要么, 要么, 但是,我似乎总是以结尾,例如: 我想知道是否可以以某种方式使用HTML的onclick属性来进行selenium单击? 任何能将我指向正确方向的想法都很棒。谢谢。 问题答案: 对于python,请使用 和

  • 我试图让Selenium点击一个按钮来跟踪一个链接(它是表下面的“上个月”按钮):https://www.interactivebrokers.eu/en/index.php?f=39108 我尝试了以下方法 有人能帮忙吗?谢谢