我是一个java初学者,我有完成我的项目这个严重的问题。 我为另一个站点编写了一个类似于下面示例的代码,并且无法在JFrame的动作侦听器中运行该代码,我的问题可以改变,因为这甚至为此示例代码创建了一个像JFrame r的图形界面。
import java.util.List;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.firefox.FirefoxDriver;
import org.openqa.selenium.htmlunit.HtmlUnitDriver;
public class GoogleSuggest
{
public static void main(String[] args) throws Exception
{
WebDriver driver = new FirefoxDriver();
driver.get("http://www.google.com/webhp?complete=1&hl=en");
WebElement query = driver.findElement(By.name("q"));
query.sendKeys("Cheese");
long end = System.currentTimeMillis() + 50000;
while (System.currentTimeMillis() < end) {
WebElement resultsDiv = driver.findElement(By.className("gssb_e"));
if (resultsDiv.isDisplayed()) {
break;
}
}
List<WebElement> allSuggestions = driver.findElements(By.xpath("//td[@class='gssb_a gbqfsf']"));
for (WebElement suggestion : allSuggestions) {
System.out.println(suggestion.getText());
}
}
}
我想要运行的是一个Jframe在dat中用于输入单词的小文本字段,当在dat动作监听器中按下Jbutton时我想运行程序非常类似于上面的单词“cheese” “我在上面的示例代码中提供了shud被替换为我在d text文本字段中提供的字段n输出上面的代码shud b显示在Jframe的textarea中。无法在actionlistener中使用webdriver。
任何人请在项目完成时提供帮助
答案 0 :(得分:0)
我在应用程序中像WebDriver driver;
那样吃了一个驱动程序,当我想加载一个新的浏览器时,我称之为这个方法:
public void changeDriver(){
String[] options = {"Google Chrome","Internet Explorer","Firefox"};
int result = JOptionPane.showOptionDialog(null, "Choisir le navigateur de test", "Choix du navigateur", JOptionPane.DEFAULT_OPTION , JOptionPane.QUESTION_MESSAGE, null, options, options[0]);
switch (result)
{
case 0:
System.setProperty("webdriver.chrome.driver", "C:\\envdev\\chromedriver.exe");
driver = new ChromeDriver();
break;
case 1:
driver = new InternetExplorerDriver();
break;
case 2:
FirefoxProfile profile = new FirefoxProfile();
driver = new FirefoxDriver(profile);
break;
default:
System.out.println("default browser lunched");
driver = new FirefoxDriver();
break;
}
}
下载ChromeDriver here