scimusmn / multiplayer-phone-game

Reusable game template in which visitors use their smartphone as a controller.
0 stars 0 forks source link

Investigate Siege, Aws, and Browser Stack for device simulation #36

Open tnordberg opened 5 years ago

tnordberg commented 5 years ago

Google Headless Chrome https://developers.google.com/web/updates/2017/04/headless-chrome

Siege Linux command line tool https://linux.die.net/man/1/siege

Browser stack paid service https://www.browserstack.com/

AWS Device Farm https://aws.amazon.com/device-farm/

tnordberg commented 5 years ago

Another option: https://kobiton.com/

tnordberg commented 5 years ago

Browser Stack Notes Able to get up and running quickly. Can write tests in NodeJS + Selenium. Quick iteration with testing code Can trigger tests locally with using a secret key. Required to pay by the month or by the year. When I inquired about whether our use would require "parallel testing", since we need multiple phones connecting at once, a salesperson replied saying our use is considered large-scale performance testing and BrowserStack discourages that.

tnordberg commented 5 years ago

AWS Device Farm Notes Write tests in Python or Java. Must upload a new packaged zip before using, which makes iterating slow. Less expensive, and pricing structure matches our needs (pay by the minute $0.17) Nice to stay in the AWS wheelhouse.

bryankennedy commented 5 years ago

Let's also think about this as a larger need. If you developed a wholly different web application what sort of front-end testing framework would you want to use. It'll be important to pick a tool that we can use in all of those settings.

tnordberg commented 5 years ago

Headless Chrome Notes Easy to use for one-off tasks on the command line, but is not meant for automated tests. Can be automated using Puppeteer: another Google project. Puppeteer can take screenshots, create PDFs, navigate pages, and fetch DOM information. Headless Chrome can also be used as a WebDriver with Selenium, which is useful for simulating user input (clicking navigation). Free and open source. Involves no real hardware. Completely virtual.