A rough take on what works, what's hard to grok, and what needs improvement.uu
csm
Doesn't seem to work. Used pip to install the "platform" and "test" requirements, but complains about missing "csm.locustsettings", which appears to be related to the fact that the test depends on edx-platform itself and wants to load Django environment settings from it.
course_discovery
...
credentials
Same as the course discovery API. Setup was easy to follow, but failed to run load tests due to an authentication issue.
course_import
Missing a proper __init__ so you can't pass it the naked directory name when specifying which Locust test to run.
...
discussions
Pretty sure this service is dead, since it hasn't seen a commit in a year. Trying to run it expects Mongo to be there, with the comments service schema… so I'd have to set this up in my devstack and potentially jack it up? Meh. The tests are also weird and kinda messed up.
...
teams_discussion
Seems to sort of work once I realized you need to point to the LMS, not right to the comments service. Breaks on trying to pick a team to assign students to, I guess. Not sure if there's some fixture that needs to run before Locust does?
Have to override TEAM_COURSE_ID with an opaque key identifier, because the default one is set to use the old-style key.This load test has seen some changes since I last tested it. Fully migrated to settings files
credentials
This test does not request JWTs so it is very difficult/impossible to setup (you have to provide the JWT secret key, and the JWT token generation might even be wrong/out of sync with the LMS).
course_import
Works fine and straightforward to set up. fully migrated to settings files.
teams_discussion
Goes through the LMS, and requires the comment service to be running, and teams to be enabled on the course. Fully migrated to settings files
enrollment
Seems to run and work. Goes through the LMS, and requires the comment service to be running.
Missing an __init__.py so it can't be run simply as -f enrollment.
programs
Not terribly hard to get running, but Locust indicates 100% failure rates, yet it logs no error output nor does the programs API itself. Still haven't found a log file Fully migrated to settings files.
programs
Retiring this service in progress as of writing.
lms
Not hard to get working. Have to override COURSE_ID with an opaque key identifier, because the default one is set to use the old-style key Fully migrated to settings files.
Requires the comment service to be running.