Не на 4 недели, но у Азимова в сборнике "Я, робот" есть несколько рассказов, близких к тестированию.
- Форум тестировщиков
- → Просмотр профиля: Репутация: checo
checo еще не добавил друзей
Написано checo 17 августа 2017 - 10:36
Не на 4 недели, но у Азимова в сборнике "Я, робот" есть несколько рассказов, близких к тестированию.
Написано checo 10 августа 2017 - 11:38
В conftest.py прописать хук:
def pytest_report_teststatus(report): ...
Статус будет в полях report.passed, report.failed, report.skipped.
Он вызывается 3 раза для каждого теста, надо проверять, что report.when == 'call'. Еще в report.when может стоять 'setup' и 'teardown', но их статусы не зависят от статуса выполнения теста.
Написано checo 27 июня 2017 - 15:51
Так вот программер вставил данные, возвращаемые хранимкой не в те ключи метода(перепутал, замылился глаз и тд).В итоге случился спор с коллегами, кто должен отвечать за корректность данных из GET запросов?
Какое Ваше мнение на этот счет?
Ну, насчет ответственности - она у каждого своя.
Помнится, на какой-то конференции был доклад, где выступала девушка-тестировщик из 2Gis. И оказалось, что у них на таком сложнейшем продукте всего 2 или 3 тестировщика.
Так что, главное - это чтобы программеры писали качественно. И за баги отвечают они.
Тестовый отдел нанимается для снижения рисков. И если они посчитали, что проверка формата достаточно снижает риски, а целостность и корректность данных не важны, и тестировать это не надо, то это их работа и их ответственность.
Написано checo 24 мая 2017 - 16:28
Есть контакт с разработчиками приложения?
Хорошо, если они пояснят, откуда этот контрол. Насколько я понимаю, UIAutomation может работать только со стандартным DataGrid.
Если контрол из какой-то стандартной библиотеки виджетов, вроде Qt или DevExpress, можно поставить демо-версию TestComplete и попробовать, справится ли он с определением ячеек. Если это в принципе возможно, попробуйте поискать, нет ли бесплатных тестовых инструментов именно для этих виджетов.
Таблица может быть собственной, рисованной, и тогда никак не тестируется. Если для таблицы много тестов под автоматизацию, можно договориться, чтоб разработчики сделали какой-то отдельный тестовый интерфейс, например через COM или сокеты.
Написано checo 24 мая 2017 - 14:11
Возможно, таблица нестандартная.
Посмотрите, какие свойства выдает UISpy или Inspect.exe. И есть ли у этого объекта в свойствах поддержка TablePattern. Возможно, к другому объекту надо обращаться. Если поддержки этого паттерна нет, тогда проблема с тестируемостью приложения. Ну или посмотреть, может быть, этот грид только внешне грид, а ячейки доступны как отдельные объекты.
Написано checo 21 апреля 2017 - 07:16
Если заглянете в реализацию DefaultElementLocator, увидите, что аннотация @CacheLookup работает приблизительно так же. Проблема в том, что элемент кешируется навсегда, и повлиять на это нельзя.
Поэтому опять надо решить вопрос: как хочется управлять кешированием? Чтобы чистить кэш автоматически, нужно писать довольно сложный механизм.
В вашем варианте, если действия выполняет один участок кода, можно сделать ручное управление:
try { SomethingToStartCaching(); element.clear(); element.sendKeys("abc"); } finally { SomethingToDisableCaching(); }
Самое простое решение, которое позволит так делать (но не потокобезопасное):
Самое простое решение для параллелизации - превратить static boolean в static Map<Long, Boolean>, где в качестве ключа брать Thread.currentThread.getId().
Написано checo 12 апреля 2017 - 16:04
Смотрите.
Здесь решается 2 задачи.
Первая - протестировать парсер на надежность. При этом Вы хотите опираться на тестовые оракулы, которые не содержат четких проверок (только формат данных). А если, к примеру, парсер считывает не все данные? Должны быть образцы страниц с известным содержимым, с моделированием разных граничных случаев, и четкий образец, с которым сравниваются результаты парсинга 1 в 1.
Вторая - дополнительная проверка надежности работы в реальных условиях. То есть, если реальная страница не проходит проверки 3 и 4, мы не кладем данные в базу, а громко кричим об ошибке. А дальше, скорее всего, придется фиксить и модифицировать локаторы вручную.
Если парсится одна и та же версия сайта, то необходимость такой правки - косяк разработчика. А если сайт развивается, никто не может дать гарантию 100% надежной работы. Собственно, зачем тестировщики и прибегают к созданию page object'ов. Если структура страницы сильно меняется, можно всегда подправить локаторы, не прибегая к изменению тестов.
Написано checo 10 апреля 2017 - 10:36
Значение $str_COMMENTS вставляется непосредственно из пост-запроса без проверки.
Если в этом поле запостить какой-нибудь тег <script> с каким-нибудь вредоносным кодом, то при загрузке страницы он выполнится.
Написано checo 04 апреля 2017 - 07:37
Написано checo 29 марта 2017 - 14:50
Про reset ничего не могу сказать.
Переменные никуда деваться не должны, если всё делается в одной тред группе. Если значения меняются, то есть место, где они меняются. Поставьте дебаг сэмплеры после каждого шага и промониторьте.
Написано checo 29 марта 2017 - 12:40
Скриптовые компоненты в помощь.
https://jmeter.apach...l#bsh_variables
Не вижу смысла менять User Defined Variables. Я туда обычно заносил вводные настройки для запуска тест-плана. Но, вполне возможно, они так же доступны через vars.
Написано checo 28 марта 2017 - 15:40
>>> 1. Через системное меню девайса разрешаем на нем отладку. - это значит включить Developers option?
Да, и USB Debugging, как вы уже сделали
>>> 2. ...включила USB Debugging на телефоне, но компьютер это не видит
Компьютер это видеть не должен, это видят инструменты из Android SDK.
>>> 3. Подключаем и набираем в командной сроке "adb devices". Устройство должно распознаться, выведется его uid. - разумеется не распознается эта команда
Писали же, что всё настроено. Значит, не всё.
Читаем тут: http://appium.io/sla...oid-app-testing
SDK должен был поставиться вместе со студией либо в Program Files, либо в %HOMEPATH%\AppData\Local.
>>> 4. Что в нашем случае значит UID и в какие параметры его можно внести?
В Appium GUI можно дописать любые дополнительные ключи для запуска сервера, см. тут http://appium.io/sla...va#server-flags
Для автотестов - большинство из этих ключей дублируются в Capabilities: http://appium.io/sla...er-capabilities
>>> 5. Прикрепляю скриншот (ссылка на гугл драйв) Appium GUI, так как он у меня есть.
Да, GUI виндовый. Вот в этом окошке все параметры, которые соответствуют запускаемому приложению, надо заполнить. Только сервер должен быть остановлен. Сначала заполняем, потом запускаем.
Если непонятно, что вводить в Package и т.д. - можно обратиться к разработчикам приложения, или самостоятельно через Android Device Monitor (в Android SDK находим \sdk\tools\monitor.bat)
Вообще, в своё время без проблем самостоятельно разобрался с помощью документации на http://appium.io/ и гугленья вопросов по ADB.
Написано checo 28 марта 2017 - 11:04
А "на нем писать тесты" - не совсем понятно. Насколько я знаю, в Appium есть рекордер, но раньше он был только в версии для мака. Пишем, как обычные тесты для WebDriver. Только немного больше разных параметров надо передавать в Driver Capabilities.
Написано checo 06 марта 2017 - 07:25
Написано checo 06 марта 2017 - 07:15
На всякий случай, скачал свежий с сайта (вдруг, в нем ошибка). Стартую из командной строки в Windows 8, под Java 8. Запускается прекрасно.
Чтобы куда-то копать, нужно знать, в чем причина падения. Скорее всего, проблему можно найти в логе. Хороший повод научиться искать. В приведенном отрывке лога нет проблемы, там просто завершение работы.
Community Forum Software by IP.Board Русификация от IBResource
Лицензия зарегистрирована на: Software-Testing.Ru