2013-08-05 3 views
4

Мне было интересно, можете ли вы объединить две пользовательские переменные в одну. Например, у меня есть одна пользовательская переменная, которая определяется как местоположение корневой папки, а вторая переменная, определяемая как местоположение от корня, вниз во вложенную папку и то, что я спрашиваю, можно ли поставить переменную 1 + переменную 2 = полный путь?JMeter - Можно ли объединить 2 пользовательские переменные в одну?

так, например, у меня есть одна переменная, как:

testData.directory = ${__P(testData.directory,C:\Users\MURPHYA1\Desktop\JMeter bodies)} 
testData.testCases = ${__P(testData.testCases,\JMeter Basket body files)  

и то, что я хочу, чтобы произвести это: C: \ Users \ MURPHYA1 \ Desktop \ JMeter тела \ файлы тела JMeter Корзина

Является ли это возможное?

UPDATE

теперь у меня есть следующий конфиг и довольно несколько тестовых переменные только для тестирования: JMeter Config

ответ

8

Добавить второй элемент «Определенные пользователем переменные» после вашего. Там каждая переменная будет заменена значениями, определенными в вашем первом элементе.

- User Defined Variables 
- - test1 = a/ 
- - test2 = b 
- User Defined Variables 2 
- - test3 = ${test1}${test2} 
+0

нет необходимости в 2 пользовательских переменных конфигурационных элементах, одного достаточно –

+0

К сожалению, это не работает в JMeter под определенными переменными. Я нашел ту же резолюцию, что и @Dan Seibert, которую вы должны называть одной переменной за другой, например $ {test1} $ {test2} /file.txt –

+0

В идеале мы хотели бы, чтобы пользовательские переменные были объединены в один, но, похоже, нет никакого способа сделать это. –

0

Вы можете создать определенный пользователь переменного с именем теста и значением:

  • $ {testData.directory} $ {testData.testCases}

И затем использовать: $ {__ evalVar (test)} in place

Также лучше использовать/вместо \ для свойств и переменных пути, поскольку они будут работать как в Linux, так и в Windows.

+0

у меня три- что в следующей строке: testDate.full \t $ {__ P (testData.full, $ {testData.directory} $ {testData.testCases})} , но это все еще не работает. Я предполагаю, что я просто что-то упустил –

+0

Не используйте P, просто добавьте переменную, определяемую пользователем, и создайте новую переменную по вашему выбору со значением. У меня есть goven. –

+1

. Я сейчас попробовал следующее: test1 \t C: \ Users \ MURPHYA1 \ Desktop \ JMeter тела \t test2 \t \ файлы тела JMeter Корзина test3 \t $ {test1} $ {tEST2} \t и до сих пор ничего. Я что-то пропустил? –

0

Я не смог объединить 2 переменных в один из jmeter. Я пробовал несколько подходов, но в остальной части плана тестирования я использовал две переменные рядом. :-(

+0

Да, я нашел то же самое сегодня утром. Это не худшее разрешение, но все еще раздражает –

+0

Возможно. Пожалуйста, см. Мой ответ. Я работаю с JMeter 2.9. –

0

Например у вас есть 2 переменные:

  1. переменной из регулярного Extractor: ${employeeID}
  2. Вторая переменная является простая переменная определена в определяемых пользователем переменных: Test1 = ${__Random(14,25,)}

  3. сейчас мы объединяем/объединяем эти 2 переменные, это будет выглядеть так:

    $ {__ В (EmployeeID _ $ {Тест1})} $ {EmployeeID} + $ {Тест1} = $ {__ В (EmployeeID _ $ {Тест1})}

__V function

0

попробовать этот

$ {__ V ($ {keyword1} $ {keyword2})}

+0

Пожалуйста, объясните свой подход. Это помогло бы еще немного. – etalon11

0

BeanShell Prozessor:

String var1 = vars.get("var1"); 
String var2 = vars.get("var2"); 
vars.put("var3", var1+"."+var2); 
Смежные вопросы