Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

LR Analysis API - генерация cross results отчёта



Software-Testing.Ru - портал тестировщиков  

Новые темы форума тестировщиков


LR Analysis API - генерация cross results отчёта
2013-07-08 12:42
Есть у кого практика автоматической генерации отчётов с помощью Analysis API? Вопрос таков: нужно автоматически сгенерировать отчёт по результатам, причём сравнить эти результаты, тоесть в UI есть функция "Cross Results", а мне нужно сделать так же, только через API ну или в крайнем случае через комманд лайн.

Через апи можно создать сессию так и затем сгенерить их неё отчёт овтоматически:
public bool Create(string aSessionName, string aResultFileName, string aTemplateName)

тут мы видим, что результат открыть можно только один, а в кросс резалт открывается два файла с результатами.

То же и через комманд лайн - через аргументі можно передать только один путь к файлу результата:
"c:\Program Files\Mercury\LoadRunner\bin\AnalysisUI.exe" -RESULTPATH C:\Temp\res\res.lrr -TEMPLATENAME ResTemplate


Возможно кто сталкивался с такой проблемой?


Может ли JMeter врать?
2013-07-08 14:44
Привет.
Появилось желание протестить серверок POST запросами. Написал маленький классик, к нему тред и вроде счастлив - даже результаты получаю, но не долго радовался. Послал те же запросы через JMeter и расстроился. Результаты - время обработка запроса полученные с помощью JMeter в 10 раз меньше чем в моем коде.

public class ApacheHttpPostSender {

    static File dataFolder = new File("~/data");

    static ArrayList<File> files = new ArrayList();
    static ArrayList<HttpPost> posts = new ArrayList();

    static int tNumber = 10;
    static int tInterval = 1000;

    public static void main(String[] args) {
        HttpClient client = new DefaultHttpClient();
        HttpPost post = new HttpPost("http:xxx.xxx.xxx/sendMessage");

        for (final File fileEntry : dataFolder.listFiles()) {
            if (fileEntry.isDirectory()) continue;
            files.add(fileEntry);
        }

        for (int i = 0; i < tNumber; i++) {

            MultipartEntity entity = new MultipartEntity ();
            try {
                FileBody fileBody = new FileBody(files.get((new Random()).nextInt(files.size())), "image/jpeg");
                entity.addPart("content", fileBody);
                entity.addPart("json", new StringBody("{to:98768765454376565987670987,type:image}"));
                entity.addPart("token", new StringBody("bvcnbvcjgfglnbmnbcbvxjg_654309"));
                //entity.
            } catch (IOException ioe) { ioe.printStackTrace(); }

            post.setEntity(entity);
            posts.add(post);
        }

        for (int i = 0; i < posts.size(); i++) {
            (new ApacheHttpPostSenderThread(posts.get(i), i, (new Random()).nextInt(tInterval))).start();
        }
    }
}


Время запроса меряю как

long tBefore = System.currentTimeMillis();
HttpResponse response = client.execute(post);
long tAfter  = System.currentTimeMillis();


Вроде все примитивнее не придумаешь... Но результаты разнятся...

public class ApacheHttpPostSenderThread extends Thread {

    private HttpPost post;
    private int delay_miliseconds;
    private int thread_index;

    ApacheHttpPostSenderThread(HttpPost post, int thread_index, int delay_miliseconds) {
        super();
        this.post = post;
        this.delay_miliseconds = delay_miliseconds;
        this.thread_index = thread_index;
    }

    public void run() {
        try {
            long heapSize = Runtime.getRuntime().totalMemory();

            Thread.sleep(delay_miliseconds);

            HttpClient client = new DefaultHttpClient();
            System.out.println("Thread " + this.thread_index + ": START!!! ");

            long tBefore = System.currentTimeMillis();
            HttpResponse response = client.execute(post);
            long tAfter  = System.currentTimeMillis();

            client.getConnectionManager().shutdown();

            BufferedReader rd = new BufferedReader(new InputStreamReader(response.getEntity().getContent()));

            String line = "";
            while ((line = rd.readLine()) != null) {
                System.out.println(line);
            }
            
            System.out.println(" ---> " + (tAfter - tBefore) + " miliseconds.");

        } catch (Throwable tex) { tex.printStackTrace(); }
    }
}


Может я что-то пропустил и мой код немыслимо тормозит, может Jmeter где-то что-то не то меряет...
Пробовал посылать и сановским HttpUrlConnection и апаческим Http клиентом. Результаты и них похожи но с JMeter не совпадают...

В чем может быть проблема?

Тестировщик. Удаленно.
2013-07-08 16:41
компания разрабатывает штуки для форекса.
Уже и программисты есть, работаем по удаленке, но вот тестеров не хватает, конечно =)

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

По всем вопросам - на почту timur.latypoff@gmail.com

(мопед не мой :))

