Перейти к содержимому

Фотография

Как изменить название теста во время его выполнения


  • Авторизуйтесь для ответа в теме
Сообщений в теме: 16

#1 yoo

yoo

    Новый участник

  • Members
  • Pip
  • 15 сообщений
  • ФИО:Юрий


Отправлено 04 июля 2016 - 11:36

Доброго дня, коллеги!

Возник вопрос как изменить наименование теста во время его выполнения.

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

Метод запускается при старте теста, когда то, что в нем я хочу выводить еще не известно.

Как его вызвать повторно, чтобы он изменил наименование теста, не понимаю: явный вызов метода не влияет на изменение наименования теста.


  • 0

#2 BabyRoot

BabyRoot

    Специалист

  • Members
  • PipPipPipPipPip
  • 833 сообщений


Отправлено 04 июля 2016 - 15:18

Какой отчет вы используете? Используете ли вы вообще какой-нить отчет?


  • 0

#3 yoo

yoo

    Новый участник

  • Members
  • Pip
  • 15 сообщений
  • ФИО:Юрий


Отправлено 05 июля 2016 - 06:29

Использую allure от yandex-а


  • 0

#4 ashipovalov

ashipovalov

    Активный участник

  • Members
  • PipPip
  • 142 сообщений
  • ФИО:Шиповалов Александр


Отправлено 05 июля 2016 - 10:16

А какой язык программирования вы используете?


  • 0

#5 yoo

yoo

    Новый участник

  • Members
  • Pip
  • 15 сообщений
  • ФИО:Юрий


Отправлено 05 июля 2016 - 10:23

использую java, сборщик Gradle (но оффлайн, т.е. gradle-2.11-all.zip)

 

вроде есть ссылка как юзать параметры allure: https://github.com/a...wiki/Parameters

 

локально запускается (из Idea), через jenkins работать не хочет, говорит:
 

:compileTestJavaC:\Users\manuhin\.jenkins\jobs\gge-cards-tests\workspace\gge-tests\src\test\java\ru\stqa\pft\gge\tests\CardsTestsGGE.java:9: error: cannot find symbol
import ru.yandex.qatools.allure.annotations.Parameter;
^
symbol: class Parameter
location: package ru.yandex.qatools.allure.annotations
C:\Users\manuhin\.jenkins\jobs\gge-cards-tests\workspace\gge-tests\src\test\java\ru\stqa\pft\gge\tests\CardsTestsGGE.java:57: error: cannot find symbol
@Parameter("cardUrl fail")

 

------------

9-я строка в коде:

import ru.yandex.qatools.allure.annotations.Parameter;


  • 0

#6 Lzk

Lzk

    Специалист

  • Members
  • PipPipPipPipPip
  • 504 сообщений
  • ФИО:Олег
  • Город:Мск

Отправлено 05 июля 2016 - 12:27

а зависимости Allure ты добавляешь в gradle ?


  • 0

#7 yoo

yoo

    Новый участник

  • Members
  • Pip
  • 15 сообщений
  • ФИО:Юрий


Отправлено 05 июля 2016 - 13:00

а зависимости Allure ты добавляешь в gradle ?

а как определить сколько зависимостей добавлять?

 

я добавил пока одну (к тем что уже были):

compile 'ru.yandex.qatools.allure:allure-java-annotations:1.5.0.RC2'

 

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

:testGGEcards[AppClassLoader@4e25154f] error can't determine annotations of missing type ru.yandex.qatools.allure.annotations.Attach
when weaving type jarjar.org.gradle.process.internal.launcher.GradleWorkerMain
when weaving classes
when weaving
[Xlint:cantFindType]
FAILED

 

вот полный текст файла build.gradle:

 

apply plugin: 'java'
compileJava.options.encoding = 'UTF-8'

repositories{
mavenLocal()
mavenCentral()
}

configurations {
agent
}

dependencies {
compile 'org.testng:testng:6.9.10'
compile 'org.seleniumhq.selenium:selenium-java:2.53.0'
compile 'org.hamcrest:java-hamcrest:2.0.0.0'
compile 'com.thoughtworks.xstream:xstream:1.4.9'
agent "org.aspectj:aspectjweaver:1.8.0"
compile "ru.yandex.qatools.allure:allure-testng-adaptor:1.4.0.RC4"
compile 'org.atmosphere.client:javascript:2.3.2'
compile 'org.webjars.bower:jQuery:2.2.3'
// compile 'ru.yandex.qatools.allure:allure-core:1.5.0.RC2'
compile 'ru.yandex.qatools.allure:allure-java-annotations:1.5.0.RC2'
// compile 'org.slf4j:jul-to-slf4j:1.7.21'
// compile 'net.lightbody.bmp:browsermob-legacy:2.1.1'
}

//test {
// useTestNG {
// suites 'src/test/resources/testng-vitrinas.xml'
// }
// if (project.hasProperty('browser')) {
// systemProperty 'browser', "${browser}"
// }
// if (project.hasProperty('target')) {
// systemProperty 'target', "${target}"
// }
// if (project.hasProperty('verifyUI')) {
// systemProperty 'verifyUI', "${verifyUI}"
// }
// systemProperty "file.encoding", "utf-8"
//}

