Selenium Webdriver& Java:在If else逻辑中需要帮助

时间:2017-11-23 09:26:52

标签: selenium

点击主页上的搜索按钮后,当它进入票价详情页面时,我希望当票价低于9000时,它应该点击继续按钮。

请参阅下面的代码

public class MySelenium {
     public static void main(String[] args) {

            System.setProperty("webdriver.chrome.driver","C:\\Users\\kunal.bhaskar\\Downloads\\chromedriver.exe");
            WebDriver driver = new ChromeDriver();
        // Form filling on www.spicejet.com     
            driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);
            String baseUrl = "http://www.spicejet.com";
            driver.get(baseUrl);
            driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);
           driver.findElement(By.xpath("//*[@id=\"ctl00_mainContent_chk_IndArm\"]")).click();
           driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);
          WebElement dep = driver.findElement(By.xpath("//*[@id=\"ctl00_mainContent_ddl_originStation1_CTXT\"]"));
          dep.click();
          driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);
          dep.sendKeys("Bengaluru");
          WebElement arr = driver.findElement(By.xpath("//*[@id=\"ctl00_mainContent_ddl_destinationStation1_CTXT\"]"));
          arr.click();
          driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);
          arr.sendKeys("Patna");
          WebElement date1 = driver.findElement(By.xpath("//*[@id=\"flightSearchContainer\"]/div[3]/button"));
          date1.click();
          driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);
          for (int i = 0; i < 3; i++){
              //click the button
              WebElement arrow = driver.findElement(By.xpath("//*[@id=\"ui-datepicker-div\"]/div[2]/div/a/span"));
              arrow.click();

             }
          WebElement arr1 = driver.findElement(By.xpath("//*[@id=\"ui-datepicker-div\"]/div[2]/table/tbody/tr[1]/td[5]/a"));
          arr1.click();
          driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);

          WebElement dep1 = driver.findElement(By.xpath("//*[@id=\"ui-datepicker-div\"]/div[1]/table/tbody/tr[2]/td[7]/a"));
          dep1.click();
          driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);


        Select curr1 = new Select(driver.findElement(By.xpath("//*[@id=\"ctl00_mainContent_DropDownListCurrency\"]")));
        curr1.selectByVisibleText("INR");
        driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);

        driver.findElement(By.xpath("//*[@id=\"ctl00_mainContent_btn_FindFlights\"]")).click();

        WebElement rate = driver.findElement(By.xpath("//*[@id=\"taxAndFeeInclusiveDivBody\"]/h4[1]/span[1]"));

         if (rate < 9000) {
             driver.findElement(By.xpath("//*[@id=\"continue-to-contact-page\"]/span[1]")).click();
         }
   }     
}

2 个答案:

答案 0 :(得分:0)

费率对象的类型为 WebElement 。您必须提取文本数据并将其转换为整数类型以进行比较。

if条件应如下所示:

 if (Integer.parseInt(rate.getText()) < 9000) {

答案 1 :(得分:0)

在spicejet.com中,rate是Float值。所以你可以替换下面的行

if(Float.parseFloat(rate.getText()。replaceAll(&#34;,&#34;,&#34;&#34;))&lt; 9000)

相关问题