2016-05-05 1 views
4

Я написал файл функций, чтобы проверить кнопку создания элементов. Но он генерирует сообщение об ошибке вКакова ошибка cucumber.runtime.CucumberException: несоответствие Arity: определение шага в селене с Java

cucumber.runtime.CucumberException: Arity mismatch: Step Definition. 

Я не знаю, почему его происходит, так как я новичок в автоматизации тестирования.

Ниже приведен код, который я написал.

@When("^create elements$") 
public void create_elements_for_attributes(WebElement elementToClick) throws Throwable { 
driver.findElement(By.id("newElement")).click(); 
} 

Ошибка, которую я получил, заключается в следующем.

cucumber.runtime.CucumberException: Arity mismatch: Step Definition 'mCollector.features.StepDefinitions_mCollector.create_elements_for_attributes(WebElement) in file:/C:/Users/Admin/workspace/MStudio%20-%20eBilling/bin/' with pattern [^create elements$] is declared with 1 parameters. However, the gherkin step has 0 arguments []. 
+0

Помог ли ответ ниже? –

ответ

2

В вашем методе create_elements_for_attributes вы ожидаете один аргумент типа WebElement но ваше регулярное выражение не отражает каких-либо аргументов. Это должно выглядеть примерно так, что вместо того, чтобы:

@When("^create elements \"([^\"]*)\"$") 

, а затем в вашем файле особенность:

When create elements "element" 

Но это не будет работать, потому что вы не можете передать WebeElement объект из художественного файла огурца , Вы должны работать только с примитивными значениями и DataTables. Другие типы (например, WebeElement) должны быть созданы внутри самого кода клея.

Смежные вопросы