task testMGE(type: Test) {
useTestNG {
suites 'src/test/resources/testng-vitrinas-MGE.xml'
}
if (project.hasProperty('browser')) {
systemProperty 'browser', "${browser}"
}
if (project.hasProperty('target')) {
systemProperty 'target', "${target}"
}
if (project.hasProperty('verifyUI')) {
systemProperty 'verifyUI', "${verifyUI}"
}
systemProperty "file.encoding", "utf-8"
}

task testGGEvitrinas(type: Test) {
useTestNG {
suites 'src/test/resources/testng-vitrinas-GGE.xml'
}
if (project.hasProperty('browser')) {
systemProperty 'browser', "${browser}"
}
if (project.hasProperty('target')) {
systemProperty 'target', "${target}"
}
if (project.hasProperty('verifyUI')) {
systemProperty 'verifyUI', "${verifyUI}"
}
systemProperty "file.encoding", "utf-8"
}

task testGGEcards(type: Test) {
useTestNG {
suites 'src/test/resources/testng-cards-GGE.xml'
}
if (project.hasProperty('browser')) {
systemProperty 'browser', "${browser}"
}
if (project.hasProperty('target')) {
systemProperty 'target', "${target}"
}
if (project.hasProperty('verifyUI')) {
systemProperty 'verifyUI', "${verifyUI}"
}
systemProperty "file.encoding", "utf-8"
}

testMGE.doFirst {
jvmArgs "-javaagent:${configurations.agent.singleFile}"
}

testGGEvitrinas.doFirst {
jvmArgs "-javaagent:${configurations.agent.singleFile}"
}

testGGEcards.doFirst {
jvmArgs "-javaagent:${configurations.agent.singleFile}"
}

tasks.withType(JavaCompile) {
options.encoding = 'UTF-8'
}


  • 0

#8 Lzk

Lzk

    Специалист

  • Members
  • PipPipPipPipPip
  • 504 сообщений
  • ФИО:Олег
  • Город:Мск

Отправлено 05 июля 2016 - 13:09

вот пример


  • 0

#9 yoo

yoo

    Новый участник

  • Members
  • Pip
  • 15 сообщений
  • ФИО:Юрий


Отправлено 05 июля 2016 - 17:49

это некий общий пример по использованию allure, как в принципе пользоваться этим отчетом - ясно. неясно: как переопределить его наименование в процессе выполнения (см. первоначальный пост темы).


  • 0

#10 Lzk

Lzk

    Специалист

  • Members
  • PipPipPipPipPip
  • 504 сообщений
  • ФИО:Олег
  • Город:Мск

Отправлено 06 июля 2016 - 08:13

а код можешь прислать ?


  • 0

#11 yoo

yoo

    Новый участник

  • Members
  • Pip
  • 15 сообщений
  • ФИО:Юрий


Отправлено 06 июля 2016 - 11:26

в личку отправил


  • 0

#12 Lzk

Lzk

    Специалист

  • Members
  • PipPipPipPipPip
  • 504 сообщений
  • ФИО:Олег
  • Город:Мск

Отправлено 06 июля 2016 - 12:57

может быть вот это тебе поможет


  • 0

#13 yoo

yoo

    Новый участник

  • Members
  • Pip
  • 15 сообщений
  • ФИО:Юрий


Отправлено 06 июля 2016 - 13:11

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

спасибо за посильную помощь.


  • 0

#14 Lzk

Lzk

    Специалист

  • Members
  • PipPipPipPipPip
  • 504 сообщений
  • ФИО:Олег
  • Город:Мск

Отправлено 06 июля 2016 - 13:32

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

спасибо за посильную помощь.

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

Скажу честно, такой задачи у меня не было , по этому не углублялся в тему.


  • 0

#15 yoo

yoo

    Новый участник

  • Members
  • Pip
  • 15 сообщений
  • ФИО:Юрий


Отправлено 06 июля 2016 - 14:27

 

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

спасибо за посильную помощь.

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

Скажу честно, такой задачи у меня не было , по этому не углублялся в тему.

 

 

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


  • 0

#16 barancev

barancev

    Администратор

  • Admin
  • PipPipPipPipPipPip
  • 6 872 сообщений
  • ФИО:Алексей Баранцев
  • Город:Россия, Москва


Отправлено 10 июля 2016 - 14:24

Мне кажется, проще не менять название теста, а просто добавить ещё один параметр, который содержит не тестовые данные, а описание тестовой ситуации. В самом тесте этот параметр использоваться не будет, но зато в отчёт выведется.


  • 0
Алексей Баранцев
Тренинги для тестировщиков (тестирование производительности, защищенности, тест-дизайн, автоматизация):
Линейка тренингов по Selenium

#17 yoo

yoo

    Новый участник

  • Members
  • Pip
  • 15 сообщений
  • ФИО:Юрий


Отправлено 12 июля 2016 - 13:16

Мне кажется, проще не менять название теста, а просто добавить ещё один параметр, который содержит не тестовые данные, а описание тестовой ситуации. В самом тесте этот параметр использоваться не будет, но зато в отчёт выведется.

Спасибо!


  • 0


Количество пользователей, читающих эту тему: 0

0 пользователей, 0 гостей, 0 анонимных