Линия падения скрипта
2013-07-08 17:50
Здравствуйте, наткнулся на проблему поиска линии падения скрипта с самого скрипта. Тоесть мне нужно в процесе виполнения скрипта, а именно отработки Event функции, оценивать с каким функционалом это связано да бы розсылать письма соответствующим отделам.
В переменных отправляемых TC в функцию ивента (Sender, LogParams) даных свойвст не нашол. Где еще можна поискать решение данной проблемы?

МСК — Тренинг «Основы разработки Use Case'ов»
2013-07-08 19:04
Несмотря на жаркую пору и период отпусков, мы, Школа системного анализа и управления,
решили запустить новый долгожданный тренинг, успешно прошедший пилотирование —
«Основы разработки Use Case'ов».

Тренинг ведёт Сергей Мартыненко, эксперт по качеству ПО и бизнес-анализу,
автор блога «255 ступеней».

Для кого этот тренинг?

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

Кроме того, рассматриваемая нотация хорошо подходит для описания тестовых сценариев и описания дефектов.
Если в компании построен процесс тестирования, то тренинг полезен тестировщикам.
Программистам же данный тренинг полезен тем, что позволяет читать и верифицировать требования.

Участники узнают:
* О различных типах нотаций для описания требований
* О структуре типовых документов требований
* О применимости разных нотаций для разных типов проектов
* Для каких типов проектов юcкейсы подходят хорошо, для каких плохо
* О потребителях требований

Участники тренинга научатся:
* Писать юcкейсы
* Составлять документ требований на основе юcкейсов
* Верифицировать требования на полноту

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

Программу смотрите на странице тренинга:
http://school.system-analysis.ru/trainings/use-case-bas/

Ноутбук для работы тестировщика
2013-07-08 19:17
Всем привет. Поделитесь опытом, кто на каких ноутах работает, хватает ли диагонали (веб-тестирование), удобно ли вообще работать за ноутом, какие есть проблемы, неудобства? Хочу взять хорошую машину (не яблоко) на длительное время.

Senior QA Engineer
2013-07-08 20:07
Компания Игнайт http://igniteoutsourcing.com/ раширяет проект в связи с чем в Киеве открыта вакансия Senior QA Engineering. Заказчик – всемирноизвестный лидер в разработке удобных для пациента решений в визуализации, обнаружении и мониторинга нарушений с 1998 года. Страна Израиль. В сотрудничестве с игнайт с 2011 года.
Суть проекта:
Создание дизайна для небольшой, одноразовой капсулы используемой для мониторинга и диагностики расстройств желудочно-кишечного тракта без седативных или инвазивных эндоскопических процедур.
Сайт клиента: http://www.givenimaging.com/en-us/Innovative-Solutions/Capsule-Endoscopy/Pages/default.aspx
Требования:
5-летний опыт работы в ручном тестировании программного обеспечения
Опыт разработка тестов и тестовых сценариев-Software Test Description
Опыт выполнения test cases and test scenarios
Опыт тестировании программного обеспечения ПК на базе встраиваемых систем
Опыт тестирования веб-систем (сервер/клиент)
Опыт работы с системой тестирования и управления дефектами (Redmine,Jira, и т.д.)
Опыт в создании и ведении документации на английском языке
Продвинутый уровень разговорного английского языка
Будет плюсом:
Опыт выполнения веб-тестирования (ручное/автоматизированное)
Знания и опыт работы в проектах по методологии Agile
Опыт разработки медицинских проектов, а также медицинских устройств будет особым преимуществом
Мы предлагаем:
Карьерный рости развитие
Стабильную высокую заработную плату
Полный соцпакет, медицинская страховка
Современный офис, отличные условия труда и мощное оборудование
Профессиональные курсы и сертификации, полность оплачиваемые компанией.
Оплачиваемые уроки английского языка
Корпоративные мероприятия
Годовые бонусы для высокопроизводительных сотрудников
Работа на ведущую высокотехнологичную компанию в мире
Возможность путешествовать и встретиться с зарубежными коллегами лицом к лицу
Все дополнительные вопросы можно обсудить при личной беседе.
Присылайте свои резюме на английском pastuhova. jobs@gmail.com

Проблема с запуском тестов в браузере Opera.
2013-07-08 20:28
Приветствую!

После запуска тестов запускается браузер (для этого, кстати, пришлось еще указать полный путь к его exe в параметр opera.binary), и через несколько секунд тесты падают. В логе:

