<?xml version="1.0" encoding="UTF-8" ?>
<rss version="2.0">
<channel>
	<title>Selenium - Functional Testing: новые темы</title>
	<description>Selenium - Functional Testing: новые темы</description>
	<link>https://software-testing.ru/forum</link>
	<pubDate>Tue, 19 Aug 2025 11:52:06 +0000</pubDate>
	<ttl>60</ttl>
	<item>
		<title>Selenium: поиск именно в определенном div блоке</title>
		<link>https://software-testing.ru/forum/index.php?/topic/42088-selenium-poisk-imenno-v-opredelennom-div-bloke/</link>
		<description><![CDATA[<p><span style="color:rgb(12,13,14);font-family:'-apple-system', BlinkMacSystemFont, 'Segoe UI Adjusted', 'Segoe UI', 'Liberation Sans', sans-serif;font-size:15px;">Есть div блок. Хотелось бы, чтобы код автоматически в этом блоке находил по тексту строку и выбирал её. Но не получается: он все ровно не в div-блоке ищет. Старался сделать таким методом.</span></p>
<p>&nbsp;</p>
<p><span style="background-color:transparent;font-family:inherit;font-style:inherit;font-weight:inherit;">Otbor_podrazd1 = </span><span style="background-color:transparent;font-family:inherit;font-style:inherit;font-weight:inherit;margin:0px;font-size:13px;">"Поликлиника взрослая"</span></p>
<p>test1 = driver.find_element(By.ID, <span style="margin:0px;font-style:inherit;font-weight:inherit;font-family:inherit;font-size:13px;">"ext-gen3208"</span>) <span style="margin:0px;font-style:inherit;font-weight:inherit;font-family:inherit;font-size:13px;"># Тут блок div находит</span><br>
<br>
test1 = driver.find_element(By.XPATH, <span style="margin:0px;font-style:inherit;font-weight:inherit;font-family:inherit;font-size:13px;">f"//div[contains(text(), '<span style="margin:0px;font-style:inherit;font-weight:inherit;font-family:inherit;">{Otbor_podrazd1}</span>')]"</span>).click() <span style="margin:0px;font-style:inherit;font-weight:inherit;font-family:inherit;font-size:13px;">#Тут я ищу внутри блока div, по тексту строку</span></p>
<p>&nbsp;</p>
<p><span style="color:rgb(12,13,14);font-family:'-apple-system', BlinkMacSystemFont, 'Segoe UI Adjusted', 'Segoe UI', 'Liberation Sans', sans-serif;font-size:15px;">В итоге, с переменной Otbor_podrazd1 код находит, но не в блоке div, а вообще</span></p>
]]></description>
		<pubDate>Tue, 19 Aug 2025 11:52:06 +0000</pubDate>
		<guid isPermaLink="false">https://software-testing.ru/forum/index.php?/topic/42088-selenium-poisk-imenno-v-opredelennom-div-bloke/</guid>
		<category>Selenium - Functional Testing</category>
	</item>
	<item>
		<title>Отключение блокировки скачивания файлов в ChromeDriver</title>
		<link>https://software-testing.ru/forum/index.php?/topic/41913-otkliuchenie-blokirovki-skachivaniia-fajlov-v-chromedriver/</link>
		<description><![CDATA[<p>Доброго времени суток!</p>
<p>&nbsp;</p>
<p>Столкнулась с проблемой с ChromeDriver - в автотестах есть необходимость проверять возможность скачать файлы. Один из файлов имеет формат xml, который не удается скачать из-за настроек безопасности браузера. При попытке скачать выдает предупреждение о том, что скачивание заблокировано</p>
<p><a class='resized_img' rel='lightbox[186267]' id='ipb-attach-url-8000-0-94615600-1780994217' href="https://software-testing.ru/forum/uploads/monthly_03_2025/post-74437-0-17273400-1741860521.jpg" title="dl-blocked.jpg - Размер 9,11К"><img itemprop="image" src="https://software-testing.ru/forum/uploads/monthly_03_2025/post-74437-0-17273400-1741860521_thumb.jpg" id='ipb-attach-img-8000-0-94615600-1780994217' style='width:100;height:31' class='attach' width="100" height="31" alt="dl-blocked.jpg" /></a>

</p>
<p>&nbsp;</p>
<p>Поэкспериментировав, пришла к выводу, что нужная настройка для отключения такого поведения - это флаг unsafely-treat-insecure-origin-as-secure. Если прописать нужный хост вручную в Google Chrome, а затем включить эту настройку и перезапустить браузер, то все работает как надо, xml скачиваются без предупреждений. Но сделать это программно для ChromeDriver никак не получилось.</p>
<p>&nbsp;</p>
<p>Применяю следующие опции для драйвера<br>
options.AddUserProfilePreference("download.default_directory", downloadPath);<br>
options.AddUserProfilePreference("download_restrictions", 0);<br>
options.AddUserProfilePreference("download.safebrowsing.enabled", true);<br>
options.AddUserProfilePreference("download.prompt_for_download", false);<br>
options.AddArguments($"--unsafely-treat-insecure-origin-as-secure=<a href='http://example.com' class='bbc_url' title='Ссылка' rel='nofollow external'>http://example.com");</a><br>
<br>
Через ChromeOptions задаю значение для флага unsafely-treat-insecure-origin-as-secure (options.AddArguments($"--unsafely-treat-insecure-origin-as-secure=<a href='http://example.com' class='bbc_url' title='Ссылка' rel='nofollow external'>http://example.com"))</a><br>
Указанный URL прописывается в настройку unsafely-treat-insecure-origin-as-secure, но не включает ее, из-за чего поведение никак не меняется и скачивание xml продолжает блокироваться.</p>
<p><a class='resized_img' rel='lightbox[186267]' id='ipb-attach-url-8001-0-94692700-1780994217' href="https://software-testing.ru/forum/uploads/monthly_03_2025/post-74437-0-75756400-1741860533.jpg" title="flag-disabled.jpg - Размер 36,67К"><img itemprop="image" src="https://software-testing.ru/forum/uploads/monthly_03_2025/post-74437-0-75756400-1741860533_thumb.jpg" id='ipb-attach-img-8001-0-94692700-1780994217' style='width:100;height:44' class='attach' width="100" height="44" alt="flag-disabled.jpg" /></a>

</p>
<p>&nbsp;</p>
<p>Как можно программно включить флаг unsafely-treat-insecure-origin-as-secure для ChromeDriver?</p>
<p>Или, может, есть другие способы обойти эту проблему?</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>ChromeDriver - 132.0.6834.15900<br>
Selenium - 4.28.0<br>
&nbsp;</p>
]]></description>
		<pubDate>Thu, 13 Mar 2025 10:11:00 +0000</pubDate>
		<guid isPermaLink="false">https://software-testing.ru/forum/index.php?/topic/41913-otkliuchenie-blokirovki-skachivaniia-fajlov-v-chromedriver/</guid>
		<category>Selenium - Functional Testing</category>
	</item>
	<item>
		<title>Не загружается плагин в браузер Firefox с использованием Selenide</title>
		<link>https://software-testing.ru/forum/index.php?/topic/41715-ne-zagruzhaetsia-plagin-v-brauzer-firefox-s-ispolzovan/</link>
		<description><![CDATA[<p style="font-family:'-apple-system', BlinkMacSystemFont, 'Segoe UI Adjusted', 'Segoe UI', 'Liberation Sans', sans-serif;font-size:15px;color:rgb(12,13,14);">Я пытаюсь загрузить плагин в Firefox, используя Selenide, но это не работает. Я попробовал все, что только мог придумать, но все равно получаю ошибку.</p>
<p style="font-family:'-apple-system', BlinkMacSystemFont, 'Segoe UI Adjusted', 'Segoe UI', 'Liberation Sans', sans-serif;font-size:15px;color:rgb(12,13,14);">Я использую библиотеку Selenide версии 7.3.3. браузер Firefox версии 130.0 64-битный.</p>
<pre  class="prettyprint">

        /**
     * Базовый класс для всех тестов.
     * Настраивает браузер и загружает необходимые расширения.
     */
    public class BasicTest extends Methods {
    
        /**
         * Настраивает браузер перед каждым тестом.
         * Использует Firefox в качестве браузера по умолчанию.
         * Загружает расширение CryptoPro для Firefox.
         */
        @BeforeAll
        public static void setBrowser() {
            // Настраиваем WebDriver для Firefox
            WebDriverManager.firefoxdriver().setup();
            Configuration.browser = "firefox";
    
            // Устанавливаем размер окна браузера
            Configuration.browserSize = "1920x1080";
    
            // Путь к расширению Firefox
            String firefoxAddonsPath = "src/main/resources/firefox_extension_latest.xpi";
    
            // Проверяем, существует ли файл расширения
            File addonFile = new File(firefoxAddonsPath);
            if (addonFile.exists()) {
                // Устанавливаем путь к расширению, если файл существует
                System.setProperty("selenide.firefox.addons", firefoxAddonsPath);
                System.out.println("Расширение успешно загружено");
            } else {
                // Записываем сообщение об ошибке, если файл не найден
                System.err.println("Файл расширения не найден: " + firefoxAddonsPath);
                // Бросаем исключение, если расширение не найдено
                throw new RuntimeException("Расширение Firefox не найдено: " + firefoxAddonsPath);
            }
    
            // Включаем быстрое заполнение полей
            Configuration.fastSetValue = true;
        }
    }
</pre>
<p><span style="color:rgb(12,13,14);font-family:'-apple-system', BlinkMacSystemFont, 'Segoe UI Adjusted', 'Segoe UI', 'Liberation Sans', sans-serif;font-size:15px;">Я ожидаю, что расширение&nbsp;</span>firefox_extension_latest.xpi&nbsp;<span style="color:rgb(12,13,14);font-family:'-apple-system', BlinkMacSystemFont, 'Segoe UI Adjusted', 'Segoe UI', 'Liberation Sans', sans-serif;font-size:15px;">успешно загрузится в браузер Firefox</span></p>
]]></description>
		<pubDate>Fri, 13 Sep 2024 17:49:16 +0000</pubDate>
		<guid isPermaLink="false">https://software-testing.ru/forum/index.php?/topic/41715-ne-zagruzhaetsia-plagin-v-brauzer-firefox-s-ispolzovan/</guid>
		<category>Selenium - Functional Testing</category>
	</item>
	<item>
		<title>Динамическое обновление браузеров и драйверов для веб тестов</title>
		<link>https://software-testing.ru/forum/index.php?/topic/41681-dinamicheskoe-obnovlenie-brauzerov-i-drajverov/</link>
		<description><![CDATA[<p>Добрый день! Такой вопрос: как можно реализовать динамическое обновление браузеров (и их драйверов соответственно) и нужно ли это? И откуда брать драйвера и версии для докеров?</p>
]]></description>
		<pubDate>Thu, 25 Jul 2024 11:04:55 +0000</pubDate>
		<guid isPermaLink="false">https://software-testing.ru/forum/index.php?/topic/41681-dinamicheskoe-obnovlenie-brauzerov-i-drajverov/</guid>
		<category>Selenium - Functional Testing</category>
	</item>
	<item>
		<title>При автотестировании у Chrome открывается доп вкладка</title>
		<link>https://software-testing.ru/forum/index.php?/topic/41650-pri-avtotestirovanii-u-chrome-otkryvaetsia-dop-vklad/</link>
		<description><![CDATA[<p>При запуске автотеста, на python через selenium, на chrome открывается дополнительная вкладка. Из-за этого на других браузерах (нет открытия доп вкладки), идёт не правильный подсчёт вкладок и сверки URL страницы соответствия. Как можно убрать доп вкладку на Chrome?</p>
<p>Спасибо за внимание!</p>
<div id='attach_wrap' class='clearfix'>
	<h4>Прикрепленные изображения</h4>
	<ul>
		
			<li class=''>
				<a class='resized_img' rel='lightbox[185881]' id='ipb-attach-url-7996-0-95209700-1780994217' href="https://software-testing.ru/forum/uploads/monthly_06_2024/post-85937-0-20874600-1718011263.jpg" title="chrome.jpg - Размер 26,61К"><img itemprop="image" src="https://software-testing.ru/forum/uploads/monthly_06_2024/post-85937-0-20874600-1718011263_thumb.jpg" id='ipb-attach-img-7996-0-95209700-1780994217' style='width:100;height:40' class='attach' width="100" height="40" alt="chrome.jpg" /></a>


			</li>
		
	</ul>
</div>]]></description>
		<pubDate>Mon, 10 Jun 2024 09:29:07 +0000</pubDate>
		<guid isPermaLink="false">https://software-testing.ru/forum/index.php?/topic/41650-pri-avtotestirovanii-u-chrome-otkryvaetsia-dop-vklad/</guid>
		<category>Selenium - Functional Testing</category>
	</item>
	<item>
		<title>Не могу найти элемент. Правая клавиша мышки не работает.</title>
		<link>https://software-testing.ru/forum/index.php?/topic/41636-ne-mogu-najti-element-pravaia-klavisha-myshki-ne-ra/</link>
		<description><![CDATA[<p>Здравствуйте.</p>
<p>&nbsp;</p>
<p>Я не программист, но изучаю автоматизацию процессов на работе с помощью Selenium и VBA (Excel). Сейчас я получил задание с новым сайтом, и, как мне сказали, там задействована Java. Всё работает хорошо до того момента, как появляется табличка "сохранить". После этого правая клавиша мышки не работает, то есть я не могу кликнуть на элемент и изучить его. В окне Inspect также не замечено никаких серьёзных изменений. Как кликнуть на эту табличку, либо обойти её? Используется программа для отельного бизнеса Ideas в браузере Microsoft Edge.</p>
<p>&nbsp;</p>
<p>Заранее спасибо за ответы. Скриншоты прилагаются.</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<div id='attach_wrap' class='clearfix'>
	<h4>Прикрепленные изображения</h4>
	<ul>
		
			<li class=''>
				<a class='resized_img' rel='lightbox[185859]' id='ipb-attach-url-7994-0-95399400-1780994217' href="https://software-testing.ru/forum/uploads/monthly_05_2024/post-85758-0-17014900-1716386081.png" title="Ideas Save Pop-Up Window Issue.png - Размер 185,22К"><img itemprop="image" src="https://software-testing.ru/forum/uploads/monthly_05_2024/post-85758-0-17014900-1716386081_thumb.png" id='ipb-attach-img-7994-0-95399400-1780994217' style='width:100;height:51' class='attach' width="100" height="51" alt="Ideas Save Pop-Up Window Issue.png" /></a>


			</li>
		

			<li class=''>
				<a class='resized_img' rel='lightbox[185859]' id='ipb-attach-url-7995-0-95403300-1780994217' href="https://software-testing.ru/forum/uploads/monthly_05_2024/post-85758-0-98434000-1716386089.png" title="Ideas Save Pop-Up Window Issue Code.png - Размер 296,73К"><img itemprop="image" src="https://software-testing.ru/forum/uploads/monthly_05_2024/post-85758-0-98434000-1716386089_thumb.png" id='ipb-attach-img-7995-0-95403300-1780994217' style='width:100;height:51' class='attach' width="100" height="51" alt="Ideas Save Pop-Up Window Issue Code.png" /></a>


			</li>
		
	</ul>
</div>]]></description>
		<pubDate>Wed, 22 May 2024 13:57:54 +0000</pubDate>
		<guid isPermaLink="false">https://software-testing.ru/forum/index.php?/topic/41636-ne-mogu-najti-element-pravaia-klavisha-myshki-ne-ra/</guid>
		<category>Selenium - Functional Testing</category>
	</item>
	<item>
		<title>Как создать jar файл из проекта с автотестами?</title>
		<link>https://software-testing.ru/forum/index.php?/topic/41573-kak-sozdat-jar-fajl-iz-proekta-s-avtotestami/</link>
		<description><![CDATA[<p>Добрый день!</p>
<p>&nbsp;</p>
<p>Подскажите пожалуйста, если кто-то сталкивался с такой необходимостью.<br>
Нужно создать jar-файл из проекта с автотестами с использованием maven и testNG.<br>
Есть необходимость запускать тесты из командной строки, но не привычным способом:<br>
mvn -Dsurefire.suiteXmlFiles=src/test/resources/testng.xml clean test&nbsp;<br>
а именно один раз создать jar-файл, а потом только запускать его.</p>
<p>Не смогла найти в сети ничего. Да и самой раньше никогда не было актуально.&nbsp;<br>
В проекте main класса нет. Структура в общих чертах такая:</p>
<p><a class='resized_img' rel='lightbox[185752]' id='ipb-attach-url-7992-0-95686400-1780994217' href="https://software-testing.ru/forum/uploads/monthly_02_2024/post-58449-0-91562400-1709134193.png" title="Screenshot from 2024-02-28 18-20-27.png - Размер 32,97К"><img itemprop="image" src="https://software-testing.ru/forum/uploads/monthly_02_2024/post-58449-0-91562400-1709134193_thumb.png" id='ipb-attach-img-7992-0-95686400-1780994217' style='width:100;height:89' class='attach' width="100" height="89" alt="Screenshot from 2024-02-28 18-20-27.png" /></a>

</p>
<p>&nbsp;</p>
<p>Если при такой структуре создать jar-файл, их создаётся около 38 :) и если попытаться запустить&nbsp;jar-файл с названием проекта, то тесты не запускаются.<br>
java -jar test_project.jar</p>
<p>Ошибка:</p>
<div>no main manifest attribute, in sd-wan_tests.jar<br>
<br>
В файле Manifest раздел, где должен быть указан main класс удалила, т.к. с ним тоже не запускалось, потому что его нет :)<br>
<div><strong>Manifest-Version: 1.0</strong></div>
<div>Class-Path: log4j-core-2.19.0.jar log4j-api-2.19.0.jar failsafe-3.3.2.ja</div>
<div>&nbsp;r selenium-chrome-driver-4.18.1.jar commons-io-2.6.jar selenium-devtool</div>
<div>&nbsp;s-v85-4.18.1.jar selenium-ie-driver-4.18.1.jar selenium-http-4.18.1.jar</div>
<div>&nbsp; guava-33.0.0-jre.jar selenium-manager-4.18.1.jar opentelemetry-extensi</div>
<div>&nbsp;on-incubator-1.35.0-alpha.jar slf4j-api-1.7.5.jar selenium-java-4.18.1.</div>
<div>&nbsp;jar opentelemetry-sdk-common-1.35.0.jar opentelemetry-sdk-metrics-1.35.</div>
<div>&nbsp;0.jar selenium-api-4.18.1.jar opentelemetry-api-events-1.35.0-alpha.jar</div>
<div>&nbsp; selenium-chromium-driver-4.18.1.jar selenium-safari-driver-4.18.1.jar&nbsp;</div>
<div>&nbsp;checker-qual-3.41.0.jar log4j-1.2.17.jar listenablefuture-9999.0-empty-</div>
<div>&nbsp;to-avoid-conflict-with-guava.jar jsr305-3.0.2.jar jcommander-1.82.jar o</div>
<div>&nbsp;pentelemetry-sdk-extension-autoconfigure-spi-1.35.0.jar selenium-firefo</div>
<div>&nbsp;x-driver-4.18.1.jar auto-service-annotations-1.1.1.jar opentelemetry-co</div>
<div>&nbsp;ntext-1.35.0.jar opentelemetry-exporter-logging-1.35.0.jar byte-buddy-1</div>
<div>&nbsp;.14.12.jar selenium-devtools-v122-4.18.1.jar opentelemetry-sdk-logs-1.3</div>
<div>&nbsp;5.0.jar opentelemetry-semconv-1.23.1-alpha.jar opentelemetry-sdk-extens</div>
<div>&nbsp;ion-autoconfigure-1.35.0.jar slf4j-log4j12-1.7.5.jar selenium-json-4.18</div>
<div>&nbsp;.1.jar commons-exec-1.3.jar selenium-remote-driver-4.18.1.jar selenium-</div>
<div>&nbsp;devtools-v120-4.18.1.jar failureaccess-1.0.2.jar opentelemetry-api-1.35</div>
<div>&nbsp;.0.jar selenium-support-4.18.1.jar testng-7.9.0.jar hamcrest-2.2.jar op</div>
<div>&nbsp;entelemetry-sdk-1.35.0.jar selenium-edge-driver-4.18.1.jar selenium-os-</div>
<div>&nbsp;4.18.1.jar j2objc-annotations-2.8.jar opentelemetry-sdk-trace-1.35.0.ja</div>
<div>&nbsp;r selenium-devtools-v121-4.18.1.jar jquery-3.7.1.jar error_prone_annota</div>
<div>&nbsp;tions-2.23.0.jar</div>
</div>
<div>&nbsp;</div>
]]></description>
		<pubDate>Wed, 28 Feb 2024 15:30:29 +0000</pubDate>
		<guid isPermaLink="false">https://software-testing.ru/forum/index.php?/topic/41573-kak-sozdat-jar-fajl-iz-proekta-s-avtotestami/</guid>
		<category>Selenium - Functional Testing</category>
	</item>
	<item>
		<title>Вопросы по конфигурации Jenkins</title>
		<link>https://software-testing.ru/forum/index.php?/topic/41549-voprosy-po-konfiguratcii-jenkins/</link>
		<description><![CDATA[<p>у меня два вопроса по Дженкинс:</p>
<p>&nbsp;</p>
<p>1) у меня дженкинс установлен как сервис и поэтому браузер не запускается при тестах. В принципе меня это устраивает, но меня беспокоит сомнение - не влияет ли это на результат теста? Могут ли из-за этого какие-то тесты упасть? Напимер как это бывает в случае с Headless mode. Ведь при прогонке тестов хочется исключить все не относящиеся к тестируемому приложению причины провалов, так чтобы не тратить время на анализ.</p>
<p>&nbsp;</p>
<p>2) Когда я прогоняю разные тестовые наборы по очереди, то отчет включает в себя последний и все предыдущие результаты. Как настроить Allure плагин в Дженкинсе так чтобы перед каждым запуском очередного тестового набора предыдущие отчеты удалялись. Хочется каждый раз видеть отчет только по последнему тесту. (пробовал искать соответствуюшие настройки как в глобальных настройках Дженкинса так и по отдельной джобе)</p>
<p>&nbsp;</p>
<p>Сапсибо заранее.</p>
]]></description>
		<pubDate>Sat, 10 Feb 2024 04:53:46 +0000</pubDate>
		<guid isPermaLink="false">https://software-testing.ru/forum/index.php?/topic/41549-voprosy-po-konfiguratcii-jenkins/</guid>
		<category>Selenium - Functional Testing</category>
	</item>
	<item>
		<title>Передача результата функции с параметром request в фикстуру (pytest)</title>
		<link>https://software-testing.ru/forum/index.php?/topic/41539-peredacha-rezultata-funktcii-s-parametrom-request-v-fi/</link>
		<description><![CDATA[<p>Привет. Вопрос скорее по питону, чем по собственно тестированию, но возник в процессе написания автотестов.</p>
<p>&nbsp;</p>
<p>Есть проект с несколькими типами аккаунтов (пользователь и разные виды магазинов). Для тестирования страниц профиля, онлайн-заказа и тд работаю над фикстурой, которая в начале теста выполняет авторизацию, а в конце разлогинивается.</p>
<p>Файл с логинами-паролями выглядит как на скрине (сложный словарь):</p>
<p><span rel='lightbox'><img class='bbc_img' src="https://automated-testing.info/uploads/default/original/2X/f/f64bb6d9075c7ea440c7b92c3e1eb01b2300ce00.png" alt="f64bb6d9075c7ea440c7b92c3e1eb01b2300ce00"></span></p>
<p>&nbsp;</p>
<p>Сразу уточняю: я в курсе, что это не безопасно, но аккаунты типовые без каких-либо данных и дополнительных прав. Если кто-то получит к ним доступ, то узнает не больше, чем если зарегистрируется сам))))</p>
<p>&nbsp;</p>
<p>В текущем варианте есть две одинаковых фикстуры, отдельно для юзеров (которых потом будет несколько) и для продавцов. В каждую фикстуру в виде параметра передается соответствующая часть словаря. И есть два очень похожих набора тестов, часть из которых отличаются только названиями и тем, какая фикстура в них передается.</p>
<p>Мне такое решение не нравится количеством кода и сложностью поддержки как минимум, ну и просто криво.</p>
<p>&nbsp;</p>
<p>Такой код в старом варианте:</p>
<pre  class="prettyprint lang-">
@pytest.fixture(scope="function", params=Accounts.VENDORS.values())   #быстрая авторизация для профиля вендора (перебор всех вендоров)
def log_in_vendor(server_name, request, browser):
    link = f"{server_name}{links.LOG_IN_WITH_EMAIL}"
    email, password = request.param.values()
    page = EmailLoginPage(browser, link)
    page.open()
    page.print_text_to_field(EmailLoginPageLocators.LOGIN_INPUT_EMAIL, email)
    page.print_text_to_field(EmailLoginPageLocators.LOGIN_INPUT_PASS, password)
    page.click_to_login_button()
    current_url = browser.current_url
    WebDriverWait(browser, 15).until(EC.url_changes(current_url))
    yield log_in_vendor
    print(f"\n{email}")
    page.logout()

