Коллекция, содержащая определенную строку, но имеющая список строк - PullRequest
0 голосов
/ 27 апреля 2018

Я реализовал этот метод:

@FindBy(partialLinkText = "Avocode")
List<WebElement> results;

public List<String> getSearchResults (){
    List<String> text = results.stream().map(WebElement::getText).collect(Collectors.toList());
    return text;
}

Затем у меня есть тест, пытающийся найти какое-либо соответствие с 'avocode':

assertThat(find.getSearchResults(),IsCollectionContaining.hasItem("Avocode"));

Мои импортированные библиотеки:

import org.hamcrest.core.IsCollectionContaining;
import org.testng.Assert;
import org.testng.annotations.Test;
import pageObjects.Search;

import static org.junit.Assert.assertThat;

++ Мои зависимости:

<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.11</version>
<scope>test</scope>
</dependency>

<dependency>
<groupId>org.hamcrest</groupId>
<artifactId>hamcrest-all</artifactId>
<version>1.3</version>
<scope>test</scope>
</dependency>

Я ожидаю, что тест пройдет успешно, хотя я получаю:

java.lang.AssertionError:
Ожидается: коллекция, содержащая «Авокод»

но: был ли "Avocode \" готов к употреблению \ "DUO pack", был "Avocode Hass", был "Avocode Fuerte", был "Avocode Bacon"

Я полагаю, что я следовал всем советам здесь в переполнении стека, но ничего не работает - там есть Avocode, поэтому он должен пройти ...

Буду признателен за любую помощь (я новичок в программировании).

Спасибо, Lijana

...