在Katalon Studio中执行Junit测试时出现内部错误
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在Katalon Studio中执行Junit测试时出现内部错误相关的知识,希望对你有一定的参考价值。
我必须将Gherkin与Katalon Studio集成,因此我使用基本场景在Groovy中创建了一个测试项目,并在Katalon Studio中导入了该项目。当我在Katalon Studio中执行Junit测试时,它会抛出错误:“发生内部错误:”启动TestGroovy“.java.lang.NullPointerException”。我已经添加了必要的库。
注意:测试在Eclipse中成功通过。
在Katalon上运行Junit测试需要多少额外的东西?
TestGroovy.groovy
package groovyKat
import org.junit.runner.RunWith
import cucumber.api.CucumberOptions;
import cucumber.api.junit.Cucumber;
@RunWith(Cucumber.class)
@CucumberOptions(
features = "Features"
,glue= ["groovyKat"]
)
class TestGroovy {
}
TestGroovyStepDef.groovy
package groovyKat
import java.util.concurrent.TimeUnit
import org.openqa.selenium.By
import org.openqa.selenium.WebDriver
import org.openqa.selenium.firefox.FirefoxDriver
import cucumber.api.java.en.Given
import cucumber.api.java.en.Then
import cucumber.api.java.en.When
class TestGroovyStepDef {
static WebDriver driver;
@Given('^A User is on Demoqa\.com$')
void a_User_is_on_Demoqa_com() throws Throwable {
System.setProperty('webdriver.gecko.driver','D:/geckodriver/geckodriver.exe');
driver = new FirefoxDriver();
driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);
driver.get('http://www.store.demoqa.com');
}
@When('^User clicks on MyAccount link$')
void user_Clicks_on_MyAccount_link() throws Throwable {
driver.findElement(By.xpath('.//*[@id="account"]/a')).click();
}
@When('^User enters username "(.*)" and password "(.*)"$')
void user_enters_username_and_password(String username,String password) throws Throwable {
driver.findElement(By.id('log')).sendKeys(username);
driver.findElement(By.id('pwd')).sendKeys(password);
driver.findElement(By.id('login')).click();
}
@Then('^Message displayed Login Successfully$')
void message_displayed_Login_Successfully() throws Throwable {
System.out.println('Login Successfully');
}
}
testSample.feature
Feature: Login feature
Scenario: Successful Login with Valid Credentials
Given A User is on Demoqa.com
When User clicks on MyAccount link
And User enters username "xxxxxx" and password "xxxxxxx"
Then Message displayed Login Successfully
答案
使用当前版本的Katalon(5.4.1),无法运行此脚本,即以JUnit(Cucumber)-Test实现的脚本。
您必须重写Katalon Studio的测试。
见https://forum.katalon.com/discussion/1976/how-can-i-import-selenium-scripts-in-katalon
以上是关于在Katalon Studio中执行Junit测试时出现内部错误的主要内容,如果未能解决你的问题,请参考以下文章
Katalon Studio之web自动化(二)---创建测试用例