Skip to content

Latest commit

 

History

History
30 lines (24 loc) · 1.74 KB

README.md

File metadata and controls

30 lines (24 loc) · 1.74 KB

Flagpole JS

Flagpole is a QA testing framework that is easy to learn, flexible, portable, and fast.

Want to contribute?

Sure! Please contirbute your pull request.

Developer Style Guide

  • Class is ordered: public properties, private/protected properties, constructor, public methods, private/protected methods
  • Private/protected properties and methods are prefixed with _
  • Camel-case all the things, except class names and enums
  • Interfaces are prefixed by i
  • Think about the developer experience of the person writing the tests first and foremost
  • Definitively type whenever possible
  • Favor readability over cleverness or brevity
  • Document and comment liberally
  • Don't try to do everything, but do the common QA functions really well
  • As much as possible, create a common experience across different classes of scenarios
  • Keep the framework as light as possible, which might mean auto-discovery and dynamically loading optional libraries
  • It should be obvious, it should mislead of confuse or cause additional cognitive load
  • Do what you say, say what you do. No side effects.
  • Try to start methods with verbs unless it's just really short, sweet, and obvious not to
  • Start properties or methods that return booleans with "is" or "has" or "can" or something similar that reads what it is
  • Start methods that convert an object to a different type with "to" like "toArray"
  • Some things are designed to be chained, such as setting up a Suite or Scenario, so allow this to be chained by returning themselves, but don't chain just for the sake of chaining. Chain of readability and convenience of DX only.