Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public CustomConditions conditions = new CustomConditions(driver);
- /*
- нам не нужно создавать объект такого класса и передавать ему вебдрайвер
- см следующий комментарий ...
- */
- ...
- public class CustomConditions {
- public static WebDriver driver;
- public CustomConditions(WebDriver driver){
- this.driver = driver;
- }
- /*
- нам не нужно сюда передавать драйвер - т к параметром метода apply у кондишена - будет текущий вебдрайвер
- см следующий комментарий ...
- */
- public static ExpectedCondition<Boolean> sizeOf(final By elementsLocator, final int expectedSize){
- return new ExpectedCondition<Boolean>() {
- ...
- public Boolean apply(WebDriver webDriver) {
- ...
- /*
- сюда передан webDriver
- в итоге - this.driver - не пригодился
- см следующий комментарий ...
- */
- };
- }
- }
- ....
- wait.until(conditions.sizeOf(...
- /*
- метод sizeOf - статический в классе CustomConditions
- используй import static для CustomConditions.sizeOf
- и тут - вызывай sizeOf
- */
- ****************************************************
- wait.until(textToBePresentInElementLocated(searchResults, "Selenium automates browsers"));
- /*
- ну да...
- технически - если по селектору будет несколько элементов - мы получим самый первый из них
- тут тебе повезло с условием задания)
- если рассматривать общий случай - то вот так пришлось бы делать
- http://joxi.ru/823k1x0U61Yn72
- по крайней мере - исходя из инструментов, которые есть сейчас )
- */
Advertisement
Add Comment
Please, Sign In to add comment