четверг, 17 апреля 2014 г.

Автотесты на уровне API для Java-приложений (Видео!)

В предверии новой SQA Days и новых докладов выкладываю долгожданное видео с прошлой конференции Smile :)

В нем я рассказываю о том, как у нас устроена архитектура тестов. Это не привычные тесты на уровне браузера, это тесты на уровне ниже, на уровне API.

Я рассказываю о том, как мы сделали такую архитектуру, какие в ней есть подводные камни и какие плюшки. Ну и, конечно же, самое важное - это "живой пример", который практически полностью идентичен реальным тестам.

Более того, вы тоже можете запустить эти тесты! Исходный код выложен в открытый доступ. Скачивайте, смотрите видео, запускайте, изучайте и, конечно же, задавайте вопросы!

Приятного просмотра Smile :)


Автотесты на уровне API для Java-приложений на youtube


См также:
Folks. Исходный код и инструкция по установке — исходный код приложения для этого доклада
API-тесты, комиксы — веселые картинки из слайдов Smile :)
Первый автотест - куда уходит время? — если вы только планируете начинать автоматизацию, стоит почитать )

14 комментариев:

  1. Оля, а что же код не в каком-нибудь гитхабе/бибакете/гуглкоде?
    И размер архивчика настараживает 26 метров?

    ОтветитьУдалить
    Ответы
    1. Чем тебе дропбокс не нравицца? :)
      Это тестовый примерчик, комитить туда ничего не надо, пусть себе лежит.
      Ну и да, 26 метров, а это много или мало? :)

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

      Удалить
  2. Чтобы посмотреть проект, много действий нужно совершить.
    26 метров - много. полезного кода на 0,5 метра.
    Ваши библиотеки - в тестовом проекте? Это кажется лишним.
    И свинг и аспекты это все надо?

    ОтветитьУдалить
    Ответы
    1. Вот как раз все эти 26 метров - чтобы не надо было много действий совершать, распаковал и запустил, посмотри мою инструкцию, все сделано для того, чтобы их могли не-автоматизаторы запустить )
      Свинг, возможно, не выкошен просто

      Удалить
  3. Прочитать с лёгким кавказским акцентом:

    Оля, ты нэ только красавэца, активистка, тестировщэца,
    но еще и Java-код красивый пишэшь!


    Я как раз вот взялся за изучения Java и твои исходники с комментариями реально помогли найти несколько новых вещей.

    ОтветитьУдалить
    Ответы
    1. Дима, спасибо!
      Правда, комментарии в исходниках не мои, мне код разработчик подготовил ))) Но я ему передам =)

      Немного позже распишу подробнее, как что у нас там происходит, как и обещала на выступлении, глядишь, еще что новое узнаешь :)

      Удалить
  4. интересный доклад. есть над чем подумать. но разве это тестирование api? на сколько я понимаю это не специально предоставляемые приложением функции для дергания извне, а внутренние функции. у меня сложилось впечатление, что это больше unit тестированиею

    ОтветитьУдалить
    Ответы
    1. Мне кажется, здесь идет конфликт обозначений, кто как называет.

      Да, это внутреннее API, но кто сказал, что оно должно быть публичным? Unit-тесты не вылезают за рамки своего класса, по крайней мере, в нашем глоссарии.

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

      Ну и совсем "высокие" тесты - через UI

      Удалить
  5. Интересно было бы послушать, как прикрутить API тесты к приложению, часто это достаточно сложная задача, особенно для legacy.

    ОтветитьУдалить
  6. Всё-таки не понимаю, зачем в архиве либы, у вас же мавен-проект, он сам всё установит?

    ОтветитьУдалить
  7. Этот комментарий был удален автором.

    ОтветитьУдалить
  8. большое спасибо, Ольга! Это то, что я искала. Теперь у меня есть понимание, как выглядят и как писать автотесты!

    ОтветитьУдалить