Skip to content

Instantly share code, notes, and snippets.

@cdmo
Created April 4, 2019 12:20
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save cdmo/6f3beb84412d74f4e936946bc8c3269f to your computer and use it in GitHub Desktop.
Save cdmo/6f3beb84412d74f4e936946bc8c3269f to your computer and use it in GitHub Desktop.
Naive locust script to test home page loads, facet selections using our top genres and searches using animals and countries
from locust import HttpLocust, TaskSet
def index(l):
l.client.get("/")
def facet_genre(l):
import random
facet_genre_terms = ['Electronic books','Congresses','Periodicals','Early works to 1800','Biography','Maps','Streaming audio','Legislative hearings','Fiction','Legislative materials','Statistics','Handbooks, manuals, etc','Bibliography','Juvenile fiction','Scores','Case studies','Exhibitions','Electronic journals','Juvenile literature','History']
path = "/?f[genre_facet_ssim][]=%s&search_field=all_fields" % (random.choice(facet_genre_terms))
l.client.get(path)
def search(l):
import random
searchterms = ['United States','Afghanistan','Albania','Algeria','American Samoa','Andorra','Angola','Anguilla','Antarctica','Antigua And Barbuda','Argentina','Armenia','Aruba','Australia','Austria','Azerbaijan','Bahamas','Bahrain','Bangladesh','Barbados','Belarus','Belgium','Belize','Benin','Bermuda','Bhutan','Bolivia','Bosnia And Herzegowina','Botswana','Bouvet Island','Brazil','Brunei Darussalam','Bulgaria','Burkina Faso','Burundi','Cambodia','Cameroon','Canada','Cape Verde','Cayman Islands','Central African Rep','Chad','Chile','China','Christmas Island','Cocos Islands','Colombia','Comoros','Congo','Cook Islands','Costa Rica','Cote D`ivoire','Croatia','Cuba','Cyprus','Czech Republic','Denmark','Djibouti','Dominica','Dominican Republic','East Timor','Ecuador','Egypt','El Salvador','Equatorial Guinea','Eritrea','Estonia','Ethiopia','Falkland Islands (Malvinas','Faroe Islands','Fiji','Finland','France','French Guiana','French Polynesia','French S. Territories','Gabon','Gambia','Georgia','Germany','Ghana','Gibraltar','Greece','Greenland','Grenada','Guadeloupe','Guam','Guatemala','Guinea','Guinea-bissau','Guyana','Haiti','Honduras','Hong Kong','Hungary','Iceland','India','Indonesia','Iran','Iraq','Ireland','Israel','Italy','Jamaica','Japan','Jordan','Kazakhstan','Kenya','Kiribati','Korea (North','Korea (South','Kuwait','Kyrgyzstan','Laos','Latvia','Lebanon','Lesotho','Liberia','Libya','Liechtenstein','Lithuania','Luxembourg','Macau','Macedonia','Madagascar','Malawi','Malaysia','Maldives','Mali','Malta','Marshall Islands','Martinique','Mauritania','Mauritius','Mayotte','Mexico','Micronesia','Moldova','Monaco','Mongolia','Montserrat','Morocco','Mozambique','Myanmar','Namibia','Nauru','Nepal','Netherlands','Netherlands Antilles','New Caledonia','New Zealand','Nicaragua','Niger','Nigeria','Niue','Norfolk Island','Northern Mariana Islands','Norway','Oman','Pakistan','Palau','Panama','Papua New Guinea','Paraguay','Peru','Philippines','Pitcairn','Poland','Portugal','Puerto Rico','Qatar','Reunion','Romania','Russian Federation','Rwanda','Saint Kitts And Nevis','Saint Lucia','St Vincent/Grenadines','Samoa','San Marino','Sao Tome','Saudi Arabia','Senegal','Seychelles','Sierra Leone','Singapore','Slovakia','Slovenia','Solomon Islands','Somalia','South Africa','Spain','Sri Lanka','St. Helena','St.Pierre','Sudan','Suriname','Swaziland','Sweden','Switzerland','Syrian Arab Republic','Taiwan','Tajikistan','Tanzania','Thailand','Togo','Tokelau','Tonga','Trinidad And Tobago','Tunisia','Turkey','Turkmenistan','Tuvalu','Uganda','Ukraine','United Arab Emirates','United Kingdom','Uruguay','Uzbekistan','Vanuatu','Vatican City State','Venezuela','Viet Nam','Virgin Islands (British','Virgin Islands (U.S.','Western Sahara','Yemen','Yugoslavia','Zaire','Zambia','Zimbabwe', 'Canidae','Felidae','Cat','Cattle','Dog','Donkey','Goat','Guinea pig','Horse','Pig','Rabbit','Fancy rat varieties','laboratory rat strains','Sheep breeds','Water buffalo breeds','Chicken breeds','Duck breeds','Goose breeds','Pigeon breeds','Turkey breeds','Aardvark','Aardwolf','African buffalo','African elephant','African leopard','Albatross','Alligator','Alpaca','American buffalo (bison)','American robin','Amphibian','list','Anaconda','Angelfish','Anglerfish','Ant','Anteater','Antelope','Antlion','Ape','Aphid','Arabian leopard','Arctic Fox','Arctic Wolf','Armadillo','Arrow crab','Asp','Ass (donkey)','Baboon','Badger','Bald eagle','Bandicoot','Barnacle','Barracuda','Basilisk','Bass','Bat','Beaked whale','Bear','list','Beaver','Bedbug','Bee','Beetle','Bird','list','Bison','Blackbird','Black panther','Black widow spider','Blue bird','Blue jay','Blue whale','Boa','Boar','Bobcat','Bobolink','Bonobo','Booby','Box jellyfish','Bovid','Buffalo, African','Buffalo, American (bison)','Bug','Butterfly','Buzzard','Camel','Canid','Cape buffalo','Capybara','Cardinal','Caribou','Carp','Cat','list','Catshark','Caterpillar','Catfish','Cattle','list','Centipede','Cephalopod','Chameleon','Cheetah','Chickadee','Chicken','list','Chimpanzee','Chinchilla','Chipmunk','Clam','Clownfish','Cobra','Cockroach','Cod','Condor','Constrictor','Coral','Cougar','Cow','Coyote','Crab','Crane','Crane fly','Crawdad','Crayfish','Cricket','Crocodile','Crow','Cuckoo','Cicada','Damselfly','Deer','Dingo','Dinosaur','list','Dog','list','Dolphin','Donkey','list','Dormouse','Dove','Dragonfly','Dragon','Duck','list','Dung beetle','Eagle','Earthworm','Earwig','Echidna','Eel','Egret','Elephant','Elephant seal','Elk','Emu','English pointer','Ermine','Falcon','Ferret','Finch','Firefly','Fish','Flamingo','Flea','Fly','Flyingfish','Fowl','Fox','Frog','Fruit bat','Gamefowl','list','Galliform','list','Gazelle','Gecko','Gerbil','Giant panda','Giant squid','Gibbon','Gila monster','Giraffe','Goat','list','Goldfish','Goose','list','Gopher','Gorilla','Grasshopper','Great blue heron','Great white shark','Grizzly bear','Ground shark','Ground sloth','Grouse','Guan','list','Guanaco','Guineafowl','list','Guinea pig','list','Gull','Guppy','Haddock','Halibut','Hammerhead shark','Hamster','Hare','Harrier','Hawk','Hedgehog','Hermit crab','Heron','Herring','Hippopotamus','Hookworm','Hornet','Horse','list','Hoverfly','Hummingbird','Humpback whale','Hyena','Iguana','Impala','Irukandji jellyfish','Jackal','Jaguar','Jay','Jellyfish','Junglefowl','Kangaroo','Kangaroo mouse','Kangaroo rat','Kingfisher','Kite','Kiwi','Koala','Koi','Komodo dragon','Krill','Ladybug','Lamprey','Landfowl','Land snail','Lark','Leech','Lemming','Lemur','Leopard','Leopon','Limpet','Lion','Lizard','Llama','Lobster','Locust','Loon','Louse','Lungfish','Lynx','Macaw','Mackerel','Magpie','Mammal','Manatee','Mandrill','Manta ray','Marlin','Marmoset','Marmot','Marsupial','Marten','Mastodon','Meadowlark','Meerkat','Mink','Minnow','Mite','Mockingbird','Mole','Mollusk','Mongoose','Monitor lizard','Monkey','Moose','Mosquito','Moth','Mountain goat','Mouse','Mule','Muskox','Narwhal','Newt','New World quail','Nightingale','Ocelot','Octopus','Old World quail','Opossum','Orangutan','Orca','Ostrich','Otter','Owl','Ox','Panda','Panther','Panthera hybrid','Parakeet','Parrot','Parrotfish','Partridge','Peacock','Peafowl','Pelican','Penguin','Perch','Peregrine falcon','Pheasant','Pig','Pigeon','list','Pike','Pilot whale','Pinniped','Piranha','Planarian','Platypus','Polar bear','Pony','Porcupine','Porpoise','Portuguese man o war','Possum','Prairie dog','Prawn','Praying mantis','Primate','Ptarmigan','Puffin','Puma','Python','Quail','Quelea','Quokka','Rabbit','list','Raccoon','Rainbow trout','Rat','Rattlesnake','Raven','Ray (Batoidea)','Ray (Rajiformes)','Red panda','Reindeer','Reptile','Rhinoceros','Right whale','Roadrunner','Rodent','Rook','Rooster','Roundworm','Saber-toothed cat','Sailfish','Salamander','Salmon','Sawfish','Scale insect','Scallop','Scorpion','Seahorse','Sea lion','Sea slug','Sea snail','Shark','list','Sheep','list','Shrew','Shrimp','Silkworm','Silverfish','Skink','Skunk','Sloth','Slug','Smelt','Snail','Snake','list','Snipe','Snow leopard','Sockeye salmon','Sole','Sparrow','Sperm whale','Spider','Spider monkey','Spoonbill','Squid','Squirrel','Starfish','Star-nosed mole','Steelhead trout','Stingray','Stoat','Stork','Sturgeon','Sugar glider','Swallow','Swan','Swift','Swordfish','Swordtail','Tahr','Takin','Tapir','Tarantula','Tarsier','Tasmanian devil','Termite','Tern','Thrush','Tick','Tiger','Tiger shark','Tiglon','Toad','Tortoise','Toucan','Trapdoor spider','Tree frog','Trout','Tuna','Turkey','list','Turtle','Tyrannosaurus','Urial','Vampire bat','Vampire squid','Vicuna','Viper','Vole','Vulture','Wallaby','Walrus','Wasp','Warbler','Water Boa','Water buffalo','Weasel','Whale','Whippet','Whitefish','Whooping crane','Wildcat','Wildebeest','Wildfowl','Wolf','Wolverine','Wombat','Woodpecker','Worm','Wren','Xerinae','X-ray fish','Yak','Yellow perch','Zebra','Zebra finch','Animals by number of neurons','Animals by size','Common household pests','Common names of poisonous animals','Alpaca','Bali cattle','Cat','Cattle','Chicken','Dog','Domestic Bactrian camel','Domestic canary','Domestic dromedary camel','Domestic duck','Domestic goat','Domestic goose','Domestic guineafowl','Domestic hedgehog','Domestic pig','Domestic pigeon','Domestic rabbit','Domestic silkmoth','Domestic silver fox','Domestic turkey','Donkey','Fancy mouse','Fancy rat','Lab rat','Ferret','Gayal','Goldfish','Guinea pig','Guppy','Horse','Koi','Llama','Ringneck dove','Sheep','Siamese fighting fish','Society finch','Yak','Water buffalo']
path = "/?utf8=%E2%9C%93&search_field=all_fields&q=%s" % (random.choice(searchterms))
l.client.get(path)
class UserBehavior(TaskSet):
tasks = {index: 3, facet_genre: 2, search: 1}
class WebsiteUser(HttpLocust):
task_set = UserBehavior
min_wait = 5000
max_wait = 9000
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment