GithubHelp home page GithubHelp logo

saucelabs / elemental-bromine Goto Github PK

View Code? Open in Web Editor NEW

This project forked from saucelabs/new-project

1.0 2.0 4.0 7.17 MB

The rebuild of Elemental Selenium: moving beyond selenium

Home Page: https://opensource.saucelabs.com

License: MIT License

JavaScript 83.39% CSS 16.61%

elemental-bromine's Introduction

Elemental Bromine

This project revamps Elemental Selenium and it aims to be a source of help for Selenium users.

How to use

  1. Clone this project and copy the files into your own project
  2. Go through this checklist
  3. Start developing!
  4. Ensure you are in compliance with Sauce Labs rules of play
  5. If in doubt, get in touch with opensource@saucelabs

Readme template

Below you can find a complete readme template for a project. It is the single most important documentation of your project, so make sure you spend time on giving a great first impression to new users and provide the needed information to interested contributors.


Readme.md template below, when setup is complete, delete all content above this.

projectname

description

Describe what this project does. Keep this language human and friendly, so avoid internal references, acronyms and if you have dependencies, provide a direct link to these.

When describing features of your project, remember to explain why these are a benefit and advantage to the user:

This project allows you to scale X (feature) in a fast and predictable way (benefit) - meaning you will use fewer resources and can be confident in your X environment (Advantage).

Think about your project as a product, consider who your audience is, and how your decisions affect the number of potential users, below is a handy checklist of things to consider before open sourcing any code.

  • Avoid internal dependencies Obviously projects that require Sauce Labs specific infrastructure, configuration or process have very limited use to anyone outside Sauce Labs.
  • Avoid narrow usecases Does this solve a Sauce Labs-only problem or does it have broarder application - is there things you could change to make it a more general product
  • Have a Product vision Do you know where you want to take this product? - then be open about it so future contributors are aware. Being opinionated is great and it helps set expectations and the direction for the project
  • Take ownership Are you are benevolent dictator or open to anything? - consider how you will interact with future contrbutors who expect you to be an active maintainer
  • Safe defaults How do people get up and running - are there alot of ceremony involved or can you provide a simple out of the box experience so it is easy for users to evaluate your project

Getting Started

These instructions will get you a copy of the project up and running on your local machine for development and testing purposes. See deployment for notes on how to deploy the project on a live system.

If possible, provide a quick exemple of how to get this running with minimal effort, so anyone curious can get up and running as fast as possible 

Prerequisites

What things you need to install the software and how to install them

Give examples

Installing

A step by step series of examples that tell you have to get a development env running

Say what the step will be

Give the example

And repeat

until finished

End with an example of getting some data out of the system or using it for a little demo

Running the tests

Explain how to run the automated tests for this system

Break down into end to end tests

Explain what these tests test and why

Give an example

And coding style tests

Explain what these tests test and why

Give an example

Deployment

Add additional notes about how to deploy this on a live system

Built With

  • Dropwizard - The web framework used
  • Maven - Dependency Management
  • ROME - Used to generate RSS Feeds

Contributing

Please read CONTRIBUTING.md for details on our process for submitting pull requests to us, and please ensure you follow the CODE_OF_CONDUCT.md.

Versioning

We use SemVer for versioning. For the versions available, see the tags on this repository.

License

This project is licensed under the MIT License - see the LICENSE.md file for details

Acknowledgments

elemental-bromine's People

Contributors

aquaomarine avatar daniellemadry avatar diemol avatar discombobulateme avatar janackeh avatar

Stargazers

 avatar

Watchers

 avatar  avatar

elemental-bromine's Issues

Add Elemental-Bromine to readme

#Description
As this project was forked, the Readme.md needs to be updated to explain what this project is about

#Acceptance Criteria

  • It should have a description of what Elemental Selenium is and what we are aiming to do

Test 2

Expected Behavior

Actual Behavior

Steps to Reproduce the Problem

Specifications

  • Version:
  • Platform:
  • Subsystem:

Heuristic Analysis

Description

Finish performing the first pass of heuristic analysis on the elemental selenium website.

Useful Resources

  • Research Brief
  • The analysis is being done using a penpot file. To get access, please login and add your email in the comments on this issue

Acceptance Criteria

  • Django has performed a heuristic analysis and added his findings to the PenPot

  • Janackeh has performed a heuristic analysis and added her findings to the PenPot

  • Esther has performed a heuristic analysis and added her findings to the PenPot

  • Danielle has performed a heuristic analysis and added her findings to the PenPot

  • Rajene has performed a heuristic analysis and added her findings to the PenPot

  • Mailing list sign up flow has been audited

  • Navigating to tip archive has been audited

  • Sample of ten randomly selected individual tips have been audited

Select interview candidates

Description

