RSS
 

Архив ‘Тестирование’

Тестирование Android-приложения с помощью Eclipse + Testdroid Recorder

13 Апр

1. Создайте учетную запись на сайте «Testdroid».
2. Установите плагин «Testdroid» в Eclipse: «Help» -> «Eclipse Marketplace», в поле «Find» вписываем «Testdroid Recorder». После того, как плагин будет найден, жмите «Install».
3. В качестве примера создайте Android-проект из sample: «File» -> «New» -> «Other» -> «Android Project». В окне «New Android Project» задать имя проекта и выбрать «Create project from existing samples», нажать кнопку «Next». В следующем окне выберите нужную версию Android, которая имеет примеры. В окне «Select Sample» выберите «NotePad» и нажмите кнопку «Finish».
4. Выделите созданный проект и вызовите контекстное меню. Затем «Android Tools» -> «New Test Project». Задайте имя проекта <AddNoteTest> и сохраните проект.
5. Выделите созданный проект и вызовите контекстное меню. Затем «Build Path» -> «Configure Build Path…». В открывшемся окне перейдите на вкладку «Libraries», нажмите кнопку «Add External JARs» и выберите файл robotium-solo-<version>.jar (последнюю версию можно скачать на оф.сайте). Перейдите на вкладку «Order and Export» и отметьте чек-бокс напротив robotium-solo-<version>.jar. Нажмите кнопку «ОК».
6. В пакете com.example.android.notepad.test создайте новый класс с именем <AddNoteTest> и со следующим содержанием:

package com.example.android.notepad.test;
 
import android.test.ActivityInstrumentationTestCase2;
import com.example.android.notepad.NotesList;
import com.jayway.android.robotium.solo.Solo;
 
public class AddNoteTest extends ActivityInstrumentationTestCase2{
 
	private static final String APP_PACKAGE_NAME = "com.example.android.notepad";
	protected Solo solo;
	protected Integer screenWidth = null;
	protected Integer screenHeight = null;
 
	public AddNoteTest() {
		super(APP_PACKAGE_NAME, NotesList.class);
	}
 
	public void setUp() throws Exception {
		solo = new Solo(getInstrumentation(), getActivity());
	}
 
	public void testAddNote() throws Exception {
		solo.waitForActivity("NotesList", 500);
		solo.sleep(2500);
		solo.clickOnMenuItem("Add note", true);
		solo.waitForActivity("NoteEditor", 500);
		solo.sleep(2500);
		solo.clearEditText(0);
		solo.enterText(0, "Hello world!");
		solo.sleep(2500);
		solo.goBack();
		solo.waitForActivity("NotesList", 500);
		solo.sleep(2500);
		solo.clickOnMenuItem("Add note", true);
		solo.waitForActivity("NoteEditor", 500);
		solo.sleep(2500);
		solo.clearEditText(0);
		solo.enterText(0, "New");
		solo.sleep(2500);
		solo.goBack();
		solo.waitForActivity("NotesList", 500);
		solo.sleep(2500);
		solo.clickInList(1);
	}
 
	@Override
	public void tearDown() throws Exception {
		//Robotium will finish all the activities that have been opened
		solo.finishOpenedActivities();
	}
}

7. Выделите созданный проект и вызовите контекстное меню. Затем «Run As…» -> «Android JUnit Test». В зависимости от того, где вы тестируете приложение (эмулятор или телефон), на экране устройства запуститься приложение, в котором начнут автоматически происходить действия, описанные в тесте.

В следующей заметке я расскажу, как с помощью Testdroid Recorder создавать Record/Play тесты.

 
Нет комментариев

Опубликовано в рубрике Тестирование

 

Шахматы. Альфа-тестирование

07 Апр

 
Нет комментариев

Опубликовано в рубрике Тестирование

 

У багов тоже есть чувства

07 Апр

 
Нет комментариев

Опубликовано в рубрике Тестирование

 

Cвязка Selenium + JUnit + Maven в NetBeans IDE

18 Фев

