Перейти к содержимому

Автоматизатор мобильных приложений
онлайн, начало 11 августа
Тестирование безопасности
онлайн, начало 11 августа
Тестирование мобильных приложений
онлайн, начало 11 августа
Автоматизация тестирования REST API на Python
онлайн, начало 11 августа
Фотография

Нужна помощь в тесте на Selenium+JS


  • Авторизуйтесь для ответа в теме
Сообщений в теме: 8

#1 Dirtstdr

Dirtstdr

    Новый участник

  • Members
  • Pip
  • 5 сообщений

Отправлено 22 июля 2021 - 17:57

Тест должен вытаскивать из кода страницы теги iframe.object и embed и проверять вложены ли они в див с определённым классом. Код приложил, в ходе теста он не может даже вытащить тег со страницы, кто может подсказать где моя ошибка? В тестировании недавно, пишу первый тест.

Прикрепленные файлы

  • Прикрепленный файл  my testt.txt   2,88К   10 Количество загрузок:

  • 0

#2 BabyRoot

BabyRoot

    Специалист

  • Members
  • PipPipPipPipPip
  • 823 сообщений


Отправлено 24 июля 2021 - 13:17

Приложите пример DOM, часть где фрейм и его предки, скриншотик хотя бы.

getElementsByTagName === 'IFRAME'

там же вроде как маленькие буквы ннадо?...   ifame не равно IFRAME


  • 0

#3 Dirtstdr

Dirtstdr

    Новый участник

  • Members
  • Pip
  • 5 сообщений

Отправлено 24 июля 2021 - 14:49

Приложите пример DOM, часть где фрейм и его предки, скриншотик хотя бы.

getElementsByTagName === 'IFRAME'

там же вроде как маленькие буквы ннадо?...   ifame не равно IFRAME

Маленькие буквы используются при парсинге XML-файла, для html - большие

Пример типичной веб-страницы. в этом случае тест должен проходить без ошибок т.к. тег обёрнут в  <div class="responsive-embed"> :

<ul class="accordion" data-accordion data-multi-expand="true" data-allow-all-closed="true">
          <li class="accordion-item" data-accordion-item><a class="accordion-title" href="#" title="Я хочу на семинар">Я хочу на семинар, но директор не выделяет на это денег. И не понимает зачем нужно повышать квалификацию? Что ему сказать?</a>
            <div class="accordion-content" data-tab-content>
              <p><b>Ответ:</b><br>Варианты всегда есть. Или попробуйте объяснить, что бухгалтер денег не зарабатывает. Он их считает. И как правило - бухгалтерам принято оплачивать семинары, потому что в их деле так много изменений. Почему же для бухгалтера приемлемо повышать квалификацию на семинарах за счёт фирмы, а для сметчика, который как раз зарабатывает деньги - нет? Разве не стоит сделать так, чтобы приносящий деньги сотрудник имел бы выше квалификацию и приносил бы денег еще больше?</p>
            </div>
          </li>
        </ul>
      </div>
      <div class="row column text-center">
        <p><br></p>
        <h3 class="light-text">Как знать, может этот семинар изменит вашу жизнь и карьеру? Что может быть полезнее? Совместите обучение и общение с единомышленниками &#128521;</h3>
        <p><br><a class="button main-btn yellow" href="#prices" title="Принять участие">Принять участие</a></p>
      </div>
    </section>
          <section class="dark fotogallery">
      <div class="row small-up-3">
        <div class="column foto-img"><img src="./i/1.jpg" title="Павел Владимирович Горячкин" alt="Павел Владимирович Горячкин"></div>
        <div class="column foto-img"><img src="./i/2.jpg" title="Павел Владимирович Горячкин" alt="Павел Владимирович Горячкин"></div>
        <div class="column foto-img"><img src="./i/3.jpg" title="Павел Владимирович Горячкин" alt="Павел Владимирович Горячкин"></div>
        <div class="column foto-img"><img src="./i/4.jpg" title="Павел Владимирович Горячкин" alt="Павел Владимирович Горячкин"></div>
        <div class="column foto-img"><img src="./i/5.jpg" title="Павел Владимирович Горячкин" alt="Павел Владимирович Горячкин"></div>
        <div class="column foto-img"><img src="./i/6.jpg" title="Павел Владимирович Горячкин" alt="Павел Владимирович Горячкин"></div>
      </div>