Select 5-8 interview candidates from the survey responses who were interested.

Acceptance criteria

  • 5-8 candidates selected
  • Emails send out to candidates

Prepare Text Templates

Description

Flesh out our templates for our peripheral survey documents

Acceptance Criteria

  • Email invite for interview
  • Email/Slack/Linkedin invite for taking the survey
  • Reminder messages for both of the above
  • Short Intro (& thank you, if available) messages for calendly

Write Interview Questions

Description

Based on the research plan, we will write questions for our user interviews.

Acceptance Criteria

  • 1st draft of interview questions to be approved by Sauce Labs's User Research Department
  • Questions reviewed by UxRD

Meet about Wild/Crazy8s ideation

Description

We are beginning to develop wireframes for the tip site so that we actually have a form of front end to test. I'd like to meet with the team to discuss their thought process in the crazy8s sketching exercise last week.

Criteria

  • Meet on zoom, talk about crazy8s
  • Django to synthesize takeaways in their document

Create a survey

Description

Create a survey to understand how people use Selenium, how they learned, and if they are interested in using a tips website to improve their usage.

  • What do they want from a Tips site?
  • What other options can we offer?

Still needs the following broken out into real questions for the survey:

What languages or testing frameworks that you would like to see covered in a similar manner to the Elemental Selenium tip site?

Acceptance Criteria

  • A survey that can be administrated without coaching
  • Should be ready to deploy to a third-party app (Drip?)

Create landpage prototype

Create a design file to share the elemental-bromine landpage proposition and share to stakeholders for feedback

Send out survey via Drip

Description

Once we've made a survey, we'll send it out to ES mailing list. We'll use Drip for this, and we may need Jason & Paloma's help.

Acceptance Criteria

  • We have sent a survey out to the active emails on the ES mailing list

Develop a functional CMS.

Description

Once we develop a functional CMS that allows project maintainers to easily update content for the site they can check and update tips without our input.

Criteria

  • CMS has a functional template
  • MVP UI front end is built
  • UI front end connected to CMS database

Allow user to see the different examples

Different then Elemental Selenium, which only displays ruby code on the frontend, Elemental Bromine should display all the different language examples.

  • Create a page to each tip
  • This should be a reusable component, automatically created when a new tip is created
  • The titles list displayed on the landing page should be a link to the tip page
  • The tip page should allow the user to, without changing the page, switch the code example. Check Selenium page for a very good example. Another good example is WebdriverIO

Image
Image

  • Code block should allow a copy click
  • If the code for a language is not available, tab option should not exist

Set Up Calendly

Description

Set up Calendly for easier allocation of interview slots using the Calendly template.

Context

Calendly helps allocate user interview slots, and help inform the candidates on how their contribution will bused for Elemental Bromine

Moodboard

Description

Design team to create moodboard based on competitor & industry analysis. Moodboard will cover aesthetic and interface inspiration.

Criteria

  • Sixteen entries
  • 8x Aesthetic/Visual inspiration
  • 8x Interface inspiration

Test issue

Expected Behavior

Actual Behavior

Steps to Reproduce the Problem

Specifications

  • Version:
  • Platform:
  • Subsystem:

Create Tips Templates

#Description
Create a Google Docs template to update the current tips. This template should consider the content audit previously done by Team Elemental.

##Context (why we are doing this)
Having a template will help with the content update maintaining consistency.


(Checklist added by @Roseywinter)

  • Change content template file name so it's clear to contributors what it is.
  • Change content template instructions to be clear and specific about how to contribute.
  • Add template markdown file to Elemental Bromine.
  • Create how-to-contribute.md explaining how to use the content template.

Implement searchbar

Implement a searchbar component in elemental-bromine

  • Add a searchbar component in the Menu to be accessible across all the pages

Develop wireframes for Rapid Iterative Testing

Description

Wireframes to be built by Django in figma for rapid itterative testing with interviewees.

Criteria

  • Figma workspace created
  • Wireframes built based on interviews and ideation from Crazy8s
  • Marija has approved the presentation method for wireframes
  • [ ]

Moodboard

Description

Django to put together submissions from the team for the moodboard assignment from Marija together with his own work and annotate it into a moodboard to present both to the team and also to the stakeholders to give them an idea of direction.

Success criteria

  • Moodboard 1: Internal use, larger, more in depth
  • Moodboard 2: Concrete, smaller amount of data, only hits the points that we're concrete on to be presented to stakeholders

Configure docusaurus.config

Configure docusaurus.config to display information about the project.

  • Add menu
  • Add sidebar
  • Add favicon
  • Add page title

Add beginner tips to Elemental Bromine