</pre>
<p>
Хочу сделать новый вариант, где в параметры передается нужный список аккаунтов, созданный в зависимости от того, какая метка указана в командной строке при запуске. Для этого дописала отдельную функцию, которая получает метку, создает словарь с нужными аккаунтами и возвращает его через return.</p>
<p>Функция сейчас выглядит так:</p>
<pre  class="prettyprint lang-">
def user_accounts(request):
    users = request.config.getoption("-m")
    if users == "ind_user":
        user_accounts = Accounts.USERS.values()
    elif users == "vendor":
        user_accounts = Accounts.VENDORS.values()
    else:
        user_accounts = dict(Accounts.USERS.values()).update(Accounts.VENDORS.values())
    print(user_accounts)
    return user_accounts

</pre>
<p>
Проблема: при попытке вызывать эту функцию в params интерпретатор пишет ошибку - не указан 1 обязательный параметр (т.к. функция получает данные из командной строки, ей нужен параметр request). Гугл говорит, что чтобы сделать параметр необязательным, нужно задать ему значение по умолчанию, но я не понимаю, какое в этой ситуации можно указать значение (или что передать в вызов в качестве параметра).</p>
<p>Как такое решается? В будущем фикстура будет дорабатываться - получать метку конкретного теста и выбирать из списка аккаунтов один-два нужных, например, но сейчас затык именно в технической стороне. Нагуглить пока не получилось, видимо, запрос формулирую как-то неправильно.</p>
<p>(Вариант "это говнокод, все надо делать совсем иначе" принимается при наличии объяснений, как именно иначе и почему так лучше)</p>
<p>&nbsp;</p>
]]></description>
		<pubDate>Sat, 03 Feb 2024 20:25:56 +0000</pubDate>
		<guid isPermaLink="false">https://software-testing.ru/forum/index.php?/topic/41539-peredacha-rezultata-funktcii-s-parametrom-request-v-fi/</guid>
		<category>Selenium - Functional Testing</category>
	</item>
	<item>
		<title>При попытке открыть страницу через IE выходит TypeError NoneType</title>
		<link>https://software-testing.ru/forum/index.php?/topic/41369-pri-popytke-otkryt-stranitcu-cherez-ie-vykhodit-typeerror-nonetype/</link>
		<description><![CDATA[<p><span style="font-family:arial, sans-serif;"><span style="font-size:10.5pt;">Всем привет! Пишу свой первый автотест на открытие страницы через браузер IE. Подскажите пожалуйста, что исправить в коде? Браузер IE никак не открывается. А вот с гугл хромом проблем нет, хотя на него драйвер не ставился.</span></span></p>
<p>&nbsp;</p>
<p><span style="color:#cc7832;"><span style="font-family:arial, sans-serif;"><span style="font-size:10.5pt;">import&nbsp;</span></span></span><span style="font-family:arial, sans-serif;"><span style="font-size:10.5pt;">time</span></span><br>
<br>
<span style="color:#cc7832;"><span style="font-family:arial, sans-serif;"><span style="font-size:10.5pt;">from&nbsp;</span></span></span><span style="font-family:arial, sans-serif;"><span style="font-size:10.5pt;">selenium&nbsp;</span></span><span style="color:#cc7832;"><span style="font-family:arial, sans-serif;"><span style="font-size:10.5pt;">import&nbsp;</span></span></span><span style="font-family:arial, sans-serif;"><span style="font-size:10.5pt;">webdriver</span></span><br>
<span style="color:#cc7832;"><span style="font-family:arial, sans-serif;"><span style="font-size:10.5pt;">from&nbsp;</span></span></span><span style="font-family:arial, sans-serif;"><span style="font-size:10.5pt;">selenium.webdriver.ie.service&nbsp;</span></span><span style="color:#cc7832;"><span style="font-family:arial, sans-serif;"><span style="font-size:10.5pt;">import&nbsp;</span></span></span><span style="font-family:arial, sans-serif;"><span style="font-size:10.5pt;">service</span></span><br>
<span style="color:#cc7832;"><span style="font-family:arial, sans-serif;"><span style="font-size:10.5pt;">from&nbsp;</span></span></span><span style="font-family:arial, sans-serif;"><span style="font-size:10.5pt;">selenium.webdriver.ie.webdriver&nbsp;</span></span><span style="color:#cc7832;"><span style="font-family:arial, sans-serif;"><span style="font-size:10.5pt;">import&nbsp;</span></span></span><span style="font-family:arial, sans-serif;"><span style="font-size:10.5pt;">WebDriver<br>
<br>
driver = webdriver.IeService()<br>
<br>
driver.get(</span></span><span style="color:#6a8759;"><span style="font-family:arial, sans-serif;"><span style="font-size:10.5pt;">"</span></span></span><a href='https://www.google.ru/webhp?hl=RU' class='bbc_url' title='Ссылка' rel='nofollow external'><span style="font-family:arial, sans-serif;"><span style="font-size:10.5pt;">https://www.google.ru/webhp?hl=RU</span></span></a><span style="color:#6a8759;"><span style="font-family:arial, sans-serif;"><span style="font-size:10.5pt;">"</span></span></span><span style="font-family:arial, sans-serif;"><span style="font-size:10.5pt;">)<br>
<br>
time.sleep(</span></span><span style="color:#6897bb;"><span style="font-family:arial, sans-serif;"><span style="font-size:10.5pt;">5</span></span></span><span style="font-family:arial, sans-serif;"><span style="font-size:10.5pt;">)</span></span></p>
<p>&nbsp;</p>
<p><span style="font-family:arial, sans-serif;"><span style="font-size:10.5pt;">вот</span></span> <span style="font-family:arial, sans-serif;"><span style="font-size:10.5pt;">терминал</span></span></p>
<p><span style="color:#000000;"><span style="font-family:arial, sans-serif;">C:\Users\u00035521\PycharmProjects\pythonProject1\venv\Scripts\python.exe C:\Users\u00035521\PycharmProjects\pythonProject1\main.py<br>
Traceback (most recent call last):<br>
&nbsp; File "C:\Users\u00035521\PycharmProjects\pythonProject1\main.py", line 12, in &lt;module&gt;<br>
&nbsp;&nbsp;&nbsp; driver.get("<a href='https://www.google.ru/webhp?hl=RU' class='bbc_url' title='Ссылка' rel='nofollow external'>https://www.google.ru/webhp?hl=RU")</a><br>
TypeError: 'NoneType' object is not callable<br>
<br>
Process finished with exit code 1</span></span></p>
<p>&nbsp;</p>
<p>&nbsp;</p>
]]></description>
		<pubDate>Wed, 23 Aug 2023 13:54:05 +0000</pubDate>
		<guid isPermaLink="false">https://software-testing.ru/forum/index.php?/topic/41369-pri-popytke-otkryt-stranitcu-cherez-ie-vykhodit-typeerror-nonetype/</guid>
		<category>Selenium - Functional Testing</category>
	</item>
	<item>
		<title>Автоматизированная работа с DevTools в Selenium 4</title>
		<link>https://software-testing.ru/forum/index.php?/topic/41346-avtomatizirovannaia-rabota-s-devtools-v-selenium-4/</link>
		<description><![CDATA[<p>Автор:&nbsp;<a href='http://www.simbirsoft.com/ruru/' class='bbc_url' title='Ссылка' rel='nofollow external'>компания Simbirsoft</a></p>
<p>&nbsp;</p>
<p>Специалисты QA- и SDET-направлений довольно часто используют DevTools браузера, поскольку в нем есть ряд инструментов, необходимых для отладки и тестирования веб-приложений.</p>
<p>Например, при интеграции REST API методов с интерфейсом приложения достаточно трудоемко читать информацию по запросам и ответам в DevTools после каждого действия, а также сопоставлять это с документацией.&nbsp;Этот кейс можно автоматизировать, например, с помощью сравнительно новой библиотеки DevTools Selenium 4 и инструментов, которые она предоставляет.</p>
<p>&nbsp;</p>
<p>В этой статье я — SDET-специалист SimbirSoft Мария,&nbsp;— расскажу про&nbsp;функциональности&nbsp;DevTools, которые были актуальны&nbsp;на наших проектах.</p>
<p>&nbsp;</p>
<p><a href='https://software-testing.ru/library/testing/testing-tools/4066-selenium-4' class='bbc_url' title=''>Читать статью полностью...</a></p>]]></description>
		<pubDate>Tue, 15 Aug 2023 07:25:12 +0000</pubDate>
		<guid isPermaLink="false">https://software-testing.ru/forum/index.php?/topic/41346-avtomatizirovannaia-rabota-s-devtools-v-selenium-4/</guid>
		<category>Selenium - Functional Testing</category>
	</item>
	<item>
		<title>Не находит элемент(ссылку)</title>
		<link>https://software-testing.ru/forum/index.php?/topic/41242-ne-nakhodit-elementssylku/</link>
		<description><![CDATA[<p>В поиске на сайте github.com вбиваю selenide, появляется список с репозитариями и я пытаюсь перейти по первой ссылке вот таким вот кодом&nbsp; &nbsp;$$("ul.repo list li").first().$("a").click(); Но тест падает, как я понял, не находит элемент(ссылку), что делаю не так?</p>
]]></description>
		<pubDate>Wed, 07 Jun 2023 10:19:47 +0000</pubDate>
		<guid isPermaLink="false">https://software-testing.ru/forum/index.php?/topic/41242-ne-nakhodit-elementssylku/</guid>
		<category>Selenium - Functional Testing</category>
	</item>
	<item>
		<title>Какую версию Java поддерживает Selenium WebDriver?</title>
		<link>https://software-testing.ru/forum/index.php?/topic/41187-kakuiu-versiiu-java-podderzhivaet-selenium-webdriver/</link>
		<description><![CDATA[<p>Добрый день,</p>
<p>Помогите разобраться.</p>
<p>&nbsp;</p>
<p>В документации по Селениуму сказано: "The minimum supporter Java version is 11."</p>
<p>В блоге по Селениуму: "We’re happy to share that starting from Selenium 4.5.0, a Java 11+ HttpClient is supported."</p>
<p>&nbsp;</p>
<p>Означает ли это, что теперь поддерживаются все версии Java, начиная с 11 версии и выше?</p>
]]></description>
		<pubDate>Fri, 28 Apr 2023 10:39:17 +0000</pubDate>
		<guid isPermaLink="false">https://software-testing.ru/forum/index.php?/topic/41187-kakuiu-versiiu-java-podderzhivaet-selenium-webdriver/</guid>
		<category>Selenium - Functional Testing</category>
	</item>
	<item>
		<title>Подтверждение установки плагина в яндекс браузере</title>
		<link>https://software-testing.ru/forum/index.php?/topic/41181-podtverzhdenie-ustanovki-plagina-v-iandeks-brau/</link>
		<description><![CDATA[<p>Т.к. не получилось загрузиться с нужным перечнем плагинов. Пробовал и разные профили подгружается все равно запускается без плагинов.<br>
Пытаюсь вручную поставить крипто про плагин и другие что бы возможно было зайти на сайт.<br>
Перехожу по ссылку с плагином, имитирую нажатие установки, выходит всплывающее окно подтверждения установки:</p>
<div>
<pre  class="prettyprint">
driver.get("https&#58;//addons.opera.com/ru/extensions/details/cryptopro-extension-for-cades-browser-plug-in/")
submit_button = driver.find_element(By.CSS_SELECTOR, ".wrapper-install")
submit_button.click()</pre>
</div>
<p>driver.switch_to.alert.accept()&nbsp; не помогает&nbsp;Message: no such alert<br>
<br>
Подскажите как этим окном управлять.<br>
<br>
То что плагин от оперы не обращайте внимание, он и нужен.</p>
]]></description>
		<pubDate>Mon, 24 Apr 2023 16:22:22 +0000</pubDate>
		<guid isPermaLink="false">https://software-testing.ru/forum/index.php?/topic/41181-podtverzhdenie-ustanovki-plagina-v-iandeks-brau/</guid>
		<category>Selenium - Functional Testing</category>
	</item>
	<item>
		<title>Передать текст в инпуты</title>
		<link>https://software-testing.ru/forum/index.php?/topic/41160-peredat-tekst-v-inputy/</link>
		<description><![CDATA[<p><span style="color:rgb(0,0,0);font-family:verdana, tahoma, sans-serif;font-size:13px;background-color:rgb(246,246,246);">Подскажите пожалуйста как решить задачу, есть link по нажатию на который появляеться input в который нужно передать текст, нужно создать три инпуты и передать в них текст что то вроде Option 1 в первый инпут, Option 2 во второй инпут итд</span><br>
<span style="color:rgb(0,0,0);font-family:verdana, tahoma, sans-serif;font-size:13px;background-color:rgb(246,246,246);">Написал цикл создаю три инпута но текст Option 1, Option 2, Option 3 передаеться в первый инпут остальные два не заполняет</span></p>
<pre  class="prettyprint lang-nocode">
count = 1
while count &lt; 4:
      self.element_is_visible(self.locators.ADD_OPTION_SINGLE_AND_MULTI_SELECT).click()
      self.element_is_visible(self.locators.INPUT_ADD_OPTION).send_keys(f'Option{count}')
      count += 1
</pre>
]]></description>
		<pubDate>Fri, 07 Apr 2023 16:17:47 +0000</pubDate>
		<guid isPermaLink="false">https://software-testing.ru/forum/index.php?/topic/41160-peredat-tekst-v-inputy/</guid>
		<category>Selenium - Functional Testing</category>
	</item>
	<item>
		<title>Последовательность трех popup окон</title>
		<link>https://software-testing.ru/forum/index.php?/topic/41149-posledovatelnost-trekh-popup-okon/</link>
		<description><![CDATA[<p>Добрый день.</p>
<p>&nbsp;</p>
<p>Возникла проблема - для того, чтобы добраться до страницы авторизации нужно пройти последовательность трех popup окон логин/пароль.</p>
<p>Первое прохожу добавлением логина/пароля в адрес: <a href='http://url' class='bbc_url' title='Ссылка' rel='nofollow external'>http://login:password@url</a></p>
<p>Второе проходится вот так:&nbsp;Selenide.open("<a href='http://url' class='bbc_url' title='Ссылка' rel='nofollow external'>http://url</a>", AuthenticationType.BASIC, "login", "password"); </p>
<p>А вот что с третьим делать - ума не приложу.</p>
<p>Selenide, Chrome</p>
<p>&nbsp;</p>
<p>Может быть у кого-то будут предложения?</p>
]]></description>
		<pubDate>Wed, 29 Mar 2023 10:57:07 +0000</pubDate>
		<guid isPermaLink="false">https://software-testing.ru/forum/index.php?/topic/41149-posledovatelnost-trekh-popup-okon/</guid>
		<category>Selenium - Functional Testing</category>
	</item>
	<item>
		<title>Ошибка кодировки в IDE при изменении файла .side через Python</title>
		<link>https://software-testing.ru/forum/index.php?/topic/41138-oshibka-kodirovki-v-ide-pri-izmenenii-fajla-side-cherez-pytho/</link>
		<description><![CDATA[<p>Доброго дня!</p>
<p>&nbsp;</p>
<p>Просьба помочь разобраться с ошибкой кодировки русского текста в Selenium IDE.</p>
<p>&nbsp;</p>
<p><strong>Какая была цель:</strong></p>
<p>Автоматизировать обновление проекта .side, загружая в него напрямую актуальные sendKeys из api через python.</p>
<p>&nbsp;</p>
<p><strong>Предусловия:</strong></p>
<p>1. В python делается api-запрос, ответом на который служит некий список (несколько сотен разных значений) в формате json .</p>
<p>2. Этот список переделывается в словарь питона.</p>
<p>3. Питон открывает файл проекта .side. Проект представляет из себя множество одинаковых тестов.</p>
<p>4. В команды sendKeys этих тестов питон вставляет по одному значению из списка, полученного через api-запрос.</p>
<p>5. Питон обновляет файл .side.</p>
<p>6. Файл .side обновлен актуальными значениями sendKeys, успех. Тест становится актуальным/валидным</p>
<p>&nbsp;</p>
<p><strong>В чём ошибка:</strong></p>
<p>Вместо русских символов в интерфейсе Selenium IDE стоят знаки вопроса (ошибка кодировки) (скрин 1):</p>
<p><a class='resized_img' rel='lightbox[184953]' id='ipb-attach-url-7981-0-97636400-1780994217' href="https://software-testing.ru/forum/uploads/monthly_03_2023/post-79553-0-69482100-1679059299.png" title="1.png - Размер 95,67К"><img itemprop="image" src="https://software-testing.ru/forum/uploads/monthly_03_2023/post-79553-0-69482100-1679059299_thumb.png" id='ipb-attach-img-7981-0-97636400-1780994217' style='width:100;height:44' class='attach' width="100" height="44" alt="1.png" /></a>

</p>
<p>&nbsp;</p>
<p><strong>Код python, отвечающий за изменение файла .side:</strong></p>
<p>&nbsp;</p>
<p><span style="color:rgb(204,120,50);">with </span><span style="color:rgb(136,136,198);">open</span>(<span style="color:rgb(106,135,89);">"C:</span><span style="color:rgb(204,120,50);">\\</span><span style="color:rgb(106,135,89);">test.side"</span><span style="color:rgb(204,120,50);">, </span><span style="color:rgb(106,135,89);">"r"</span>) <span style="color:rgb(204,120,50);">as </span>file:</p>
<p>&nbsp; old_version = file.read()</p>
<p>&nbsp;</p>
<p><span style="color:#cc7832;">with </span><span style="color:#8888c6;">open</span>(<span style="color:#6a8759;">"C:</span><span style="color:#cc7832;">\\</span><span style="color:#6a8759;">test.side"</span><span style="color:#cc7832;">, </span><span style="color:#6a8759;">"r"</span>) <span style="color:#cc7832;">as </span>file:<br>
&nbsp; result = json.loads(file.read())<br>
&nbsp; counter = <span style="color:#6897bb;">0</span><br>
&nbsp; tests = result.get(<span style="color:#6a8759;">"tests"</span>)<br>
<span style="color:#cc7832;">&nbsp; for </span>test <span style="color:#cc7832;">in </span>tests:<br>
&nbsp; &nbsp; commands = test.get(<span style="color:#6a8759;">"commands"</span>)<br>
<span style="color:#cc7832;">&nbsp; &nbsp; for </span>command <span style="color:#cc7832;">in </span>commands:<br>
<span style="color:#cc7832;">&nbsp; &nbsp; &nbsp; if </span><span style="color:#6a8759;">"sendKeys" </span><span style="color:#cc7832;">in </span>command.values():<br>
<span style="color:#cc7832;">&nbsp; &nbsp; &nbsp; &nbsp; if </span>counter &gt;= <span style="color:#8888c6;">len</span>(buildings):<br>
<span style="color:#cc7832;">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; break</span><br>
&nbsp; &nbsp; &nbsp; &nbsp; test[<span style="color:#6a8759;">"name"</span>] = buildings[counter]<br>
&nbsp; &nbsp; &nbsp; &nbsp; command[<span style="color:#6a8759;">"value"</span>] = buildings[counter]<br>
&nbsp; &nbsp; &nbsp; &nbsp; counter += <span style="color:#6897bb;">1</span><br>
<br>
resultJson = json.dumps(result<span style="color:#cc7832;">, </span><span style="color:#aa4926;">ensure_ascii</span>=<span style="color:#cc7832;">False</span>)<br>
<br>
new_data = old_version.replace(old_version<span style="color:#cc7832;">, </span>resultJson)<br>
<br>
<span style="color:#cc7832;">with </span><span style="color:#8888c6;">open</span>(<span style="color:#6a8759;">"C:</span><span style="color:#cc7832;">\\</span><span style="color:#6a8759;">test.side"</span><span style="color:#cc7832;">, </span><span style="color:#6a8759;">"w"</span>) <span style="color:#cc7832;">as </span>file:<br>
&nbsp; file.write(new_data)</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p><span style="font-size:24px;"><strong>Вопрос:</strong></span></p>
<p>&nbsp;</p>
<p>Что нужно добавить в код, чтобы IDE нормально воспринимала его кодировку?&nbsp;</p>
<p>Визуально, если открыть файл .side, весь русский текст отображается корректно (в блокноте).</p>
<p>Заранее большое спасибо за ответ.</p>
]]></description>
		<pubDate>Fri, 17 Mar 2023 13:22:14 +0000</pubDate>
		<guid isPermaLink="false">https://software-testing.ru/forum/index.php?/topic/41138-oshibka-kodirovki-v-ide-pri-izmenenii-fajla-side-cherez-pytho/</guid>
		<category>Selenium - Functional Testing</category>
	</item>
	<item>
		<title>Selenium IDE и selenium-side-runner</title>
		<link>https://software-testing.ru/forum/index.php?/topic/41111-selenium-ide-i-selenium-side-runner/</link>
		<description><![CDATA[<p>Пытаюсь код из Selenium IDE выполнять через&nbsp;selenium-side-runner и на команде&nbsp;</p>
<p>&nbsp;</p>
<p>store xpath count</p>
<p>xpath=//*[@class="content-header"]</p>
<p>RES1</p>
<p>&nbsp;</p>
<p>возникает ошибка&nbsp;</p>
<p>error: Unknown command storeXpathCountlient_socket_impl.cc(985)]&nbsp;</p>
<p>&nbsp;</p>
<p>При этом в IDE все ок и команда выполняется.</p>
<p>&nbsp;</p>
<p>т.е. в runner на&nbsp;store xpath count выдает ошибку в любом случае</p>
<p>&nbsp;</p>
<p>IDE(3.17.2) и runner (4.0.0.alpha40) последние версии</p>
<p>&nbsp;</p>
<p>Что делаю не так? Гуглить ошибку пробовал, вообще тем по ней нет, на git тоже не нашел ...</p>
]]></description>
		<pubDate>Wed, 01 Mar 2023 21:31:11 +0000</pubDate>
		<guid isPermaLink="false">https://software-testing.ru/forum/index.php?/topic/41111-selenium-ide-i-selenium-side-runner/</guid>
		<category>Selenium - Functional Testing</category>
	</item>
	<item>
		<title>Нужна помощь: Тестирование формы авторизации. JavaScript</title>
		<link>https://software-testing.ru/forum/index.php?/topic/41093-nuzhna-pomosch-testirovanie-formy-avtorizatcii-javascrip/</link>
		<description><![CDATA[<p>Доброго времени суток, уважаемые коллеги.</p>
<p>Начинаю осваивать автоматизацию Selenium + JavaScript</p>
<p>Цель - протестировать форму авторизации, используя конст. данные. Путь пользователя: зашел на страницу, кликнул кнопку "Войти" в хедере, ввел данные в инпуты логина и пароля, кликнул сабмит</p>
<p>&nbsp;</p>
<p>Проблема: не ищет поле для ввода номера телефона</p>
<p>&nbsp;</p>
<p>Код, который работает до этого момента:</p>
<p>&nbsp;</p>
<p><span style="background-color:rgb(30,30,30);font-family:'Droid Sans Mono', monospace, monospace;color:rgb(86,156,214);">const</span><span style="background-color:rgb(30,30,30);color:rgb(212,212,212);font-family:'Droid Sans Mono', monospace, monospace;"> {</span><span style="background-color:rgb(30,30,30);font-family:'Droid Sans Mono', monospace, monospace;color:rgb(78,201,176);">By</span><span style="background-color:rgb(30,30,30);color:rgb(212,212,212);font-family:'Droid Sans Mono', monospace, monospace;">,</span><span style="background-color:rgb(30,30,30);font-family:'Droid Sans Mono', monospace, monospace;color:rgb(79,193,255);">Key</span><span style="background-color:rgb(30,30,30);color:rgb(212,212,212);font-family:'Droid Sans Mono', monospace, monospace;">,</span><span style="background-color:rgb(30,30,30);font-family:'Droid Sans Mono', monospace, monospace;color:rgb(78,201,176);">Builder</span><span style="background-color:rgb(30,30,30);color:rgb(212,212,212);font-family:'Droid Sans Mono', monospace, monospace;">} = </span><span style="background-color:rgb(30,30,30);font-family:'Droid Sans Mono', monospace, monospace;color:rgb(220,220,170);">require</span><span style="background-color:rgb(30,30,30);color:rgb(212,212,212);font-family:'Droid Sans Mono', monospace, monospace;">(</span><span style="background-color:rgb(30,30,30);font-family:'Droid Sans Mono', monospace, monospace;color:rgb(206,145,120);">"selenium-webdriver"</span><span style="background-color:rgb(30,30,30);color:rgb(212,212,212);font-family:'Droid Sans Mono', monospace, monospace;">);</span></p>
<div style="color:rgb(212,212,212);background-color:rgb(30,30,30);font-family:'Droid Sans Mono', monospace, monospace;">
<div><span style="color:#dcdcaa;">require</span>(<span style="color:#ce9178;">"chromedriver"</span>);</div>
<div>&nbsp;</div>
<div><span style="color:#569cd6;">async</span> <span style="color:#569cd6;">function</span> <span style="color:#dcdcaa;">example</span>(){</div>
<div>&nbsp;</div>
<div><span style="color:#569cd6;">const</span> <span style="color:#4fc1ff;">USERNAME</span> = <span style="color:#ce9178;">'99999999'</span>; //пример номера телефона</div>
<div><span style="color:#569cd6;">const</span> <span style="color:#4fc1ff;">KEY</span> = <span style="color:#ce9178;">'111222'</span>;</div>
<div>&nbsp;</div>
<div><span style="color:#6a9955;">//To wait for browser to build and launch properly</span></div>
<div><span style="color:#569cd6;">let</span> <span style="color:#9cdcfe;">driver</span> = <span style="color:#c586c0;">await</span> <span style="color:#569cd6;">new</span> <span style="color:#4ec9b0;">Builder</span>().<span style="color:#dcdcaa;">forBrowser</span>(<span style="color:#ce9178;">"chrome"</span>).<span style="color:#dcdcaa;">build</span>();</div>
<div>&nbsp;</div>
<div><span style="color:#c586c0;">await</span> <span style="color:#9cdcfe;">driver</span>.<span style="color:#dcdcaa;">get</span>(<span style="color:#ce9178;">"<a href='http://www.xn--e1afmkfd' class='bbc_url' title='Ссылка' rel='nofollow external'>http://www.пример"</a></span>); // тут урл</div>
<div>&nbsp;</div>
<div><span style="color:#6a9955;">//To send a search query by passing the value in searchString.</span></div>
<div><span style="color:#c586c0;">await</span> <span style="color:#9cdcfe;">driver</span>.<span style="color:#dcdcaa;">findElement</span>(<span style="color:#4ec9b0;">By</span>.<span style="color:#dcdcaa;">xpath</span>(<span style="color:#ce9178;">"/html/body/div[1]/header/section/div/div[2]/div[3]/button"</span>)).<span style="color:#dcdcaa;">click</span>();</div>
<div><span style="color:#c586c0;">await</span> <span style="color:#9cdcfe;">driver</span>.<span style="color:#dcdcaa;">findElement</span>(<span style="color:#4ec9b0;">By</span>.<span style="color:#dcdcaa;">xpath</span>(<span style="color:#ce9178;">"/html/body/div[1]/header/div[2]/div/div/div[2]/div/div/div/div/div/div[3]/div/div/div/input"</span>)).<span style="color:#dcdcaa;">sendKeys</span>(<span style="color:#4fc1ff;">USERNAME</span>);</div>
<div><span style="color:#6a9955;">//It is always a safe practice to quit the browser after execution</span></div>
<div><span style="color:#6a9955;">//await driver.quit();</span></div>
<div><span style="color:#9cdcfe;">console</span>.<span style="color:#dcdcaa;">log</span>(<span style="color:#ce9178;">'done'</span>)</div>
<div>&nbsp;</div>
<div>}</div>
<div><span style="color:#dcdcaa;">example</span>()</div>
</div>
<p>&nbsp;</p>
<p>Предполагаю, что проблема в том, что форма авторизации открывается в модальном окне, поэтому ее не находит скрипт. Возможно, нужно какое-то доп условия, чтобы код дождался его появления или сделать триггер на клик, не знаю...</p>
<p>Спасибо!</p>
]]></description>
		<pubDate>Sun, 12 Feb 2023 13:32:07 +0000</pubDate>
		<guid isPermaLink="false">https://software-testing.ru/forum/index.php?/topic/41093-nuzhna-pomosch-testirovanie-formy-avtorizatcii-javascrip/</guid>
		<category>Selenium - Functional Testing</category>
	</item>
	<item>
		<title>Selenium не видит атрибут?</title>
		<link>https://software-testing.ru/forum/index.php?/topic/41084-selenium-ne-vidit-atribut/</link>
		<description><![CDATA[<p>Добрый день!</p>
<p>Столкнулся с проблемой. Пишу примитивный автотест и не могу пройти проверку.</p>
<p>Суть такова. Зарегистрировались на сайте, зашли в профиль и нужно сравнить Email в профиле с тем, что был при регистрации условно.</p>
<p>Код прилагаю:</p>
<div style="background-color:#2b2b2b;color:#a9b7c6;font-family:'JetBrains Mono', monospace;">
<pre>
from selenium import webdriver
import time
def test_loggin():
    driver = webdriver.Chrome()
    driver.get("https&#58;//shop.synctoskill.com/")
    driver.maximize_window()
    driver.find_elements("xpath", '//a&#91;@class="nav-link text-dark"]')&#91;0].click()
    driver.find_element("name", 'Email').send_keys('autotest@ya.ru')
    driver.find_element("name", 'Password').send_keys('12345Qwer')
    driver.find_element("xpath", '//input&#91;@value="Sign In"]').click()
    driver.find_element("xpath", '//a&#91;@href="/Account/Profile"]').click()
    email = driver.find_elements("xpath", '//p&#91;2]&#91;@class="small"]').__getattribute__("class")
    assert email == "autotest@ya.ru"
    time.sleep(3)
    driver.close()</pre>
</div>
<p>Выдает ошибку по Атрибуту.</p>
<div id='attach_wrap' class='clearfix'>
	<h4>Прикрепленные изображения</h4>
	<ul>
		
			<li class=''>
				<a class='resized_img' rel='lightbox[184839]' id='ipb-attach-url-7975-0-98506100-1780994217' href="https://software-testing.ru/forum/uploads/monthly_02_2023/post-79727-0-01857600-1675767259.png" title="Screenshot_6.png - Размер 10,47К"><img itemprop="image" src="https://software-testing.ru/forum/uploads/monthly_02_2023/post-79727-0-01857600-1675767259_thumb.png" id='ipb-attach-img-7975-0-98506100-1780994217' style='width:100;height:12' class='attach' width="100" height="12" alt="Screenshot_6.png" /></a>


			</li>
		

			<li class=''>
				<a class='resized_img' rel='lightbox[184839]' id='ipb-attach-url-7976-0-98512100-1780994217' href="https://software-testing.ru/forum/uploads/monthly_02_2023/post-79727-0-15364100-1675767265.png" title="Screenshot_5.png - Размер 186,35К"><img itemprop="image" src="https://software-testing.ru/forum/uploads/monthly_02_2023/post-79727-0-15364100-1675767265_thumb.png" id='ipb-attach-img-7976-0-98512100-1780994217' style='width:100;height:58' class='attach' width="100" height="58" alt="Screenshot_5.png" /></a>


			</li>
		
	</ul>
</div>]]></description>
		<pubDate>Tue, 07 Feb 2023 10:54:59 +0000</pubDate>
		<guid isPermaLink="false">https://software-testing.ru/forum/index.php?/topic/41084-selenium-ne-vidit-atribut/</guid>
		<category>Selenium - Functional Testing</category>
	</item>
</channel>
</rss>