понедельник, 25 января 2016 г.

Человек в ванной из жидкого стекла и другие видео недели

Человек в ванной из жидкого стекла и другие видео недели

Все мы вынуждены жить под тяжелым давлением. Удивительной мощи атмосферного столба мы, по счастью, не чувствуем, но на герметичные предметы с пониженным внутренним давлением он оказывает самое замечательное действие. Даже если это железнодорожная цистерна, вмещающая более 100 т воды, сделанная из довольно толстой стали и сама весящая больше 30 т. Просто разогрев воздух внутри и дождавшись, пока он охладится — при герметично закрытых люках давление будет падать, — ведущие программы Myth Busters сняли, как атмосфера сминает цистерну, словно жестяную банку из-под колы.

Кстати, о коле. «Самым сложным способом достать банку колы» назвал видеоблогер Berlagawesome свою машину. Бессмысленный, но эффектный механизм включает 175 отдельных эффектных, но бессмысленных шагов, которые занимают около трех минут — и лишь затем позволяют получить вожделенную банку. По словам автора, на создание этой машины Руба Голдберга у него ушло больше трех месяцев — было сделано 114 неудачных попыток, прежде чем все заработало. Трудно спорить: это, безусловно, один из сложнейших способов достать обычную банку газированного напитка.

С неменьшей пользой проводит время и немецкий спортсмен-экстремал Тим Нолль, который пытается объединить две замечательные вещи — байкерские BMX-трюки и модный паркур — в нечто вроде «велопаркура». Насколько можно судить, объединение прошло скорее в пользу BMX, с которым Тим вытворяет нечто действительно невообразимое. Впрочем, смотрите сами.

Ну а чемпионами в области полезных развлечений на этой неделе объявляются ведущие видеоблога Vat19.com. Взяв более 200 кг прозрачной «жвачки для рук» — вязкого кремнийорганического полимера, из которого изготавливают популярные игрушки Silly Putty, они заполнили ей ванну — и отправили добровольца искупаться в этой тягучей массе. «Как-то холодно, и тяжело дышать, давит на грудь», — отозвался он, погрузившись внутрь. Ну а чем это закончилось — смотрите в следующем ролике.

пятница, 8 января 2016 г.

Купив MacBook у официального поставщика, можно остаться без официальной гарантии Apple / Хабрахабр

Купив MacBook у официального поставщика, можно остаться без официальной гарантии Apple



Несколько дней назад я решил купить себе макбук. Вначале порыскал по Авито и понял, что б/у MacBook Air в хорошем состоянии будет стоить довольно дорого, а гарантий при этом никто никаких дать не может. Можно вспомнить хотя бы этот пост.

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

