背景
我在postman中有一个变量,我随机生成一个uid,用于创建用于注册和登录测试的用户ID。
邮递员工作
在注册请求中,在预请求脚本
上var uid="{{$randomInt}}"
postman.setGlobalVariable("IID",uid);`
在登录请求中,正文设置为:
{"uid":"{{IID}}" }
问题
问题是每次执行{{IID}}时,都会生成一个新值。
但是,我的座右铭是在注册时随机创建用户ID并在
期间使用它登录失败,因为{{IID}}给了我一个新的uid,而不是uid set
注册期间(使用postman.setGlobalVariable(" IID",uid);)。
查询
任何想法,如何每次在流程开始时随机生成用户ID,然后在 POSTMAN 中的其余流程中使用该用户ID。
Flow是SignUp操作,然后是Login操作。
答案 0 :(得分:1)
只需在沙盒模式下使用任何library available即可在预请求脚本中生成随机ID。
您甚至可以为此目的制作STARTUPINFOA si;
ZeroMemory(&si,sizeof(STARTUPINFO));
si.cb = sizeof(si);
PROCESS_INFORMATION pi;
ZeroMemory(&pi, sizeof(pi));
char cmd_exe[32767];
GetEnvironmentVariable("COMSPEC", cmd_exe, 32767);
if (CreateProcessA(cmd_exe, "/k", NULL, NULL, TRUE, CREATE_NEW_CONSOLE, NULL, NULL, &si, &pi))
{
CloseHandle(pi.hThread);
WaitForSingleObject(pi.hProcess, INFINITE);
DWORD dwExitCode = 0;
GetExitCodeProcess(pi.hProcess, &dwExitCode);
CloseHandle(pi.hProcess);
std::cout << "cmd process exit code = " << dwExitCode << std::endl;
}
else
{
DWORD dwErrorCode = GetLastError();
std::cout << "cmd process not started, error = " << dwErrorCode << std::endl;
}
或使用lodash的_.random(min,max)。
其他所有内容都可以无需更改(我的意思是&#34; {{ID}}&#34;在下一个请求&#39; body / headers / URL中)