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

Публикации Tishka

140 публикаций создано Tishka (учитываются публикации только с 22 июня 2023)



#141972 А вам попадались прикольные баг-репорты?

Отправлено автор: Tishka 23 июня 2015 - 10:29 в Про тестирование обо всём подряд

Меня бы за такой баг-репорт припи***ли  прибили бы разработчики.  :wink:




#141965 А вам попадались прикольные баг-репорты?

Отправлено автор: Tishka 23 июня 2015 - 07:56 в Про тестирование обо всём подряд

Недавно был заведен баг-репорт менеджером.

Название:"Баг зелененького кружка!!!"

Ни описания ни скриншота не было.




#141962 Надо ли "чистить за собой" после выполнения тестов?

Отправлено автор: Tishka 23 июня 2015 - 05:16 в Про тестирование обо всём подряд

Лично для меня есть 2 варианта:

1. Если тестировать на продакшене, то тестировщик должен за собой "убрать" =)

2. Если тестировать на тестовом, то можно и не чистить. В моем случае чистит за меня скрипт, написанный разработчиками.

Скрипт каждый день очищает базу и заливает туда "рыбу".




#141961 Как прочитать csv файл в Selenium IDE

Отправлено автор: Tishka 23 июня 2015 - 05:07 в Автоматизированное тестирование

Всем привет.

Помогите мне пожалуйста разобраться как работает вот этот плагин - http://openselenium.com/ для обработки csv файлов.

Мне нужно записать тест на selenium ide и подставить в тест переменные из csv фала.

Нашел вот такое решение (как описанно по ссылке выше).

Но проблема в том что не могу понять как он работает.

 

Добавил в selenium js файл (CSVRead_Selenium-IDE.js) 

потом пишу комманды:

1) readCSV (в поле Value указываю путь к файлу)

2) storeCellValue (в поле target пишу "testvalue" в полу Value "1,1"

3) echo (в поле Target пишу "${testvalue}")

 

Я так понимаю в логе я должен увидеть значение из файла в первой ячейке.

В csv фале написал "testvalue,123"

 

Тоеть я ожидаю получить значение 123 в выводе echo.

 

Но я явно что-то недопонимаю.

 

Помогите мне пожалуйста разобраться.

 

Спасибо.

А у Вас часто меняются значения в csv ?

Для подобных вещей может стоит использовать не IDE,  а Webdriver?




#141906 "Воспитание" разработчиков через неполные баг-репорты

Отправлено автор: Tishka 19 июня 2015 - 13:45 в Про тестирование обо всём подряд

По поводу воспитания хочу рассказать свой пример.

Менеджеры проектов очень любят на все что им видится багом заводить репорты. При этом зачастую они просто не разобрались как это должно работать.

Они не понимают что такое "Ожидаемый результат".

В противовес этому, по просьбе разработчиков, накидал в корпоративной вики рекомендации по оформлению баг-репортов.

Примерно такой слоган написал: "Мы ответственны за что, что мы завели"  :wink:

Когда презентовал эту статью разработчикам, менеджерам и руководству, предложил такую мотивацию:

"Если баг-репорт написан без соблюдения этих рекомендаций, то разработчик оставляет комментарий

"Неправильная формулировка баг-репорта" и не берет в работу до того, пока автор репорта не сформулирует в соответствии с рекомендацией."

 

Результат:

Оформлять репорты стали более понятно, как для разработчика так и для тестировщика.

Самые честные менеджеры стали уточнять у тестировщика или разработчика как это работает.

Остальные читерят такой фразой в скайпе: "Подойди пожалуйста". При этом не говорит зачем  :rofl:

 

Как то так.




#141905 Часто ли вы используете паттерн "Сон"?

Отправлено автор: Tishka 19 июня 2015 - 13:31 в Автоматизированное тестирование

 

В последнее время несколько раз пришлось использовать sleep.

1. На странице примерно 40 динамических полей, каждое из которых сохраняет значение при клике на другой элемент. 

Если не использовать sleep то доходит до того, что летит 30+ запросов на сохранение и некоторые отваливаются по timeout.

2. Есть необходимое условие - загрузка 10 фоток на странице, загрузка идет по 1й фотке.

Если без остановки заливать одну за другой, то от такой скорости загрузки валятся скрипты и следовательно что-то не сохраняется.

 

А вы не квалифицируете это как баги в тестируемом приложении? Нет вероятность, что пользователь тоже может столкнуться с такой проблемой? Например, при автозаполнении форм при помощи какого-нибудь плагина к браузеру.

 

2 недели доказывал разработчикам то, что пользователь возможно столкнется с подобной ситуацией.

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

