Python UI Automation with Sikuli

Python UI Automation with Sikuli

Python UI Automation with Sikuli

Обект на курса:

Целта на курса е даде основни практически и теоретични познания за писане на автоматизирани тестове (Test Automation) и да запознае курсистите с QA-ският процес. С помощта на популярният езикът Python и open source инструмента за image recognition Sikuli.

Езикът Python e много по-лесен за разбиране особено, като първи език за програмиране. В последните години е доста популярен и в университетите. Той е силно експресивен, което означава че с една линия код може да свършим повече работа и за по-малко време отколкото с една линия код на друг не толкова експресивен език. Доста изчистен от към синтаксис и лесен за четене.

От друга страна инструментът Sikuli на практика дава възможност да се автоматизира абсолютно всичко, което се вижда на екрана. От уеб сайтове, десктоп приложения, емулатори, видеа и дори игри. Всички проблеми, които имат повечето известни инструменти за автоматизация тук изчезват. Това дава възможност за фокус върху същинската част – тестването. Вместо да се решават проблеми с локирането на елементи или затварянето на онзи неприятен диалогов или системен прозорец.

Накрая ще разгледаме как може да впрегнем тези знания и те да работят за нас всяка нощ, докато ние си почиваме. А на сутринта само да анализираме резултатите.

След края на курса се очаква участниците в него да умеят да пишат автоматизирани тестове базирани на Python използвайки Sikuli. Препоръчително е всички, които участват в курса да използват Windows, като операционна система за гладкото му протичане.

За кого е предназначен

Курса е предназначен за хора с нулеви или минимални познания по езикът за програмиране Python и Sikuli. Подходящ е и за хора, които вече работят в IT сферата (Tестери и QA), но желаят да се усъвършенствам в сферата на автоматизираното софтуерно тестване.

Въпреки, че курса се преподава на български език, добре е курсистите да имат добро ниво на английски.
Курсът е предимно практически и е насочен към усвояването на реални умения и техники, които могат да се приложат в ежедневната работа. Целта на курса е да въведе курсистите в основните принципи на програмирането и да запознае с методите за автоматизирано тестване, използвайки подход който ще ги направи универсални и ще могат да автоматизират почти всичко.
Курсът съдържа множество практически упражнения и добри практики от реални проекти.

Продължителност на курса

Курса е вместен в 16 лекции, всяка с продължителност 3 часа. Занятията се провеждат два пъти седмично, като общата продължителност на курса е 8 седмици или 2 месеца.
Занятията ще са смесени (лекции и упражнения), като се цели практическата насоченост на материала.

Практическа част по време на занятия

За упражненията и практическата част по време на занятията всеки курсист трябва да носи личен лаптоп.

Цена на курса

Цената за цялата продължителност на курса е 750 лева. Като предоставяме възможност за разсрочено плащане – първа вноска 450 лева и втора вноска 300 лева в началото на всеки от месеците от курса.

В кои дни се провежда курса, кога ще започнат нови групи и как може да се запиша?

Разписанието се публикува в График, а за записване, моля използвайте Записване за курс.

Lessons

  1. Програмният език Python

    Представяне на курса. Какво ще научим? Как ще го научим?
    Конфигуриране на работна среда
    Създаване на първият Python скрипт
  2. Цикли(Loops)

    Цикъл - while loop
    Цикъл - for loop
    Цикъл - nested loops
    Ключови думи - break, continue, pass
  3. Функции(Functions, Methods)

    Какво представлява функцията
    Аргументи на функция
    Глобални и локални променливи
    Пакети и модули
    Ключови думи - global, return, import
  4. Работа с файлове - четене, писане, отваряне, затваряне
    Работа с директории - текуща директория, смяна на директория, обхождане на директории
    Обработка на изключенията: build-in exceptions
  5. Обекти и Класове

    Обектно Ориентирано Програмиране
    Работа с класове
    Наследяване и нива на достъп
  6. Основи на Sikuli

    Sikuli IDE
    Основни функции - click(), type(), wait(), exists(), dragDrop(), hover(), highlight()
    Работа с Matching и targetoffset на изображенията
    Работа със Similarity
  7. Advanced Sikuli

    Работа с региони
    Работа с функции - nearby(), Left(), Right(), Below(), Above()
    Работа с еднакви локатори(images) - манипулиране на чекбокси
    Работа с клипборда, анализиране и верификации на текст от екрана
    Работа с Shortcuts
    Извличане на текст от регион
  8. Работа с чекбокси, popup, слайдери, Word, Excel, системни менюта, facebook, youtube, online casino
    Автоматизиране на Web
    Автоматизиране на Desktop
    Автоматизиране на Remote Desktop Connection/VNC
    Автоматизиране на Мобилно устройство
    Автоматизиране на Игра
  9. Архитектура на framework-a (UI map, Library, Test set)
    Стартиране на тестовете (cmd, cron, task scheduler, jenkins)
    Анализиране на резултатите (Html и Video репорт)
    Поддръжка на тестовият framework и тестовете
  10. Изграждане на QA процес

    Създаване и конфигуриране на Jenkins server
    Интеграция с Jenkins
    Интеграция с GitHub
    Работа с виртуални машини (VirtualBox)
  11. Ръчно тестване и запознаване с продукт 
    Вземане на решение какво да се автоматизира първо
    Правилният подход за създаване на UI map
    Създаване на първият сет и тестове
    Тестване и дебъгване при създаването на първите тестове
    Анализиране нa HTML и Video репорт
    Оптимизации и поддръжка след създаването на първия тестови сет
    Създаване на Jenkins сървър
    Интегриране на framework-a с Jenkins или Task Scheduler / Cron

Попълнете формата за препоръки и впечатления

Oстави своята препоръка или впечатление!

avatar