Открыв Яндекс.Маркет, я был довольно неприятно удивлен ценами, но, что поделать, курс доллара оставляет желать лучшего. Так как совсем уж полного доверия к Яндекс.Маркету у меня нет (он показал новый MacBook Air 13" 256gb, Early 2014 в Евросети за сумму 50 с чем-то тыс. рублей, а на деле сей девайс уже давно отсутствует в наличии), я решил порыскать, для верности, по сайтам в отдельности.

Каково же было мое удивление, когда я зашел на сайт MediaMarkt! Там, помимо списка макбуков с ценами, было несколько моделей без цен, но с припиской «Товар можно приобрести только в магазине MediaMarkt».



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

Так вот, MacBook Air 13" 256gb, Early 2014 обнаружился в магазине MediaMarkt МЕГА Белая Дача всего за 64999 руб!

Так что я позвонил в магазин, где мне сказали, что ноутбук последний, в наличии.
Я приехал в указанный магазин, где после часа поисков (про нерасторопность сотрудников этой сети магазинов можно писать отдельный пост, но сейчас не об этом) этот ноутбук таки откопали и согласились мне продать.
Правда, коробка была не запечатана, на что продавец сказал, что, наверное, ноутбук ранее был на витрине. Но так как состояние было явно новое, я возражать не стал. На всякий случай я уточнил, будет ли официальная годовая гарантия. Мне сказали, что да, разумеется будет.

Так что я сдавив жабу спокойно купил этот девайс.
Приехав же домой и вдоволь наигравшись с заморской техникой, я решил все-таки проверить гарантию. И тут меня ждало разочарование:


(Я понятия не имею, что за странные надписи на непонятном языке появились рядом с названием при проверке серийника. Сам ноутбук для России, код модели MD761RU/B)

Видимо, витринный образец уже активировали до этого. И поэтому Apple считает, что гарантия закончилась. Разумеется, я решил связаться с техподдержкой Apple и MediaMarkt, чтобы узнать, как же исправить эту проблему.

Общение с MediaMarkt

Я написал им запрос, в котором объяснил ситуацию. Меня попросили прислать номер покупки. Через день мне позвонил молодой человек из поддержки и заявил, что не стоит беспокоиться, их ни коим образом не волнует информация с сайта Apple, потому что ремонт в течение года их магазин делает самостоятельно, нужен только чек.
Тут стоит отметить, что на чеке, почему-то, отсутствует серийный номер моего ноутбука. Но мне сказали, что это не должно быть проблемой. Что ж, пока поверю.


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

Apple

На официальном сайте при проверке гарантии есть кнопка «Подтвердить дату покупки». Я перешел по ссылке и отправил в Apple запрос.
На следующий день мне пришло письмо с просьбой прислать фотографии чека, а еще через некоторое время пришло другое письмо. В нем было сказано, что в подтверждении даты покупки отказано, так как по их сведениям ноутбук уже был куплен и активирован ранее.
Я ответил, что не согласен с таким решением, после чего меня попросили позвонить им, дабы уточнить ситуацию.


По телефону, после нескольких минут разбирательств, меня переключили на отдельного специалиста, который пообещал попытаться разобраться в ситуации. Для этого я выслал ему на личный-корпоративный email фотографии чека.
Мне пообещали связаться с американским офисом и разобраться, можно ли все таки исправить дату покупки, числящуюся в их системе и дать мне гарантию на мой свежекупленный ноутбук.
Еще раз напомню, чек не содержит серийного номера (спасибо, MediaMarkt), так что у меня есть некоторые сомнения в положительном решении. Но я, если что, постараюсь добиться успеха.
Пока что я жду ответа.

Что хочу сказать. Аккуратнее с покупкой витринных образцов. Мало того, что они могут быть затыканные посетителями магазина до дыр не совсем надлежащего качества (мне повезло, у меня даже количество циклов работы аккумулятора было где-то около нуля), так еще и у Apple, которые начинают отсчет гарантийного срока с момента первой активации, может возникнуть такая проблема.

Как будет ответ от Apple, я обязательно тут отпишусь.

UPD
По просьбе выкладываю фото чека



Sent from my iPhone

Инструменты тестирования приложений для мобильных устройств: обзор вариантов и возможностей


Константин Шлыков


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

Захват видео с экрана устройства

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

Android screen capture – приложение для передачи видеопотока с экрана Android-устройства на монитор компьютера. Правда программа не умеет пока записывать видео – только автоматически делать серию скриншотов при изменении экрана. Но ничто не мешает использовать десктопные скриншотеры с возможностью записи видео. Требует установленного Android SDK.

Reflector – платный (от 13$) инструмент для записи видео с iOS-устройств без проводного подключения к десктопу. Работает под Windows и Mac. Есть десятиминутный триал.
Так же для iPad и iPhone существует приложение Display Recorder, но оно постоянно то исчезает из AppStore, то появляется. На данный момент поиск в AppStore ничего не даёт (обратите внимание, что Display Recorder HD – это другое приложение, не имеющее функции записи экрана). Различные источники называют различные цены за приложения (от двух до десяти долларов).

Эмуляторы

Эмулятор – программа, полностью или частично копирующая функционал и поведение устройства или другой программы.

Некоторые из преимуществ использования эмулятора:

  • оперативное тестирование приложения, когда целевой мобильный телефон недоступен (или оказывается в дефиците);
  • тестирование сложных или опасных сценариев, которые невозможно или не рекомендуется проверять на реальных мобильных телефонах (например, тесты, которые каким-либо образом могут вывести телефон из строя или нарушить условия соглашения с оператором сотовой связи).

Минусы:

  • зачастую эмуляторы очень требовательны к ресурсам, так как наиболее качественные из них эмулируют работу приложения с самых нижних уровней;
  • то, что приложение работает на эмуляторе, не значит практически ничего, ведь пользователи будут запускать приложения на реальных мобильных телефонах, которые всегда отличаются даже от самых лучших эмуляторов.

Тестирование на целевом мобильном телефоне – это самый верный способ убедиться в правильном функционировании приложения, поскольку вы выполняете приложение на том же аппаратном обеспечении, которое будет у ваших пользователей.

Для всех распространённых мобильных ОС предлагаются бесплатные (для разработчиков) и довольно функциональные эмуляторы. Например, для Android есть официальный Android SDK, который включает в себя эмулятор мобильного устройства, реализующий все аппаратные и программные особенности типичного устройства. Такие же «нативные» решения есть и для iOS, и для Windows Phone.

Так же, конечно, есть и альтернативы:

MobiOne Developer – это mobile Web IDE для Windows, помогающее разработчику программировать, тестировать, отлаживать упаковывать и внедрять мобильные веб-приложения на устройства. Имеет много полезных функций вроде просмотра исходников страницы и инспектор кода. Решение платное (на данный момент – 100$), есть 15-дневный триал, поддерживает iOS и Android.

Electric Mobile Studio 2012 – эмулятор для тестирования веб-приложений iOS под Windows. Поддерживает jQuery Mobile, Mobile Web JavaScript, HTML5. Встраивается в Visual Studio 2012, позволяет эмулировать работу с геолокацией, переключаться между типом устройства «на лету» и прочее. Решение платное (на настоящий момент – около 40$), есть семидневный триал. Так же в сети ещё можно найти более старые бесплатные lite-версии.

Opera Mobile Emulator и Opera Mini Simulator позволяют протестировать веб-приложение под соответствующим браузером. Оба продукта бесплатны (второй вообще онлайновый – не требует установки на компьютер).

BlueStacks App Player позволяет запускать Android-приложения на Windows XP-8 и MacOS. Судя по всему, приложение представляет собой виртуальную машину, которая не эмулирует поведения устройств, но может быть полезна для тестирования функциональности приложения в условиях недоступности других способов.

Облачные платформы устройств

Позволяют удалённо протестировать свой продукт на множестве различных устройств, передавая данные о тестирования разработчику. Самые знаменитые – Perfecto Mobile и Device Everywhere. Суть этих решений в том, что у них стоит стенд с реальными мобильными устройствами, подключенными по кабелю, и веб-камера, передающая изображения с телефона. Внутрь фотографии телефона вставлено изображение с веб-камеры. Управляется мышкой, либо с помощью автоматического скрипта. Также Perfecto Mobile и Device Anywhere удалённо предоставляют устройства «напрокат». У них стоит множество различных телефонов, и час работы с одним телефоном стоит около $15. Можно оформить подписку. Есть бесплатные триальные версии.

Плюсы:

  • почти нет вмешательства в тестируемое приложение;
  • один тестовый скрипт используется для тестирования на всех нужных мобильных платформах;
  • многообразие устройств (iOS, Android, WP, Blackberry и другие);
  • нет ограничений в приложениях с технологической точки зрения – можно тестировать хоть нативные приложения, хоть HTML5.

Минусы:

  • большая цена;
  • задержки при взаимодействии с телефоном из России.

Автоматизированное воспроизведение скриптовых тестов

При выборе подходящего инструмента следует принимать во внимание его принцип работы. Наиболее распространены два варианта:

  • Воспроизведение теста происходит по обращению к экрану, без анализа самого экрана и элементов интерфейса. Обычно такое воспроизведение осуществляется через координаты жестов на экране. Главный плюс – обычно нет необходимости модифицировать приложение. Главный минус – зависимость тестов от размера экрана, ориентации устройства, дизайна приложения.
  • Воспроизведение теста посредством обращения к интерфейсным элементам приложения. В тесте указаны метки для форм, кнопок, текстбоксов и прочей визуальной «начинки». Главный плюс – даже существенные изменения в интерфейсе приложения вряд ли повлияют на работу теста. Главный минус – придётся просить разработчиков собирать тестировщикам версии приложений с дополнительными библиотеками.

UIAutomation – стандартное решение от Apple, которое позволяет выполнять написанные на JavaScript тестовые сценарии как в эмуляторе, так и на устройстве. Входит в состав Instruments. Компилировать дополнительные библиотеки не требуется. Начиная с Xcode 4.3 появилась возможность записи тестов через рекодер.

Robotium – пожалуй, самый известный на текущий момент инструмент для автоматизации тестирования Android-приложений. "It's like Selenium, but for Android" – утверждают разработчики. Тесты пишутся на Java (есть сторонние решения, позволяющие писать их, например, на Python). Возможности запускать тесты на устройстве нет, только в эмуляторе. Необходимо добавлять библиотеку в сборку приложения.

MonkeyRunner поставляется в составе Android SDK, позволяет выполнять функциональное тестирование приложения под Android, предоставляя API для управления устройством. MonkeyRunner является более низкоуровневым по сравнению с Robotium, и не требует исходного кода приложения. Тесты пишутся на Python, или с помощью рекордера, выполняются как в эмуляторе, так и на реальных устройствах, подключенных к компьютеру. Большой минус этого решения в том, что жесты записываются в координатах, проверка результатов только путём сравнения скриншотов, что очень усложняет использование одного скрипта для тестирования на нескольких устройствах, а так же делает скрипты неподходящими для регрессионного тестирования в случае изменения GUI приложения.

TestStudio – бесплатное приложение для автоматического тестирования на платформе iOS. Базируется на обращении к компонентам приложения, а не на скриншотах. Имеется как рекодер, так и возможность писать и редактировать тесты вручную. Позволяет тестировать web и native компоненты. Интересная особенность: можно записывать и воспроизводить тесты на устройстве без подключения к компьютеру.

AppThwack – интересный сервис для тестирования на Android-устройствах (поддержка iOS обещается в скором времени). Вы загружаете своё приложение на ресурс, оно устанавливается на настоящие устройства (ассортимент переваливает за сотню) и подвергается «исследованию» – запуск, замеры используемой памяти и загрузки процессоров, выявление ошибок и проблем, нагрузка небольшим манки-тестом. По результатам исследования создаётся отчёт со скриншотами. Имеется триал (неделя), цена – от 29$ в месяц за тестирование на 10 наиболее распространённых устройствах.

JamoSolution – одна из самых многообещающих платформ, на которой сейчас разрабатывается несколько инструментов (например, M-eux test и SeeTest). Она позволяет тестировать iOS, Android, Windows Phone и другие платформы. Поддерживается запись тестов (record&play). Работает через установку на устройстве приложения-агента, что освобождает разработчика от модифицирования своего приложения. Есть триальная версия.

EggPlant от студии TestPlant позволяет запускать свой тестовый скрипт на множестве устройств одновременно, определяя выходные данные методом распознавания картинки на экране. Поддерживает тестирование на устройствах Android и iOS и их эмуляторах, а так же на эмуляторе Windows Phone. Приложение разработано под Windows, Linux, Mac. Есть триальная версия.

Squish – платное (2400$) средство для автоматического тестирования Qt, Web, Java, iOS и других приложений. Поддерживает запись тестов, воспринимает скрипты на Javascript, Python, Perl или Tcl. Есть 30-дневная триал-версия.

Sikuli – open sourсe инструмент для автоматизации тестирования GUI Java-приложений (в том числе и Android). Открытая кросс-платформенная визуальная среда создания сценариев-скриптов, которая ориентирована на программирование графического интерфейса при помощи изображений (скриншотов). Особенность – скрипт, задающий последовательность действий, позволяет использовать скриншоты – чтобы дать команду нажать кнопку, достаточно подставить в скрипт скриншот этой кнопки. Поддерживает написание скриптов на Java и Python.

MonkeyTalk – бесплатный инструмент для тестирования Android и iOS-приложений. Имеет собственный мощный скриптовый язык (можно писать скрипты и на Javascript), позволяет создавать и хранить тестовые проекты (тест-кейсы, тест-сьюты). Так же имеется интеграция с Eclipse, есть рекодер. Требует вставки своей библиотеки в приложение.

Robot Framework – это open-source фреймворк для автоматизации приемочного тестирования и разработки через приемочные тесты (ATDD), имеющий широкий функционал. Поддерживает дополнительные библиотеки (можно использовать собственные, написанные на Python или Java) – именно с помощью уже реализованных библиотек и появляется возможность тестирования приложений на Android и iOS.

Нагрузочное тестирование

HP Virtual User Generator. Служит для нагрузки сервера мультиплицированием входящего траффика. Тестировщик создаёт скрипт, запускает его на устройстве, HP VuGen перехватывает траффик и имитирует запросы к серверу с подобной информацией, но от нескольких тысяч или миллионов устройств одновременно.

Neoload позволяет эмулировать правдоподобные условия сети (эмуляция 3G, 3G+, H+, 4G LTE). Может настраиваться для эмуляции нагрузки с разношёрстного списка устройств (есть предустановки для устройств iPhone5, Samsung Galaxy Tab II, Nokia Lumia 800, Blackberry Bold 9900 и других), основной скрипт нагрузки можно записать с помощью любого реального устройства по Wi-Fi. Есть бесплатный месячный триал, стоимость самой дешёвой лицензии (на пять пользователей) – 1200 евро. Поддерживает устройства на базе iOS, Android, Windows Phone и другие.

Манкитестинг

Monkey является инструментом стресс-тестирования для Android, содержащимся в Android SDK. Генерирует псевдослучайные действия пользователя. Позволяет настроить «хаотичность», интервал между событиями, их тип и т. п. Модификация кода приложения не требуется. Тестировать можно как на эмуляторе, так и на подключенном устройстве.

Anteater – инструмент для манкитестинга iOS-приложений. Имеет более широкий функционал, чем Monkey для Android. По-видимому, существует только под Mac. Бесплатен.

Сервисы для бета-тестирования

uTest – сообщество из 45 тысяч профессиональных тестеров из 180 стран. Реальные пользователи протестируют работу приложения. Платный. (iOS, Android, Windows Phone)

The Beta Family – бесплатный сервис для тестирования приложения. Заводите аккаунт, заливаете бета-версию приложения, рассылаете приглашение на тестирование, обрабатываете результаты тестирования. Можно выбрать тип бета-тестеров: private или public. Если public, то приложение смогут тестировать все желающие. Работает с iOS, Android, Windows Phone.

Zubhium. Предоставляет SDK для Android, с помощью которого вы в свое приложение встраиваете код для автоматического сбора информации об ошибках. Разработчик выкладывает бета-версию, приглашает тестеров, получает информацию. Стоимость подписки от 10$/мес. Есть 30-дневный триал.

Сборщики статистики

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

  • Flurry (бесплатная) (iOS, Android, Windows Phone)
  • BugSence (бесплатная) (iOS, Android, Windows Phone)
  • Apsalar (бесплатная) (iOS, Android)
  • Google Analytics (бесплатная) (iOS, Android)
  • Mixpanel (платная) (iPhone, Android)
  • Localytics (платная) (iOS, Android, Windows Phone)
  • Bango (платная) (Android, Windows Phone)

У каждой системы есть свои изюминки: обновление статистики в реальном времени (Localytics), суперточность с отслеживанием уникальных ID каждого пользователя (Bango), наличие средств для проведения опроса среди пользователей (Apsalar) и т. д. Естественно, есть и море отличий: в интерфейсе, в средствах анализа, в наличии дополнительных API, в стоимости, в наборе поддерживаемых платформ.

Другие полезные инструменты

Fake GPS – приложение для Android-устройств, позволяющее установить произвольные данные в модуле геолокации.
Так же, в ранее упоминавшемся Android SDK есть неплохой спектр мелочей, облегчающих тестирование приложений под Android – консольные возможности установки, удаления и запуска приложений, просмотр в реальном времени и вывод логов работы устройства в файл, перезагрузка приложения и так далее. Описание всех этих возможностей легко находятся в Интернете. Много полезного можно найти в книге от разработчика SDK Diego Torres Milano: "Android Application Testing Guide".

Комплексные решения

TestQuest Pro – инструмент для полного автоматического тестирования, разработанный для компаний и предприятий. Поддерживает функциональное, нагрузочное, регрессивное тестирование, тестирование качества и взаимодействия.

Experitest.com – позволяет проводить автоматическое, ручное (удалённо) и облачное тестирования на большом спектре устройств (2500$ в год за автоматическое тестирование, 4000$ в год за ручное).

Стоит отметить существование компаний, специализирующихся на тестировании, в том числе и на тестировании приложений на мобильных устройствах. Например, Qulix QA производят всестороннее тестовое покрытие – верификация работы приложения относительно ОС, платформ, языков и др; прохождение сертификации для подписи продуктов и попадания в маркет; тестирование приложений на реальных мобильных устройствах.

iReaderiReader Logo