В конце сказали примерно так: "Если все таки пользователь столкнется с такой проблемой, то тогда будем думать."




#141808 Часто ли вы используете паттерн "Сон"?

Отправлено автор: Tishka 17 июня 2015 - 12:16 в Автоматизированное тестирование

В последнее время несколько раз пришлось использовать sleep.

1. На странице примерно 40 динамических полей, каждое из которых сохраняет значение при клике на другой элемент. 

Если не использовать sleep то доходит до того, что летит 30+ запросов на сохранение и некоторые отваливаются по timeout.

2. Есть необходимое условие - загрузка 10 фоток на странице, загрузка идет по 1й фотке.

Если без остановки заливать одну за другой, то от такой скорости загрузки валятся скрипты и следовательно что-то не сохраняется.

 

Вообще иногда использую sleep для отладки тестов, чтобы визуально убедиться в том что все работает так как надо.




#141579 Как вы выбираете баг-трекер?

Отправлено автор: Tishka 08 июня 2015 - 07:05 в Выбор инструментов для тестирования ПО

В двух предыдущих компания использовали JIRA. 

Всем был доволен, не к чему даже придраться.

В текущей компании используем Trello.

По началу было непривычно, но спустя пару недель привык.

Если будете пользоваться этими трекерами - сложностей не должно возникнуть.




#141511 Самый ужасный баг в вашей жизни

Отправлено автор: Tishka 03 июня 2015 - 12:07 в Про тестирование обо всём подряд

Вчера промелькнула новость , что ошибка при установке программного обеспечения привела к майскому крушению военного самолета в Испании – само ПО багов не содержало, а вот установка и использование в реальных условиях проверки не выдержали. Цена ошибки – 4 унесенных жизни и сотни самолетов этой модели, не допущенные к полетам в настоящий момент.

 

Тут уместно вспомнить про LightSail, беспилотный космический корабль на солнечных батареях, который недавно потерял связь с Землей из-за ошибки в софте, и только спустя несколько дней смог перезагрузиться и возобновить обмен данными.

 

Поделитесь, с каким наиболее критическим багом сталкивались лично вы в своей практике?

 

Из моего опыта (конечно, размах трагедии не тот) – баг в ММОРПГ, при котором сервер передавал право на определение того, что это за предмет, клиентской части. Багоюзер ловил пакет какой-нибудь дешевой бесполезной фигни, подменял его на что-нибудь ценное, а дальше производил с предметом ряд манипуляций в игре. При определенной последовательности манипуляций сервер начинал доверять клиенту и воспринимал предмет, как ценный. Баг был выловлен при обнаружении, что экономика сервера падает стремительным домкратом, так как ушлые игроки вовсю начали багом пользоваться. Последовательность действий с предметом была такая, что, наверное, ни одному тестировщику в страшном сне бы не привиделось это проверять.

 

Расскажите о своем опыте, интересно)

по поводу бага в ММОРПГ - это было в Lineage 2. Он в паблике очень долго висел.




#141510 Самый ужасный баг в вашей жизни

Отправлено автор: Tishka 03 июня 2015 - 12:03 в Про тестирование обо всём подряд

Работал как-то в игровой конторе.

Был багнутый навык:

Каждый 6 секунд в течении 1 минуты вводит персонажа в состояние невидимости.

Навык мог получить только 1-2 игрока на сервере.

Баг висел с момента открытия проекта, 2 года примерно. Писали разрабам(китайцам) - толку ноль. Ответ был в стиле: "Мы не можем его воспроизвести".

 

Баг заключался вот в чем: с определенной вероятностью крашатся клиенты у игроков которые видят игрока использующего этот скил.

Так как загруженность у меня была небольшая, мне дали его на тест. Время воспроизведения этого бага колебалось от 2 минут до 4 часов.

На сервере в логах не было этой ошибки.На клиенте в логах было много ошибок, но никто до этого не мог понять или не хотел ковыряться с этим.

 

После недели возни с этим багов и ковыряния в логах, путем опытного тыка нашел ошибку.

Проблема была в анимации, так как пути к этой анимации, как и самой анимации попросту нет.

 

Отправил баг-репорт разрабам.

Они написали что у них все норм, но исходник анимации не предоставили.

 

По просьбе продюссера проекта начал думать это исправить.

Сделал то, что первое взбрело в голову: создал нужные директории и положил туда изображение весом в 10+ Мегабайт,

так как если кидать меньше картинку - в логах писалось что этот файл не может быть меньше 10Мб.

 

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

Однако при продолжении атаки игрока с багнутым скилом, все становится нормально.

 