<div class="row">
        <div class="small-6 column">
          <div class="responsive-embed">
            <iframe width="560" height="315" src="https://www.youtube.com/embed/a6L3RbErdxY" frameborder="0" allowfullscreen></iframe>
          </div>
        </div>    
<!--               <div class="small-6 column">
          <div class="responsive-embed">
            <iframe width="560" height="315" src="https://www.youtube.com/embed/aCOSTTfQ8hU" frameborder="0" allowfullscreen></iframe>
          </div>
        </div>
-->
 <div class="small-6 column">
          <div class="responsive-embed">
            <iframe width="560" height="315" src="https://www.youtube.com/embed/SJE-4KK3mEM" frameborder="0" allowfullscreen></iframe>
          </div>
        </div>
      </div>

  • 0

#4 BabyRoot

BabyRoot

    Специалист

  • Members
  • PipPipPipPipPip
  • 823 сообщений


Отправлено 24 июля 2021 - 21:14

elem.getElementsByTagName === 'IFRAME'

заменить на 

elem.getElementsByTagName === 'iframe'


  • 0

#5 Dirtstdr

Dirtstdr

    Новый участник

  • Members
  • Pip
  • 5 сообщений

Отправлено 26 июля 2021 - 08:02

elem.getElementsByTagName === 'IFRAME'

заменить на 

elem.getElementsByTagName === 'iframe'

Заменил, разницы нет

https://ibb.co/9rJzc7M


  • 0

#6 BabyRoot

BabyRoot

    Специалист

  • Members
  • PipPipPipPipPip
  • 823 сообщений


Отправлено 26 июля 2021 - 11:00

Я не силён в JS, но что делают эти 2 строки (66-67), а точнее 66?:

        document
        elem.getElementsByTagName === 'IFRAME'

  • 0

#7 Dirtstdr

Dirtstdr

    Новый участник

  • Members
  • Pip
  • 5 сообщений

Отправлено 27 июля 2021 - 16:19

 

Я не силён в JS, но что делают эти 2 строки (66-67), а точнее 66?:

        document
        elem.getElementsByTagName === 'IFRAME'

https://developer.mo...ementsByTagName


  • 0

#8 BabyRoot

BabyRoot

    Специалист

  • Members
  • PipPipPipPipPip
  • 823 сообщений


Отправлено 27 июля 2021 - 18:27

Я спросил про 66 строку.


  • 0

#9 Dirtstdr

Dirtstdr

    Новый участник

  • Members
  • Pip
  • 5 сообщений

Отправлено 27 июля 2021 - 18:50

Должно выглядеть так,видимо файл с черновиком перепутал.  Сама команда document  служит точкой входа для получения содержимого веб-страницы

document
	.querySelectorAll('body *:not(script):not(style):not(noscript):not(svg):not(path):not(option)')
          .forEach(function(elem) {

            if (result.frame === false){
              result.frame = checkElementFrame(elem);
            }

            if (result.object === false){
              result.object = checkElementObject(elem);
            }
            if (result.embed === false){
              result.embed = checkElementEmbed(elem);
            }
            if (result.frame === true && result.object === true && result.embed === true ){
              return result;
            }
          });

  • 0


Selenium 2.0: стартовый уровень
онлайн
Программирование на Java для тестировщиков
онлайн
Автоматизация функционального тестирования
онлайн
Selenium WebDriver: полное руководство
онлайн



Количество пользователей, читающих эту тему: 0

0 пользователей, 0 гостей, 0 анонимных

Яндекс.Метрика
Реклама на портале