我在Java中的一个类中创建了Junit测试。基本上这个类中有多个测试用例,当测试运行时,chrome页面会出现一个空白页面。它运行不正常,它为每个它重置的@ test senario提供另一个chrome页面,而不是在同一页面内执行每个测试,然后进行下一个测试。当我运行这个全部在(一个@test例子)时,它工作正常。按顺序的Junit自动化测试
我用量角器与描述和其,没有任何问题的程序一样。我正在尝试使用Junit在Java中执行相同的操作,因此如果测试用例失败,我可以快速转到那个测试用例。我有一个@Before和@Test和@after注释
请帮助我不是经验丰富的Java.My代码如下。
public class BankrateAlt {
private WebDriver driver;
private String baseUrl;
private boolean acceptNextAlert = true;
private StringBuffer verificationErrors = new StringBuffer();
@Before
public void setUp() throws Exception {
System.setProperty("webdriver.chrome.driver", "C:\\eclipse\\Java\\chromedriver\\chromedriver.exe");
System.setProperty("webdriver.gecko.driver", "C:\\eclipse\\Java\\geckodriver\\geckodriver.exe");
driver = new ChromeDriver();
baseUrl = "http://www.bankrate.com/";
driver.manage().timeouts().implicitlyWait(30, TimeUnit.SECONDS);
}
@Test
public void moveToElementMortgages() throws InterruptedException{
Actions builder = new Actions(driver);
WebElement element = driver.findElement(By.linkText("MORTGAGES"));
builder.moveToElement(element).perform();
Thread.sleep(2000);
}
@Test
public void clickOnCalculators() throws InterruptedException{
Actions builder = new Actions(driver);
WebElement calculator = driver.findElement(By.cssSelector("a[href*='mortgage-calculators']"));
builder.moveToElement(calculator).perform();
calculator.click();
Thread.sleep(2000);
}
@Test
public void nextPageScrollDown() throws InterruptedException{
((JavascriptExecutor)driver).executeScript("scroll(0, 400)");
Thread.sleep(2000);
}
@Test
public void clickMorgageLoanPaymentCalc() throws InterruptedException{
WebElement MorgageCalc = driver.findElement(By.linkText("Mortgage loan payment calculator"));
MorgageCalc.click();
Thread.sleep(2000);
}
@Test
public void scrollDownCalcPage() throws InterruptedException{
((JavascriptExecutor)driver).executeScript("scroll(0, 400)");
Thread.sleep(2000);
}
@Test
public void clearMortgageSendKeys() throws InterruptedException{
WebElement MortgageField = driver.findElement(By.id("KJE-LOAN_AMOUNT"));
MortgageField.clear();
Thread.sleep(1000);
WebElement LoanAmount = driver.findElement(By.name("LOAN_AMOUNT"));
LoanAmount.sendKeys("$240,000");
Thread.sleep(3000);
}
在日食当我使用@FixMethodOrder(MethodSorters.NAME_ASCENDING)我得到“方法排序不能定义为一个变量” – Jonathan
好吧,我发现了这个问题并解决它 – Jonathan
问题我现在有的是,它的网页出来,但没有自动去网址我将不得不在第一步输入? – Jonathan