июл 08, 2013 8:26:32 PM com.opera.core.systems.runner.launcher.OperaLauncherBinary$OutputWatcher run
WARNING: launcher: ---------------------------
июл 08, 2013 8:26:32 PM com.opera.core.systems.runner.launcher.OperaLauncherBinary$OutputWatcher run
WARNING: launcher: Opera Crash Logging:
июл 08, 2013 8:26:32 PM com.opera.core.systems.runner.launcher.OperaLauncherBinary$OutputWatcher run
WARNING: launcher: Crash log writing failed, couldn't debug process!
июл 08, 2013 8:26:32 PM com.opera.core.systems.runner.launcher.OperaLauncherBinary$OutputWatcher run
WARNING: launcher: ---------------------------
июл 08, 2013 8:26:32 PM com.opera.core.systems.runner.launcher.OperaLauncherBinary$OutputWatcher run
WARNING: launcher: Detaching Windows process debugger not succesful
Exception in thread "stp-thread" java.nio.channels.ClosedSelectorException
	at sun.nio.ch.SelectorImpl.selectedKeys(Unknown Source)
	at com.opera.core.systems.internal.SocketMonitor.pollSockets(SocketMonitor.java:132)
	at com.opera.core.systems.internal.SocketMonitor.poll(SocketMonitor.java:108)
	at com.opera.core.systems.scope.stp.StpThread.run(StpThread.java:58)
startRow=0, endRow=4, startCol=0, endCol=3
Just read valid channels from xls file.
startRow=6, endRow=10, startCol=0, endCol=3
Just read invalid channels from xls file.
FAILED CONFIGURATION: @BeforeClass setUp(null)
org.openqa.selenium.WebDriverException: com.opera.core.systems.runner.OperaRunnerException: Could not start Opera: launcher unable to start binary
Build info: version: '2.33.0', revision: '4e90c97', time: '2013-05-22 15:32:38'
System info: os.name: 'Windows 7', os.arch: 'x86', os.version: '6.1', java.version: '1.7.0_09'
Driver info: driver.version: OperaDriver
	at com.opera.core.systems.OperaDriver.start(OperaDriver.java:194)
	at com.opera.core.systems.OperaDriver.<init>(OperaDriver.java:183)
	at com.opera.core.systems.OperaDriver.<init>(OperaDriver.java:172)

<...>
Caused by: com.opera.core.systems.runner.OperaRunnerException: Could not start Opera: launcher unable to start binary
	at com.opera.core.systems.runner.launcher.OperaLauncherRunner.startOpera(OperaLauncherRunner.java:240)
	at com.opera.core.systems.OperaDriver.init(OperaDriver.java:213)
	at com.opera.core.systems.OperaDriver.start(OperaDriver.java:191)




Т.е. все-таки, получается, браузер так нормально и не стартует? В файрфокс все ОК. В чем может быть дело?

Много раз подряд производятся клики в Internet Explorer.
2013-07-08 20:43
Всем привет!

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

В файерфокс все работает хорошо. С чем может быть связано?

Математика для тестировщиков
2013-07-08 21:30
Продолжаем публикацию лучших докладов SQA Days 13. Сегодня представляем доклад Никиты Налютина "Математика для тестировщиков".

Новые методики тест-дизайна не всегда рождались одномоментно, не все в инженерной практике может появиться в результате только лишь одного озарения и гениальных идей, увиденных во сне. Достаточно большая часть современных практик тестирования появилась в результате кропотливой теоретической и экспериментальной работы по адаптации математических моделей. И, хотя, для того, чтобы быть хорошим тестировщиком, вовсе не обязательно быть математиком, полезно понимать, какая теоретическая база лежит в основе того или иного метода тестирования. В докладе я расскажу о том, какую базу для тестирования дает математическая логика, теория формальных языков, математическая статистика и другие разделы математики; какие направления, связанные с тестированием, существуют в теоретическом computer science; появления каких новых методов можно ожидать в ближайшее время.

{iframe width="450" height="225" frameborder="0" src="http://video.yandex.ru/iframe/sqalab/nqcbuf64uo.7600/"}{/iframe}



Читать дальше

Поле для ввода
2013-07-08 22:27
Здравствуйте! Есть фрагмент кода:

<tr class=bg_f1>
<td class=navytext colspan="2">
	Полное описание<br><br>

	<textarea name="opisanie_big" style="width: 100%; height: 400px;"><p>Багажник с алюминиевой поперечиной 1100 мм.</p>
<p>Багажник предназначенный для установки на гладкие крыши, крепится к кузову или за дверной проём. </p>
<p>В комплект входят: адаптеры, 4 опоры, 2 поперечины</p>
<p>Производство Россия.</p>
<p>Индекс 8621-8809-8825</p>
<p><span style="color: rgb(255, 0, 0); "><strong>Цена: 3350 руб.</strong></span></p>
</textarea>
</td>
</tr>


Это поле для ввода, причём "многострочное". Нужно получить доступ к
<strong>Цена: 3350 руб.</strong>
, короче говоря взять цену, изменить, вставить новую.

Пробовал так:
td[@class='navytext']/textarea[@name='opisanie_big']/strong
, не находит элемент. Как получить доступ к цене и вообще как работать с многострочными полями ввода(как изменять текст внутри них, хранить ли это всё в строке)?

Использую Firefox драйвер, пишу на java в Eclipse.
Спасибо!


© 2010 | Software-Testing.Ru


В избранное