Но до сборки патча меня, как и еще моих 70 коллег сократили, не дали при этом время передать задачи, а комп форматнули сразу.

Ну а так как все правки были у меня локально, этот баг не исправили.

Через неделю мне по скайпу звонил QA-лид и просил обьяснить как я его правил.

Но у него ничего не получилось. Так что по сейчас в этой игре есть этот баг.




#141454 Кросбраузерное тестирование проекта, под зоопарком неуказанным в ТЗ

Отправлено автор: Tishka 01 июня 2015 - 05:41 в Про тестирование обо всём подряд

 

Добрый день уважаемые форумчане!

Передо мной стоит задача:

Кросбраузерное тестирование интернет магазина, под браузерами которые не учитывались при разработке.

Менеджеры хотят провести тестирование, с той целью чтобы основной функционал проекта работал корректно.

С моей точки зрения это нелогично, как проверять едет ли машина если ее опустить на пол метра в воду.

Возможно стоило информировать разработчиков об этом и закладывать время на разработку функционала с учетом этих пожеланий заказчика?

Ну и следовательно указывать это в ТЗ, которого нет...

 

Кто нибудь сталкивался с подобными задачами?

 

Может быть менеджеры хотят провести тестирование, чтобы выяснить работу основного функционала? А потом уже решить исправлять или нет?

Иначе, в вашей формулировке, задача звучит странно, о чем уже упомянули.

 

Какая у вас роль в этом процессе?

Если руководство хочет получить информацию, то разработчиков можно и не информировать - вдруг все настолько плохо, что их и привлекать не будут.

И указывать что-либо в ТЗ, если его нет - бессмыленно)

 

 

 

"Менеджеры хотят провести тестирование, с той целью чтобы основной функционал проекта работал корректно" - это задача не тестирования, а разработки. 

 

Если нет ТЗ, времени и средств на разработку не было заложено, то это вопрос опять таки в сфере ответственности менеджмента и его косячище. Возможно, заказчик хочет узнать, работает ли функционал основной и принять решение, заключать ли дополнительный договор на допиливание или и так пойдёт. Но опять таки, тестирование само по себе это процесс, которой вашей фирме будет стоить денег и ресурсов, а так вроде как за бесплатно получается. Поэтому, вопрос не профессионализма менеджмента, лучше поднять именно на данном примере, во избежании в будущем ещё больших проблем и ненужных и трудозатратных задач.

Зависит все от роли ТС в данной ситуации. Есть ли возможность поднять тему косяка менеджмента и быть услышанным? С моей точки зрения обсуждение денег и ресурсов это как раз уровень управления, а не тестирования. Может тут и надо получить информацию, чтобы понять сколько стоит тратить денег дальше?

 

Доработки для работы основного функционала все равно будут.

Нелогичность в моем понимании, это неинформированность разработчиков о том, что их "детище" должно работать под более старые версии браузеров.

Поднимать вопрос о работе менеджеров однозначно буду.




#141441 Кросбраузерное тестирование проекта, под зоопарком неуказанным в ТЗ

Отправлено автор: Tishka 29 мая 2015 - 14:58 в Про тестирование обо всём подряд

Добрый день уважаемые форумчане!

Передо мной стоит задача:

Кросбраузерное тестирование интернет магазина, под браузерами которые не учитывались при разработке.

Менеджеры хотят провести тестирование, с той целью чтобы основной функционал проекта работал корректно.

С моей точки зрения это нелогично, как проверять едет ли машина если ее опустить на пол метра в воду.

Возможно стоило информировать разработчиков об этом и закладывать время на разработку функционала с учетом этих пожеланий заказчика?

Ну и следовательно указывать это в ТЗ, которого нет...

 

Кто нибудь сталкивался с подобными задачами?

 




#141424 Динамические ID

Отправлено автор: Tishka 29 мая 2015 - 09:56 в Selenium - Functional Testing

будет тогда для этих инпутов так:

