Size: a a a

QA — Load & Performance

2020 July 27

МЁ

Мюсля 🙈 Ёшшик... in QA — Load & Performance
Alexey
Инфа 100, что не идентичны :)
таки оказалось что да
источник

МЁ

Мюсля 🙈 Ёшшик... in QA — Load & Performance
Подскажите по websocket самплеру - пытаюсь установить соединение, но чуда не получается
источник

AG

Alex Grishutin in QA — Load & Performance
советую юзать вебсокет плагин который Peter Doornbosch
источник

RL

Ren Low Daniel in QA — Load & Performance
Ребят,всем привет. Можете пожалуйста подсказать как нужно прописать путь в xPathQuery/xPathExtractor, если  нам надо вытащить только один параметр(<Donate Value="Card"/>)?(Пример:<DATA>
   <Gamedate>
     <BEGIN_>
       <Donate Value="Card"/>
       <Donate Value="3.5"/>
     </BEGIN_>
     <BEGIN_>
       <Donate Value="Nal"/>
       <CDonate Value="0"/>
     </BEGIN_>
   </Comissions>
 </DATA>)
источник

МЁ

Мюсля 🙈 Ёшшик... in QA — Load & Performance
Alex Grishutin
советую юзать вебсокет плагин который Peter Doornbosch
сейчас попробую
источник

jj

jagga jagga in QA — Load & Performance
Мюсля 🙈 Ёшшик
сейчас попробую
А на чем написан тестируемый сервер вебсокетов?
источник

AK

Anton Kramarev in QA — Load & Performance
Снова вопрос по гатлингу
В сессии лежит переменная со значением null
Любая попытка ее вытащить и хоть что-то сделать с ней приводит к NPE
Как проверить что значение этой переменной - null?

Пробовал:
session("myVar") == null // пишет false
session("myVar").as[String] // NPE
Option(session("myVar")).isEmpty // пишет false
источник

AK

Anton Kramarev in QA — Load & Performance
println(session) показывает что переменная есть "myVar" -> null
источник

СЧ

Сергей Чепкасов... in QA — Load & Performance
Anton Kramarev
Снова вопрос по гатлингу
В сессии лежит переменная со значением null
Любая попытка ее вытащить и хоть что-то сделать с ней приводит к NPE
Как проверить что значение этой переменной - null?

Пробовал:
session("myVar") == null // пишет false
session("myVar").as[String] // NPE
Option(session("myVar")).isEmpty // пишет false
можно попробовать validate:

session("myVar").validate[String]
https://gatling.io/docs/current/session/session_api#getting-attributes

и потом:
def display(v: Validation[String]) = v match {
 case Success(string) => println("success: " + string)
 case Failure(error)  => println("failure: " + error)
}
https://gatling.io/docs/current/session/validation#manipulating
источник

ΙΤ

Ιωάννης Τσεκούρι... in QA — Load & Performance
а зачем туда пихать нул?
источник

AK

Anton Kramarev in QA — Load & Performance
Его туда чекер кинул
источник

СЧ

Сергей Чепкасов... in QA — Load & Performance
Anton Kramarev
Его туда чекер кинул
можно в check проверить на нул. Или добавить дефолтное значение через трансформ:
transformOption(extract => extract.orElse(Some("default")))
https://gatling.io/docs/current/http/http_check/#transforming
источник

AK

Anton Kramarev in QA — Load & Performance
Сергей Чепкасов
можно в check проверить на нул. Или добавить дефолтное значение через трансформ:
transformOption(extract => extract.orElse(Some("default")))
https://gatling.io/docs/current/http/http_check/#transforming
17:35:48.208 [ERROR] i.g.c.action.If - 'if-5' failed to execute: j.l.ClassCastException: Value is null
источник

AK

Anton Kramarev in QA — Load & Performance
Снова NPE
источник

ΙΤ

Ιωάννης Τσεκούρι... in QA — Load & Performance
а откуда чекер то забирает так что происходит нул?
источник

ΙΤ

Ιωάννης Τσεκούρι... in QA — Load & Performance
короче нужно это обернуть в Option
источник

AK

Anton Kramarev in QA — Load & Performance
Парсит джейсон, если велью есть - оно стринговое, если нет - null
источник

AK

Anton Kramarev in QA — Load & Performance
Ιωάννης Τσεκούρι
короче нужно это обернуть в Option
Пробовал
источник

AK

Anton Kramarev in QA — Load & Performance
Получается что session("myVar") не возвращет никакого велью пока его через as не приведешь к типу, но этот метод падает с NPE
источник

СЧ

Сергей Чепкасов... in QA — Load & Performance
Anton Kramarev
Парсит джейсон, если велью есть - оно стринговое, если нет - null
Была такая проблема, может приходить пустой ответ, может приходить ответ без нужного id в json, делал вот так:
.check(checkIf((r: Response, s: Session) => r.body.string.nonEmpty)
(jsonPath("$.id")
 .transformOption(extract => extract.orElse(Some("123456"))).saveAs("id")))
Проверяем что тело ответа не пустое, затем пытаемся извлечь id по пути $.id, если его там нет, то принимаем дефолтное значение
источник