Add beginner tip from 1-10 (skipping #6) from Elemental Selenium to Elemental Bromine.

  • Text should be added considering the new template
  • Organization should follow the new contribution guideline (where it goes, with which naming convention)
  • Text should consider inclusive language (lots of material provided by Rachel)
  • Code should be validated. If unable to run the code, ask for Diego's help. If this is a bottleneck, go to the next tip or
  • Have a clear methodology/list in place to share the update status with the group, such as, for example, tip #1 was skipped as the csharp code cannot be verified.

Present Elemental Bromine to Sauce Labs Community Team

As we ended our discovery phase, we must provide accountability to our stakeholders who are supporting this project.
The first stakeholders we will provide that is Sauce Labs Community Team.
This presentations should contain the following and should take no longer than 10-15min:

  • What you are proposing to change, based on the discovery phase (content audit, users survey and interviews, group discussion, mentorship discovery)
  • Add data to what you are proposing: why are you proposing that?
  • How are you proposing that? Show what you have: wireframe, image, template, graphic, prototype
  • Have something in place to allow the stakeholder to give their opinion. Will you setup a working group to iterate over a prototype? Ask questions? Which questions?
  • Everyone should present something, considering updates about the working group you are responsible for
  • You can use the Design brief to explain why it needs to be build and how will you do that

Presentation date: February 21st 3pm UTC time, invites already on everyone's calendar.

For the meeting preparation, some tasks:

  • Meet some time this week as group to discuss the presentation (what and how)
  • Before the meeting, you should have individual tasks to prepare for the meeting
  • Separate the presentation into sections and main messages, organize it collaboratively

Write Research Plan

Description

We need to create a plan for our design research in order to ensure good research.

Acceptance Criteria

  • A document which contains the final form of our research plan.

Assess existing tips for functionality

Description

We need to assess the existing tips to make sure that they're functional. We need to go through and try each tip (starting with beginner) and see whether or not we can see the expected results on our system. If that works, great! If not, make a note of it on the content audit spreadsheet. Then Diego can check back and update content.

Criteria

  • Beginner tips evaluated
  • Intermediate tips evaluated
  • Advanced tips evaluated.

Create a new subscription confirmation text

When users subscribe to Elemental Selenium they receive the following email signed by Dave:

Image

There's several issues there, and the subscription text needs to reflect that:

  • Upper banner should not mention: full copy of The Selenium Guidebook, or attended one of Dave's webinars, instead, add some useful resources users can feel valued, such as: Nikolay's The Test Automation Experience channel or a link to Boni's book Hands-On Selenium WebDriver with Java or free article
  • We should not be using Dave's name as a propaganda... please change this phrase and add some other important Selenium reference _Did you know Dave uses Sauce Labs to test his applications? _ . You can ask @diemol for a neutral influence person or project that uses Sauce
  • Change postal address in the bottom to Sauce Labs main headquarter addreee

Send Users Survey

Description

Recruit users of selenium and elemental selenium for the user survey.
Clarify with Marija about whether or not we can utilize the ES email database for email surveys. If we can, send the email list an invitation to fill out the survey.

Acceptance Criteria

  • ES Email list invited to survey

OR

  • 100 contacts invited to survey by members of the working group

Fill out template

Description

This project was forked from a template and needs its best practices files (readme.md codeofconduct.md, etc etc ) filled out.

Acceptance Criteria

  • CodeOfConduct
  • Contributing
  • License
  • Maintainers
  • Readme
  • Security

Prototype Elemental Bromine using Docusaurus

Create a very simple page

  • You should work with the content team to have a least one tip updated
  • With which framework to build? There so many... You can propose something and talk to Dan about the differences. Take a look at Docusaurus, one of the main frameworks built for documentation websites, it has react underneath, and has markdown integration. Selenium page is build upon: https://www.selenium.dev/documentation/webdriver/browsers/firefox/
  • Do not worry about the design, it can be raw, but should follow basic accessibility such as respecting Headings and using HTML tags properly instead of indiscriminately divs that makes keyboard navigation hard
  • Clean up all the Docusaurus default content
  • Populate content with tips from Elemental Selenium

Content Audit

Description

Audit all content on the Elemental Selenium website, including the landing page and tip archive table of contents.

Relevant Links

Audit spreadsheet: https://docs.google.com/spreadsheets/d/10UpvsSHY0NH48FafkUV8ZKYbYTHlGbAuG8UUpq54rpo/edit#gid=0

Acceptance Criteria

  • All tips have all relevant fields filled out in the spreadsheet listed above
  • Landing page and tip archive table of contents have also been audited for:
  • Typos
  • Vernacular
  • Linguistic Consistencies
  • Navigation Consistencies

Calendly Template

#Description

Create a short intro thanking users for their participation in the surveys, and setting aside time for a short call.

##Context

This template will explain what will be discussed during the call and how this information will be used to help improved Elemental Selenium.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.