(//*[@class = 'x-form-field x-form-text'])[1]

(//*[@class = 'x-form-field x-form-text'])[2]

(//*[@class = 'x-form-field x-form-text'])[3]




#141418 Динамические ID

Отправлено автор: Tishka 29 мая 2015 - 09:13 в Selenium - Functional Testing

Для "Группа продавцов"

(//*[@class = 'x-form-item-label x-unselectable x-form-item-label-left'])[1]

Можно еще так:

//*[contains(text(), 'Группа продавцов')]

И так

(//*[@class = 'x-form-item-input-row']//label)[1]

 

Для "Офис"

(//*[@class = 'x-form-item-label x-unselectable x-form-item-label-left'])[2]

Можно и так:

//*[contains(text(), 'Офис')]

И еще так

(//*[@class = 'x-form-item-input-row']//label)[2]




#141416 Динамические ID

Отправлено автор: Tishka 29 мая 2015 - 08:37 в Selenium - Functional Testing

Вы все правильно поняли.

Можно так:

(//*[@class = 'x-column-header-text'])[1]

(//*[@class = 'x-column-header-text'])[2]

(//*[@class = 'x-column-header-text'])[3]

Можно еще так:

//span[contains(text(), 'Код')]

//span[contains(text(), 'Код СКК')]

//span[contains(text(), 'Наименование')]




#141413 Динамические ID

Отправлено автор: Tishka 29 мая 2015 - 08:12 в Selenium - Functional Testing

И название полей укажите пожалуйста =)




#141411 Динамические ID

Отправлено автор: Tishka 29 мая 2015 - 07:55 в Selenium - Functional Testing

Добрый день!

Выложите код страницы на которой этот элемент




#141396 Очередь запуска методов из разных классов с помощью testng.xml

Отправлено автор: Tishka 28 мая 2015 - 06:21 в Selenium - Functional Testing

В общем разобрался.

Весьма интересно, что при удалении из конфига параметра parallel="none" - тесты стали запускаться в порядке указанной очереди.

 

Всем спасибо за помощь.




#141391 Очередь запуска методов из разных классов с помощью testng.xml

Отправлено автор: Tishka 27 мая 2015 - 13:53 в Selenium - Functional Testing

В общем немного поковырял конфиг, в результате имею следующее

при parallel="false" - org.testng.TestNGException: 

No free nodes found in:[DynamicGraph 
 
Нид хелп =)
И все таки да - случайный порядок запуска при group-by-instances="true"



#141388 Очередь запуска методов из разных классов с помощью testng.xml

Отправлено автор: Tishka 27 мая 2015 - 13:27 в Selenium - Functional Testing

Спасибо заработало =)

Только вот не могу понять почему обратный порядок запуска тестовых классов.

Запускает 3 потом 2 потом 1.




#141385 Очередь запуска методов из разных классов с помощью testng.xml

Отправлено автор: Tishka 27 мая 2015 - 12:52 в Selenium - Functional Testing

Попробуйте заменить на: 

<test name="Test"  preserve-order="false">

Заменил, в итоге testNG запускает по алфавиту, но даже если переименовать классы в алфавитном порядке, то ситуация такая же как и без preserve-order="false"

Уже даже не знаю, почему именно так происходит.




#141383 Очередь запуска методов из разных классов с помощью testng.xml

Отправлено автор: Tishka 27 мая 2015 - 12:33 в Selenium - Functional Testing

package я бы убрал, в именах классов просто прописать полный путь к классу (может это влияет).

ну ещё и тестНГ обновить, может, там бага была связанная с этим.

Убрал package, так же обновил testng до 6.9.5 - увы не помогло.




#141381 Очередь запуска методов из разных классов с помощью testng.xml

Отправлено автор: Tishka 27 мая 2015 - 12:06 в Selenium - Functional Testing

Да вот в это и проблема, я только указал в testng.xml классы.

Вот конфиг, может я нокосячил с конфигом, прошу ткнуть =)

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd">
<suite name="Suite" parallel="none" allow-return-values="true">
  <test name="Test" >
  <package name="testPackage"/>
    <classes>
      <class name="testPackage.Class1"/>
      <class name="testPackage.Class2"/>
      <class name="testPackage.Class3"/>
    </classes>
  </test> <!-- Test -->
</suite> <!-- Suite -->



#141377 Очередь запуска методов из разных классов с помощью testng.xml

Отправлено автор: Tishka 27 мая 2015 - 11:18 в Selenium - Functional Testing

Добрый день уважаемые форумчане.

 

Столкнулся с такой ситуацией:

Есть 3 тестовых класса

Порядок выполнения тестовых методов в каждом классе задан через "priority"

 

При конфигурировании запуска тестов с помощью testng.xml, запускается по очереди каждый метод с каждого из классов по приоритетам:

сначала все с приоритетом 1, затем 2 и т.д.

 

Есть ли возможность сконфигурировать так, чтобы приоритет учитывался только внутри тестового класса?

Не очень хочется ставить жесткую зависимость.

Переписывать каждый раз приоритеты тоже не очень хочется.

 

Заранее спасибо!




#141297 Не сохраняется первое изображение

Отправлено автор: Tishka 22 мая 2015 - 14:56 в Selenium - Functional Testing

Сложность в том что эта страница динамическая, то есть на каждый "чих" идет сохранение.

Это скорее всего из-за того что сервер не успевает обработать все запросы на сохранение полей.