В этой заметке я расскажу, как создать связку Selenium RC + JUnit (фреймворк для тестирования) + Maven (сборщик проектов) на примере NetBeans IDE.

  1. В NetBeans из списка доступных подключаемых модулей («Сервис» -> «Подключаемые модули») необходимо выбрать и установить «Selenium Module for Maven».
  2. Создать новый проект «Maven» -> «Приложение Java». Дождаться загрузки всех файлов для работы с Maven. Когда проект будет построен, в папке тестовых зависимостей появится JUnit.
  3. Добавить в проект «Selenium Test Case for Maven project» («Создать» -> «Другое», в категории выбрать «Selenium»). В папке тестовых зависимостей появится Selenium.
  4. Выделить папку «Тестовые зависимости», вызвать контекстно меню и выбрать «Загрузить объявленные зависимости».
  5. Попытаться построить проект с зависимостями (выделить проект, вызвать контекстно меню и выбрать «Построить с зависимостями»). Если появится сообщение ошибке «error: package org.junit does not exist», то переходим к шагу 6, иначе к шагу 7.
  6. Загрузить последнюю версию JUnit с официальной страницы проекта. На текущий момент актуальной версией является 4.10. В папке тестовых зависимостей выделить JUnit, вызвать контекстно меню и выбрать «Установить артефакт вручную». Выбрать загруженные JUnit и нажать на кнопку «Локальная установка». После этого ошибка «error: package org.junit does not exist» должна пропасть.
  7. Чтобы проводить тесты, необходимо загрузить загрузить последний Selenium RC с официальной страницы проекта. На текущий момент актуальной версией является 2.19.0. После чего нужно запустить загруженный файл: java -jar selenium-server-standalone-2.19.0.jar
  8. Убедиться, что все работает – выделить созданный класс в пункте 3, вызвать контекстно меню и выбрать «Тестировать файл». После чего должен запуститься указанный в конструкторе браузер.

Дальше уже все по своему усмотрению. К примеру, тесты, написанные в Selenium IDE можно перенести на Selenium RC / WebDriver. Для этого в Selenium IDE есть функция «Формат», которая позволяет автоматически конвертировать текущий формат представления теста в выбранный.

 
Нет комментариев

Опубликовано в рубрике Тестирование

 

Интерактивные курсы по Git и SVN

31 Янв
  • Git How To – интерактивный курс по основам Git
  • SVN How To - интерактивный курс по основам SVN
 

PHP скрипт для POST запросов

30 Янв

Каркас рабочего php-скрипта, который может помочь при тестировании API – отправляет POST-запросы через curl на сервер. В дальнейшем может быть модифицирован исходя из поставленной задачи. В частности, в примере используется аутентификация пользователя с помощью его логина и пароля путем передачи этих параметров на сервер.

/*
 * Autentification test script
*/
 
$postURL = "http://api.site.com/";
$username = 'UserName';
$password = 'UserPassword';
$postVars = "&amp;username=$UserName&amp;password=$UserPassword";
 
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $postURL);
curl_setopt($ch, CURLOPT_HEADER, 1);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_TIMEOUT, 3);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $postVars);
$result = curl_exec($ch);
curl_close($ch);
 
if(!$result)
{
    $error = curl_error($curl).'('.curl_errno($curl).')';
    echo $error;
}
else
{
    echo $result;
}
 
Нет комментариев

Опубликовано в рубрике Тестирование

 

С башогра про тестирование

11 Янв

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

Самый цирк начался поздно вечером, потому что датчик монтажники закрепили прямо над лампой. Всю ночь у дежурного была дискотека: стемнело – датчик лампу зажег, лампа зажглась и стало светло, а стало светло – датчик лампу гасит, ой опять темно – датчик лампу зажигает …. и так от заката до рассвета.

 
Нет комментариев

Опубликовано в рубрике Разное, Тестирование

 

Плагин User Agent Switcher для Firefox

08 Янв

Существует отличный плагин для браузера Firefox, который позволяет эмулировать различные user-agent’ы браузеров, будь то Internet Explorer, Opera, Safari и т.п. Первоначально в плагине имеется совсем небольшая поддержка  user-agent’ов, но это не беда. Достаточно импортировать вот этот xml-файл, который содержит в себе огромное количество user-agent’ов, удобно сгруппированных по категориям.

Так, к примеру, на скриншоте ниже, я выбрал в качестве user-agent’а iPad, и сайт Google автоматически переключился на версию для планшетных ПК.

Плагин можно загрузить через менеджер расширений в браузере Firefox, набрав в поисковой строке расширений «User Agent Switcher».

 
Нет комментариев

Опубликовано в рубрике Разное, Тестирование

 

Сервис валидации email адресов

06 Янв

В сети есть очень полезный сервис, который, во-первых, позволяет определить синтаксическую корректность написания email адреса на основе стандартов RFC (Request for Comments), а во-вторых, имеет множество реальных примеров тестовых email’ов, которые согласно RFC являются полностью корректными. К примеру:

test@org
test@xn--hxajbheg2az3al.xn--jxalpdlp
test@[IPv6:::3333:4444:5555:6666:7777:8888]

На сайте также можно найти исходники на Java, C# и PHP для тестирования email полей.

 
Нет комментариев

Опубликовано в рубрике Тестирование

 

Доклад про Selenium IDE с Selenium Camp 2011

27 Дек

Доклад Алексея Лупана «Selenium IDE как артефакт пикника на обочине» с конференции «Selenium Camp 2011″, проходившей в Киеве.

Слайды: ссылка.

 
Нет комментариев

Опубликовано в рубрике Тестирование