-
Notifications
You must be signed in to change notification settings - Fork 1.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Controlling RPS with Number of iteration for each VU #2305
Comments
I'm sorry, but I'm not very familiar with JMeter and I don't understand exactly what you want to achieve. For example, what is a "VE"? Or, better yet, can you explain exactly what you want to achieve, but without using any JMeter terminology? |
Hello @na-- ,
-- Each user must run the workflow for one time (one-iteration) Also, I want to control RPS during this process, as an example: |
I thought VU is the abbreviation for virtual users, not VE, that's why I was confused... And, to be fair, I am still confused 😅 I don't think you want a set of 2000 virtual users executing the test in parallel, but rather want a much smaller set of users that use a set of 2000 unique user credentials only once? If I understand that part correctly, it should be possible to implement using the
I don't understand this part. Say that you have this list of credentials:
What do you want to happen in your test, as time goes by? At the start of the test, you want to make 3 requests, with |
@na-- thank you I finally figured out how to combine both throughput(ramping-arrival-rate) and scenario.iterationInTest together, but now how can I stop the test after I ran out of the credential? scenarios: {
contacts: {
executor: 'ramping-arrival-rate',
startRate: 1,
timeUnit: '1s',
preAllocatedVUs: 5,
maxVUs: 100,
stages: [
{ target: 5, duration: '20s' },
{ target: 5, duration: '3m' },
{ target: 10, duration: '20s' },
{ target: 10, duration: '3m' },
{ target: 3, duration: '20s' },
{ target: 3, duration: '3m' }
],
},
}
export default function () {
const user = data[scenario.iterationInTest];
const access_token = Login(user)
http.get("User Actions URL")
}
export function Login(user) {
console.log(user.username)
console.log(user.password)
} This implementation work fine for my achieve, but when the credentials ran out I get Errors, how can I stop the test after I ran out of the credential? |
We just recently merged #2093, which adds I also added a new issue to add |
thank you @na-- for help. |
Thank you for explaining your use case, it's a very valid one that we should support better! I'll close this issue in favor of #2308 |
Feature Description
Hi All, I am new to k6 but I have a good understanding of performance testing and its tools,
After using K6 for a weak and after using all useful scenarios to K6 I was able to achieve every test I want except one test.
Currently, we can run more scenarios in the same test, by using:
But so far and after a lot of searches here and in K6 documentation, I can't find how to be able to control the iteration per VE and how we can define a constant RPS during the test.
My test needs that each VE runs for one iteration only and defines a constant RPS or Arrival RPS for these VE.
For example, each second 2 users run for one iteration only.
This case can be easily implemented in Jmeter by using a predefined value for the number of iteration per VE and using a constant-throughput-timer.
is there any way or solution to implement the above test case?
Thanks.
Suggested Solution (optional)
No response
Already existing or connected issues / PRs (optional)
No response
The text was updated successfully, but these errors were encountered: