• Как происходит автоматизация тестирования?

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

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

    lxsmkv
    @lxsmkv
    Test automation engineer
    хихи ... ну вот вы и завалили свое задание :)
    Видимо имеется ввиду вам нужно создать REST API состоящее всего из двух методов, и заставить свое апи работать на сервере так чтобы запросы по http отвечали соответствущими http кодами. (Базу данных создавать не нужно)
    Как делается REST API, разве только что в "Комсомолке" не пишут, так что с этим проблем не должно быть.

    ...и если упоминают программу postman, советую вам с ней также ознакомиться.
    Ответ написан
    Комментировать
  • Какой оптимальный (время написания тестов/эффективность) вариант тестирования веб-апи?

    lxsmkv
    @lxsmkv
    Test automation engineer
    тестирование регистрации и аутентификации никак с точки зрения теста друг с другом не связаны.
    в тестах регистрации вы хотите убедиться в том что если ввести невалидные данные то система даст отрицательный ответ. и если данные валидные то система ответит положительно.
    при логине вы хотите убедиться в том что если послать системе данные не существующего аккаунта система даст отрицательный ответ. если дать данные заблокированного аккаунта (ну например есть у вас такая категория), система ответит правильным сообщением. и, если пользователь существует и не заблокирован система ответит положительно. Естественно чтобы провести эти тесты, вам понадобится один валидный аккаунт в базе, чтобы система могла ответить положительно, и данные одного не существующего аккаунта, и одного заблокированного аккаунта. Если логин в систему не работает, ваши тесты логина обнаружат баг.
    Чтобы добится независимости от такого возможного бага, вы при тестировании запросов с залогиненым пользователем настраиваете систему перед тестом таким образом чтобы она не учитывала информацию по логину.

    Давайте разберем на примере: представьте вы тестируете инсталляцию системы пожарной безопасности в секретной лаборатории. Доступ в помещение только по электронной карте. Внутри помещения есть кнопка включения сигнализации, при срабатывании которой должны закрыться все окна в помещении и должен быть разблокирован замок двери.
    Вы тестируете замок двери отдельно. А для теста сигнализации и срабатывания оконной механики вы отключаете систему входа по карточке, и делаете его свободным. потому что идентификация при входе в помещение не является предметом теста для системы сигнализации (закрывание окон). В этой точке достигается независимость тестов.
    Но отключив замок двери для теста, вы не сможете убедиться в том что замок открывается при срабатывании сигнализации (второе условие) . Вам придется непосредственно перед проверкой снова включить дверной замок.

    Однако в случае если при тестировании входа выяснится что дверной замок не работает, то включить дверной замок для теста не получится, и второй тест скажет что мол замок двери открылся, все хорошо, однако на самом деле замок был все время открыт, потому что неработал. (т.н. false positive)
    Ответ написан
    6 комментариев
  • Показать цикличность (дизайн)?

    lxsmkv
    @lxsmkv
    Test automation engineer
    не знаю хороший ли это способ указывать клиенту на его глупость (упертость).
    может лучше все подать со т.з. "вам не придется ни о чем беспокоиться и тратить свое время"
    по теме: я не вижу в указаных шагах замкнутого круга. даже если ему придется дойти до шага 4, то он исправит то что было сделано неверно и во второй раз документы пройдут. Агент чем привлекателен, он знает к кому пойти чтобы не сидеть тупо в очередях, в какой последовательности проходить инстанции, чтобы все можно было провернуть за один день. Я не представляю сколько может длиться нотариальная сделка если все делать самому. две недели, месяц, три месяца, пол года? Пол года больше похоже на правду. А через пол года истечет какой нибудь срок давности и ты останешься в дураках. Ох эти русские законы.. на бумаге вроде все нормально, но как касается их претворения в жизнь все с ног на голову.
    Сори, немного пооффтопил :)
    Ответ написан
    9 комментариев
  • На чём делают железо автомобиля?

    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"
    Ответ написан
    Комментировать
  • Курсы по QA для нуба?

    lxsmkv
    @lxsmkv
    Test automation engineer
    Наталья Руколь - ищите ее доклады на ютубе и текстовые материалы в интернете.
    Ответ написан
    Комментировать
  • Как рассчитать длительность mp3 файла на клиенте (js) не загружая на сервер?

    lxsmkv
    @lxsmkv
    Test automation engineer
    Ответ написан
    Комментировать
  • Где найти аудиторию для beta-test?

    lxsmkv
    @lxsmkv
    Test automation engineer
    А у вас уже есть план по тестированию? Описание функций? Документация? А то я участвовал в одном бета-тесте аля "на тебе андроид приложение - потестируй" Так не зная требований, не имея возможности изменять состояние данных (например дату, чтобы проверить что оповещение действительно придет в назначенный день) от такого теста толку было мало.
    Ответ написан
    Комментировать
  • Как выбрать актуальный путь в Game Dev'e?

    lxsmkv
    @lxsmkv
    Test automation engineer
    unity поддерживает как платформу и браузер.
    https://docs.unity3d.com/Manual/webgl-building.html

    так что с unity охват платформ будет больше и инструмент мощный.
    Ответ написан
  • Как стать хорошим программистом на работе?

    lxsmkv
    @lxsmkv
    Test automation engineer
    Во первых, что такое "хороший" программист, это сложно определить. У нас тоже есть программисты, они вроде работают и деньги получают, и с образованием, а когда в продукте обнаруживаются проблемы, выясняется что логгирования в компонентах нет, о юнит-тестах никто не подумал при написании, а теперь придется рефакторить чтобы их туда прикрутить, да и если бы заранее подумали о тестировании и написали юнит тесты, то этих проблем бы не возникло сейчас. А теперь чтобы исправить проблему, нужно перекраивать код целыми слоями, а продукт уже в фазе стабилизации и просто так туда изменения не зальешь. Ну ладно можно сказать это джуниоры напортачили. Но у нас и сениоры есть, под чьим руководством они работают. И сениоры прекрасно знают как делать правильно но не требуют этого от остальных.
    Я все это к чему - можно фигачить код со скоростью электровеника, а можно писать его медленно. Скорость написания кода не говорит о том хороший программист или плохой ничего. Совсем ничего. Можно быстро писать плохой код.
    Гораздо важнее правильно мыслить. Для этого нужно читать книжки типа Clean Code. Юнит тестирование тоже. Нужно приобрести понимание хорошо и плохо. Если вы читаете код и в нем черт ногу сломит. Может это плохой код?
    Чтобы набить руку в программировании нужно им заниматься. У меня постоянно открыт repl.it где я набиваю мелкие куски кода для развлечения. Нужно постоянно тренироваться, "ни дня без строчки", только тогда мозг перейдет из режима отторжения в режим обучения. Заставляйте себя, заставляйте себя разобраться. Разберите как работют лямбды, list comprehension. разберитесь в *args, **kwargs. Выясните разницу между __new__ и __init__. Для новичка это приличная нагрузка, но вы должны поверить в то что осилите это. Иначе будете всегда пасовать.
    Почитайте гайдлайны по питону docs.python-guide.org/en/latest/writing/style
    Питон очень стройный язык, он вам не сломает мозг как какая нибудь ява. Читайте хаб по питону на тостере, на хабре. Я например пытаюсь решить задачки которые пролетают тут по хабу, и улучшил свои знания питона за счет этого.
    Удачи, надеюсь смог хоть как-то помочь.
    Ответ написан
    5 комментариев
  • Простая игрушка на JS - как поправить?

    lxsmkv
    @lxsmkv
    Test automation engineer
    делайте console.log() под все события на все интересующие вас переменные, и ищите где математика не сходится.
    Не хочу лишать вас бесценного опыта дебаггинга.
    Начните с одним врагом. Или хотя бы с принцессой, поставьте ее посредине, и найдите при каких значениях иксов и игреков два квадрата соприкасаются. Испробуйте все позиции, сверху снизу справа слева :)

    P.S: Обычно начинают с решения математической составляющей начинают. Обкатывают на примитивны графических экземплярах всю логику, а потом добавляют графику и пр. Но соглашусь что так мотивации больше, когда видишь перед собой что-то красивое, а не черно белые геометрические примитивы.

    P.P.S: A почему не на html5 canvas все это. Так надо? Ведь поо нему дофига информации и на все распространенные вопросы есть готовые решения.
    Ответ написан
    Комментировать
  • Какую специальность в IT выбрать?

    lxsmkv
    @lxsmkv
    Test automation engineer
    если душа лежит к математике идите на прикладную математику. программная инженерия - слишком расплывчатая вещь, которой можно научиться только на собственном опыте (имхо). А прикладная математика она осязаема и знания математики, как мне кажется, усиливают любого разработчика. Это умение абстрактно мыслить, оно незаменимо, и вы его получите уже во время учебы. А на программной инженерии в худшем случае будут лить воду, про стандарты и как лучше - но на практике все совсем не так, как должно быть в теории.
    Ответ написан
    Комментировать
  • Зачем нужна сериализация?

    lxsmkv
    @lxsmkv
    Test automation engineer
    Потому что сокет понимает только потоки данных, поскольку основан на протоколе tcp/ip?
    Ответ написан
    Комментировать
  • Можно ли написать программу, не имея никакой документации и техзадания?

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

    lxsmkv
    @lxsmkv
    Test automation engineer
    Если считать в двоичном коде от нуля до n то все комбинации битов будут перебраны. Как вам такая мысль?
    Ответ написан
    3 комментария
  • Какую художественную литературу для тестирования вы знаете?

    lxsmkv
    @lxsmkv
    Test automation engineer
    думаю можно попробовать детективы. Дедукция, логическое мышление, эвристика, должно быть близко любому тестировщику.
    ну или подкасты по qa radio-qa.com
    Еще вот могу порекомендовать книжку, независимо от контекста поездки.
    Тайити Оно. Производственная система Тойоты. Уходя от массового производства.
    Считаю, что в дороге важнее чтобы чтец был хороший. А что слушать все равно. Кстати из художественной (может и моветон, но) Лукьяненко Черновик, Чистовик, Спектр - (это приключенческие детективы, хорошо начитаные, о других мирах, и Лукьяненко умеет классно развернуть интригу, и заставить задуматься)
    Ответ написан
    Комментировать
  • Какие есть программы для автоматического тестирования форм?

    lxsmkv
    @lxsmkv
    Test automation engineer
    Ответ написан
    Комментировать
  • Как решить задачу «Номер появления слова»?

    lxsmkv
    @lxsmkv
    Test automation engineer
    tokens = input().split()
    
    result = {}
    for tkn in tokens:
      cnt = tokens.count(tkn)
      result[tkn] = cnt
    
    print(result)
    Ответ написан
    4 комментария