Ответы пользователя по тегу Автоматизация
  • Как вывести статистику по прохождению каждого отдельного автоматизированного теста за длительный период?

    lxsmkv
    @lxsmkv
    Test automation engineer
    Там вкладка History есть. Не оно?
    1*bY7csygX2PtlExGLAz-y7g.png
    А если эту статистику нужно отдельно как-то выводить, то парсить джейсоны из которых все эти данные собственно в аллюре и отрисовываются.
    Ответ написан
    Комментировать
  • Как правильно подойти к внедрению авто-тестов в проекте?

    lxsmkv
    @lxsmkv
    Test automation engineer
    брали людей из других команд на пару дней дабы быстро-быстро прогнать функционал что бы не сфейлиться на релизе.
    Исходя из этого могу предположить, что тестировали функционал через исследовательское тестирование по методу черной коробки. Значит вам нужно именно end-to-end тестирование.
    Раз проект для веба и без дополнительных трат, то очевидный ответ - Selenium. Про него написано-переписано и на конференциях рассказано тоннами. Selenium поддерживает несколько языков Java, C#, Ruby, Python. Самый низкий порог вхождения у Python. Почитать/посмотреть про page object pattern и вперед.
    Мне тут как-то на глаза попадался вполне достойный и даже бесплатный курс "Автоматизация тестирования с помощью Selenium и Python".
    На будущее, для диагноза затруднений возникающих в процессе внедрения автоматизации и нахождения возможных путей выхода из них на макро и микро уровне могу посоветовать этот ресурс - testautomationpatterns.org - одна из его создателей небезызвестная Dorothy Graham.
    Ответ написан
    Комментировать
  • Что почитать/поделать автоматизатору на досуге?

    lxsmkv
    @lxsmkv
    Test automation engineer
    Для развития себя как тестировщика посмотреть лекции по тестированию. James Bach, Cem Kaner, Dorothy Graham на ютьюбе посмотрите для начала.
    По техническим навыкам имеет смысл познакомиться с Jenkins или его алтьтернативами. Представьте себе, если вы не только можете написать автоматизированные тесты, но и создать окружение для их автоматического исполнения и репортинга. Это несомненный плюс.
    Ответ написан
    Комментировать
  • Как проверять внедряемую автоматизируемую систему?

    lxsmkv
    @lxsmkv
    Test automation engineer
    Вы сказали подрядчику сделать систему и не сказали, что она должна уметь, а теперь не знаете как проверить, что сделал подрядчик? Эээ.. и никто не знает.
    Как выйти из этой ситуации. Конечно, подрядчик скорее всего внедрил какое-то типовое решение, раз он согласился на выполнение без перечня требований. Нужно выяснить, что за решение он внедрил и какие возможности оно дает. Тогда уже и сверять годится ли система для выполнения ваших бизнес-сценариев или нет.
    С другой стороны у вас есть бизнес сценарии, берите и проверяйте можно ли с предложеной системой их реализовать. А в случае если не понятно где кнопка "создать новый проект" звонить подрядчику и выяснять как работать с системой, либо просить его это это изменить под понятную вам последовательность действий.

    Хотя обычно так и бывает, подрядчик делает типовое решение, а потом уже когда пользователь потыкал все и попробовал, доделывают и переделывают, годик-другой. Мало вероятно, что случайно получилось именно то, что нужно вам, так как нужно вам, если вы даже требования не обсуждали.

    С другой стороны странно, когда подрядчик не настаивает на конкретизации требований. Обычно крупные конторы имеют аналитика требований котоый будет вас "пилить" пока вы не расскажете ему "все о чем мечтаете".
    Ответ написан
    Комментировать
  • Как автоматизировать общение с клиентами?

    lxsmkv
    @lxsmkv
    Test automation engineer
    Возможно чат-бот не решит вашу проблему.
    Почитайте обязательно это:
    Эпик-фейлы в онлайн-чатах, или почему продажи не растут
    Если бездумно впилить чат-бота то у вас станет одной проблемой больше. Клиенты станут уходит еще и потому что нет личного контакта, а от бота кроме стандартных чаще всего бесполезных ответов ничего не добьешься.

    Вполне вероятно, что вы пытаетесь решить не ту проблему. Проблема в том. что количество запросов возрасло - нужно понять почему. Может недостаточные описания на сайте? Может часто отправляют не то что заказывали. Оптимизировать нужно иммено в узком месте.
    Почитайте про теорию ограничений. Хотя бы эту одну статью:

    Как теория ограничений помогает зарабатывать больш...

    В любом случае, сначала займитесь анализом - сгруппируйте темы запросов в кластеры.
    Ответ написан
    Комментировать
  • Как создать видимость активности компьютера в интернете?

    lxsmkv
    @lxsmkv
    Test automation engineer
    Есть инструменты для автоматизации работы браузера, самый распространенный - selenium. На нем пишут скрипты для тестирования веб приложений, при этом эмулируется пользователь - нажатие ссылок, скроллинг. Но скрипт вам придется писать скорее всего самому.
    Не думаю, что кто-то возьмется вам в этом помогать. Ведь никто не захочет лишать Вас такой уникальной возможности окунуться в удивительный мир программирования, и сделать необыкновенные открытия в области информационных технологий.
    Ответ написан
    Комментировать
  • Как происходит автоматизация тестирования?

    lxsmkv
    @lxsmkv
    Test automation engineer
    Тест - это действие направленное на получение информации о системе.
    Ручной тестировщик получает эту информацию вручную, автоматизатор с помощью компьютерных программ.
    Почитать на первых порах рекомендую "Тестирование Дот Ком, или Пособие по жестокому обращению с багами в интернет-стартапах" Романа Савина.
    Ответ написан
    1 комментарий
  • На чём делают железо автомобиля?

    lxsmkv
    @lxsmkv
    Test automation engineer
    Устройство зависит от производителя железа. Датчики как правило работают через CAN bus. Есть также концепция связи через ethernet.
    Вот вам материнская плата RNS 510: RNS510-led-serie-Navigation-hauptplatine
    или так:
    1458810117-105-bild-2.jpg.628x353.jpg
    Harman известный производитель IVI (in vehicle infotainment) - систем www.harman.com/platform-based-design
    Обычно автопроизводитель выбирает для IVI производителя платформы (типа harman, еще есть Delphi и Technisat из мне известных) , и производителя дисплея, программисты на платформе начинают пилить драйвера чтобы заставить это железо вообще передавать правильный масштаб изображения. А еще раньше вообще включаться. На этой платформе крутится какая нибудь jvm а на ней уже пользовательская система управления. Kомпьютер подключается например через Quadlock (FAKRA) штекер
    Quadlock%20Fakra%20Schema.jpg
    к автомобилю.
    Вобщем ищите по ключевым словам "in vehicle infotainment" и "automotive"
    Ответ написан
    Комментировать
  • Анализ граничных значений для условия "строго больше"?

    lxsmkv
    @lxsmkv
    Test automation engineer
    4 можно не проверять (как и 6 в первом случае). Просто понимание больше или больше-равно у многих программистов такое же как понимание индекса в массиве, казалось бы самые основы, но на практике одна из самых частых ошибок, (я и сам подтормаживаю на этой теме когда не выспался)
    Давайте разберем на примере. Люблю примеры.
    Допустим у нас минимальная длина пин-кода в первом случае минимум 5 символов, во втором случае минимум 6 символов. Как только набрано необходимое количество символов кнопка "ок" становится активной.
    Чтобы проверить первый случай, нужно ввести 4 символа и убедиться что кнопка не активна, ввести пять символов и убедиться что кнопка активна.
    Чтобы проверить второй случай нужно ввести 5 символов и убедиться что кнопка не активна и ввести 6 символов и убедиться что кнопка активна.

    Ну и еще максимальное значение нужно проверить раз уж на то пошло (maxInt+1 для некоторых языков критичен) либо в примере с полем ввода максимальное количество символов.

    Вернемся к примеру с полем ввода. Допустим поле из-за програмной ошибки изначально содержит два невидимых символа.
    Мы вводим в первом случае 3 знака и кнопка ОК становится активной, хотя не должна.
    Так что граничные значения это все теория, без которой никуда, но чтобы найти баги надо понимать устройство компонент и принципы их взаимодействия и отталкиваться от этого знания. На чисто механистическом подходе далеко не уедешь.
    Ответ написан
    Комментировать
  • Что нужно изучать, чтобы заниматься автотестированием web-приложений на Java?

    lxsmkv
    @lxsmkv
    Test automation engineer
    зависит от того на чем написано приложение которое вы тестируете. В зависимости от используемого стека выбирается инструмент. Нельзя просто сказать "хочу научиться пилить". В зависимости от того что у вас "system under test" пилить можно лобзиком, бензопилой, или циркулярной пилой. Давайте инфы побольше, получите более конкретный ответ.

    Upd.: для тестирования веб приложения с помощью Java через Selenium нужен Selenium - это и есть фреймворк который вам нужен. Туториалов по нему много. Изучать непременно надо само тестируемое приложение. Сперва задайте себе вопрос "что я хочу протестировать", а потом уже "как" (это реализовать с помощью Selenium)
    Ответ написан
  • Как грамотно сделать page object + pytest, чтобы не передавать фикстуру в каждый page класс?

    lxsmkv
    @lxsmkv
    Test automation engineer
    у нас тоже так, только обьект называется не app , а root. Правда мы тестируем embedded системы через GUI.
    if root is None:
    root = testcore.createRoot(); #ядро фреймворка выдает нам этот обьект
    и все функции тестового фреймворка требуют этого объекта. У меня каждый page-класс имеет self.root ссылку создаваемую в конструкторе и везде где надо при использовании фреймворка я её передаю.
    tst.press_and_release_button(self.root, buttonname='Button1') # tst тут ссылка на фреймворк.
    Т.е я так понимаю у нас сделали пользовательскую обертку воркуг ядра, а у вас напрямую.
    Я этот фреймворк не писал, а писал паренъ который и интерпретатор питона на яве для нашей системы написал, потому что jython сильно много памяти ест. И я верю в то, что если оно так, то так надо :) А я только пользуюсь всем этим добром, но вполне себе подход нормальный.
    На этот объект можно еще переменных навесить и передавать данные из одного места в другое.
    Ответ написан
    Комментировать
  • Есть ли хороший пример page object pattern на python?

    lxsmkv
    @lxsmkv
    Test automation engineer
    у нас свой фреймворк, мы делаем end-to-end тестирование embedded системы через GUI.
    я не выношу локаторы, они прописаны в классе в функциях.
    Некоторые у нас выносят в локаторы в отдельные файлы. Можно и так, однако я не вижу преимущества.
    Так я точно знаю какие локаторы относятся к какой странице. Начала вылетать функция, поправил локатор, не стало страницы, выкинул, поправил последовательность в тесте. Старые локаторы "автоматически" удаляются вместе со старыми page-объектами.
    В нашем случае нам не приходится ссылатъся на один и тот же элемент в рамках разных страниц, потому что у нас дерево виджетов построено от страницы, и даже если виджеты одинаково называются это совершенно разные обьекты. В веб-тестировании, однако, это не так, поэтому аргумент резонный.
    tf тут это ссылка на тест-фреймворк, который дает нам базовые функции для взаимодействия с GUI.
    class LoginView:
    	def __init__(self):
    	  self.viewname='ABC'
    	def enter(self):
    	  tf.executeApiCall()
    	def wait_for_view(self):
    		tf.wait_for_view(self.viewname)
    	def press_cancel_button(self):
    		tf.press_widget('xyz.ABC')
    	def enter_username(self, u):
    		tf.enter_string('xyz.ABC.inputfield', u)
    	def check_error_popup_visible(self,expect):
    		if expect==True:
    			tf.wait_for_view(view='xyz.ABC.LoginErrorPopup')
    		else:
    	 		tf.wait_for_view(notinview='xyz.ABC.LoginErrorPopup')
    	def press_login_button(self):
    		tf.press_widget('xyz.ABC.Login')

    на стороне теста выглядит как-то так
    username='Kolya'
    main_view = MainView()
    login_view = LoginView()
    login_view.enter()
    login_view.wait_for_view()
    login_view.enter_username(u=username)
    login_view.press_login_button()
    login_view.check_error_popup_visible(expect=True)
    login_view.confirm_error_popup()
    login_view.check_error_popup_visible(expect=False)
    login_view.check_inputfield_text_equals(expect=username)
    login_view.leave()
    main_view.wait_for_view()
    Ответ написан
    Комментировать
  • Как объединить множество текстовых файлов в один?

    lxsmkv
    @lxsmkv
    Test automation engineer
    superuser.com/questions/111825/a-command-line-or-b...
    copy /b *.txt newfile.txt
    или с добавлением пустой строки
    type *.txt > newfile.txt
    (не пробовал)
    Ответ написан
    Комментировать
  • Как автоматизированно тестировать бизнес кейсы gui приложения под Windows?

    lxsmkv
    @lxsmkv
    Test automation engineer
    посмотрите тут какие инструменты умеют тестировать windows приложения (колонка tested system): https://en.wikipedia.org/wiki/Comparison_of_GUI_te...
    для проверки отрисовки инструмент должен уметь делать сравнивание скриншотов.
    Testcomplete вроде как умеет такое из коробки.
    https://support.smartbear.com/testcomplete/docs/te...
    И да, все эти интрументы стоят денег :(
    Ответ написан
    1 комментарий
  • Как правильно писать функциональные тесты для сервисов на scala?

    lxsmkv
    @lxsmkv
    Test automation engineer
    тестирование веб-фронтэнда -> Selenium.
    Есть вот проект ScalaTest (Selenium + Scala в связке) - это то что вам нужно.
    www.scalatest.org/user_guide/using_selenium
    Даже "безбашенное" тестирование можно делать:
    https://blog.knoldus.com/2015/07/18/headless-brows...
    Ответ написан
    Комментировать
  • Python 2.7.9, webbrowser: пропадает часть кириллических букв в input. В чем может быть проблема?

    lxsmkv
    @lxsmkv
    Test automation engineer
    Сам не сталикивался, но погуглил ради интереса. Похоже что проблема в селениуме:
    I did some testing and problem is in NativeKeyboard.
    Setting webdriver_enable_native_events to false fixed my problem.

    -- https://github.com/seleniumhq/selenium-google-code...
    Ответ написан
    Комментировать